pub struct FreezeReport {
pub segment_id: u32,
pub frozen_rows: usize,
pub bytes_freed: u64,
pub segment_bytes: Vec<u8>,
}Expand description
v5.2.2: outcome of a successful Catalog::freeze_oldest_to_cold
call. The catalog state has already been mutated by the time this
is returned (hot rows dropped + segment registered + Cold locators
flipped). The caller’s only remaining concern is segment_bytes —
persist them to disk under <db>.spg/segments/seg_<id>.spg so a
future restart can reload via the v5.1 SPG_PRELOAD_COLD_SEGMENT
path. (v5.3’s manifest will subsume this manual step.)
Fields§
§segment_id: u32Id allocated by Catalog::load_segment_bytes for the new
cold-tier segment. Stable across the call’s success path.
frozen_rows: usizeNumber of rows that moved hot → cold. Equals the max_rows
the caller asked for (the API is strict on the count).
bytes_freed: u64Hot-tier bytes reclaimed by the freeze — the
Table::hot_bytes delta before vs after. Useful to feed
back into the freezer’s budget check on the next tick.
segment_bytes: Vec<u8>Encoded segment bytes, byte-identical to what
encode_segment produced. The catalog already owns a
copy inside cold_segments; this hand-off lets the caller
persist them without re-encoding.
Trait Implementations§
Source§impl Clone for FreezeReport
impl Clone for FreezeReport
Source§fn clone(&self) -> FreezeReport
fn clone(&self) -> FreezeReport
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more