From ae49eefa2ddbc0fbdc420efb87f8ac92af7a19c1 Mon Sep 17 00:00:00 2001 From: zz_y Date: Wed, 13 May 2026 08:00:33 -0600 Subject: [PATCH] refactor(sketch_db): hoist persistence/ to sketch_db level MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Post-M2.3 reorg #2 of 8. Moves `sketch_db/store/persistence/` → `sketch_db/persistence/` so the disk-persistence layer sits as a top-level sibling of `store/`, `data/`, `schema/`, etc. The previous nesting (`store/persistence/`) implied the persistence layer belonged to the store; in fact it's a parallel concern that any sid-keyed store wires into via the `EpochSource` trait. `store/mod.rs` re-exports `pub use sketch_db::persistence` so legacy paths (`store::persistence::*`) keep compiling. Canonical path is now `sketch_db::persistence::*`. 783/783 lib tests pass. Co-Authored-By: Claude Opus 4.7 (1M context) --- data_plane/src/storage_engines/sketch_db/mod.rs | 1 + .../sketch_db/{store => }/persistence/cache.rs | 0 .../sketch_db/{store => }/persistence/config.rs | 0 .../sketch_db/{store => }/persistence/flusher.rs | 0 .../sketch_db/{store => }/persistence/manifest.rs | 0 .../sketch_db/{store => }/persistence/mod.rs | 0 .../sketch_db/{store => }/persistence/part.rs | 0 .../sketch_db/{store => }/persistence/recovery.rs | 0 .../sketch_db/{store => }/persistence/source.rs | 0 data_plane/src/storage_engines/sketch_db/store/mod.rs | 7 ++++--- 10 files changed, 5 insertions(+), 3 deletions(-) rename data_plane/src/storage_engines/sketch_db/{store => }/persistence/cache.rs (100%) rename data_plane/src/storage_engines/sketch_db/{store => }/persistence/config.rs (100%) rename data_plane/src/storage_engines/sketch_db/{store => }/persistence/flusher.rs (100%) rename data_plane/src/storage_engines/sketch_db/{store => }/persistence/manifest.rs (100%) rename data_plane/src/storage_engines/sketch_db/{store => }/persistence/mod.rs (100%) rename data_plane/src/storage_engines/sketch_db/{store => }/persistence/part.rs (100%) rename data_plane/src/storage_engines/sketch_db/{store => }/persistence/recovery.rs (100%) rename data_plane/src/storage_engines/sketch_db/{store => }/persistence/source.rs (100%) diff --git a/data_plane/src/storage_engines/sketch_db/mod.rs b/data_plane/src/storage_engines/sketch_db/mod.rs index ad8ff587..b69ebf9e 100644 --- a/data_plane/src/storage_engines/sketch_db/mod.rs +++ b/data_plane/src/storage_engines/sketch_db/mod.rs @@ -32,6 +32,7 @@ pub mod accuracy; pub mod backfill; pub mod data; pub mod metrics; +pub mod persistence; pub mod schema; pub mod store; diff --git a/data_plane/src/storage_engines/sketch_db/store/persistence/cache.rs b/data_plane/src/storage_engines/sketch_db/persistence/cache.rs similarity index 100% rename from data_plane/src/storage_engines/sketch_db/store/persistence/cache.rs rename to data_plane/src/storage_engines/sketch_db/persistence/cache.rs diff --git a/data_plane/src/storage_engines/sketch_db/store/persistence/config.rs b/data_plane/src/storage_engines/sketch_db/persistence/config.rs similarity index 100% rename from data_plane/src/storage_engines/sketch_db/store/persistence/config.rs rename to data_plane/src/storage_engines/sketch_db/persistence/config.rs diff --git a/data_plane/src/storage_engines/sketch_db/store/persistence/flusher.rs b/data_plane/src/storage_engines/sketch_db/persistence/flusher.rs similarity index 100% rename from data_plane/src/storage_engines/sketch_db/store/persistence/flusher.rs rename to data_plane/src/storage_engines/sketch_db/persistence/flusher.rs diff --git a/data_plane/src/storage_engines/sketch_db/store/persistence/manifest.rs b/data_plane/src/storage_engines/sketch_db/persistence/manifest.rs similarity index 100% rename from data_plane/src/storage_engines/sketch_db/store/persistence/manifest.rs rename to data_plane/src/storage_engines/sketch_db/persistence/manifest.rs diff --git a/data_plane/src/storage_engines/sketch_db/store/persistence/mod.rs b/data_plane/src/storage_engines/sketch_db/persistence/mod.rs similarity index 100% rename from data_plane/src/storage_engines/sketch_db/store/persistence/mod.rs rename to data_plane/src/storage_engines/sketch_db/persistence/mod.rs diff --git a/data_plane/src/storage_engines/sketch_db/store/persistence/part.rs b/data_plane/src/storage_engines/sketch_db/persistence/part.rs similarity index 100% rename from data_plane/src/storage_engines/sketch_db/store/persistence/part.rs rename to data_plane/src/storage_engines/sketch_db/persistence/part.rs diff --git a/data_plane/src/storage_engines/sketch_db/store/persistence/recovery.rs b/data_plane/src/storage_engines/sketch_db/persistence/recovery.rs similarity index 100% rename from data_plane/src/storage_engines/sketch_db/store/persistence/recovery.rs rename to data_plane/src/storage_engines/sketch_db/persistence/recovery.rs diff --git a/data_plane/src/storage_engines/sketch_db/store/persistence/source.rs b/data_plane/src/storage_engines/sketch_db/persistence/source.rs similarity index 100% rename from data_plane/src/storage_engines/sketch_db/store/persistence/source.rs rename to data_plane/src/storage_engines/sketch_db/persistence/source.rs diff --git a/data_plane/src/storage_engines/sketch_db/store/mod.rs b/data_plane/src/storage_engines/sketch_db/store/mod.rs index 608a2c1d..14f381c4 100644 --- a/data_plane/src/storage_engines/sketch_db/store/mod.rs +++ b/data_plane/src/storage_engines/sketch_db/store/mod.rs @@ -1458,6 +1458,7 @@ mod tests { // alongside the store that uses it. pub mod epoch_columnar; -// Persistence layer (manifest + parts + flusher + part cache + recovery). -// Reused by `SketchStore::start_persistence`. -pub mod persistence; +// `persistence` moved up to `sketch_db::persistence`. Re-exported here +// so legacy `crate::storage_engines::sketch_db::store::persistence::*` +// paths continue working without consumer changes. +pub use crate::storage_engines::sketch_db::persistence;