Add Count-Min Sketch for frequency estimation and replace the single LRU
list with a W-TinyLFU policy using window, probation, and protected segments.
Update cache_tracker::touch() to use the new touch() method that handles
segment-aware promotion.
Co-authored-by: dorlaor <1735237+dorlaor@users.noreply.github.com>
This extracts information which was there in row_cache.md, but is
relevant to MVCC in general.
It also makes adaptations and reflects the upcoming changes in this
series related to switching to the new mutation_partition_v2 model:
- continuity in evictable snapshots can now overlap. This is needed
to represent range tombstone information, which is linked to
continuity information.
- description of range tombstone representation was added