kvserver: maintain key-span GC thresholds #73826
Labels
C-enhancement
Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception)
no-issue-activity
T-kv
KV Team
X-stale
Is your feature request related to a problem? Please describe.
Today each range maintains a GC threshold which covers its entire key span. This can get awkward when we want to merge ranges away after removing tables or indexes which might have had a shorter GC TTL. Today, nothing prevents such merges and such merges can result in unexpected violations of observed TTL behavior. This is also the proximate cause of #31563 and makes #31504 not viable.
Describe the solution you'd like
With the advent of cockroachdb/pebble#1339, we could imagine maintaining multiple GC thresholds for various subspans of a range. Generally these thresholds would converge to a single one, but, upon merge, they wouldn't need to.
Additional context
If we were really crazy, we could eventually leverage this to maintain different GC TTLs for different spans within a range.
Jira issue: CRDB-11766
The text was updated successfully, but these errors were encountered: