You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
refactor(compaction): centralize the max_blob_id high-water mark in the catalog
- update_catalog_file now keeps max_blob_id monotonically non-decreasing, so the
invariant "blob IDs are never reused" lives in one place
- online compaction drops its now-redundant explicit std::max
- offline compaction (tglogutil) carries over the existing catalog and its backup
into the work directory, then loads+updates it like online compaction does,
preserving the high-water mark through the shared update_catalog_file
- check the error_code (other than ENOENT) when probing/copying the catalog files,
and abort with a clear message when the carried-over catalog is unrecoverable,
instead of silently losing the high-water mark
- add compaction_catalog::get_catalog_backup_filename()
- tests: update_catalog_file never lowers max_blob_id; offline compaction
preserves the high-water mark and recovers the catalog from its backup
0 commit comments