cockroachdb / cockroachdb/cockroach
storage: add support for range key prefix/suffix rewriting
- Dominant language
- Go
- Stars
- 32.5k
- Forks
- 4.1k
- PR merge metrics
- PR metrics pending
Description
To support online restore with incremental backups, we'll need to be able to ingest incremental backup sstables containing range keys (MVCC delete ranges). Today there's no support for prefix/suffix rewriting of range keys.
We should consider performing this translation upfront on block load with a block transform. Range keys are rare, and due to defragmentation are often read alongside adjacent range keys.
(Note: consider whether we can just commit the MVCC delete ranges in a batch instead; can we avoid r-amp blow up from overlapping with the memtable?)
Jira issue: CRDB-37729
Contributor guide
Research direction
No files or tests are named. Start by tracing online restore and incremental-backup SSTable ingestion, then inspect range-key handling and the proposed block-transform path. Resolve whether prefix/suffix rewriting belongs on block load or whether committing MVCC delete ranges in a batch avoids the r-amp concern; done means incremental range-key SSTables can be ingested correctly.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- databases
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100