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
This patch integrates LogDb with SlateDb segmentation. Updates the key structure for prefix-based segments. Also updates the common key prefix RFC to remove the record tag field, which is incompatible with prefix-based segmentation.
End boundaries (end sequence, end time) are derived from the next segment's start values, or from the current log state for the active segment.
82
113
114
+
Living in the system segment decouples metadata from the per-segment
115
+
SlateDB lifecycle: when a user segment is drained and pruned from the
116
+
SlateDB manifest, the `SegmentMeta` record for it is not automatically
117
+
removed and must be deleted by the writer as it observes the manifest
118
+
update. The exact cleanup mechanism is out of scope for this RFC and is
119
+
called out under [Segment-Based Deletion](#segment-based-deletion) as
120
+
future work.
121
+
83
122
#### Metadata Lifecycle
84
123
85
124
When a new segment is created, a `SegmentMeta` record is written with `start_seq` and `start_time_ms`. This ensures the segment is immediately discoverable.
@@ -196,3 +235,4 @@ This would enable use cases such as:
196
235
|------------|-------------|
197
236
| 2026-01-07 | Initial draft |
198
237
| 2026-01-12 | Added link to varint implementation |
238
+
| 2026-05-19 | Key format v2: `segment_id` precedes `record_type`; system segment (id 0) reserved for `SeqBlock` and `SegmentMeta` records; user segments start at id 1. Enables a fixed 6-byte SlateDB segment-extractor prefix that routes every per-segment record (entries + listings) to the same SlateDB segment. |
0 commit comments