SIGN IN SIGN UP

lsm/db: reclaim table_cache index entries for main-queue evictions

table_cache has the same unbounded index growth as chunked_kv_cache.
The reclamation walk early-returns at the first entry still on the
ghost queue, and main-queue evictees queued behind it were never
reclaimed, each one pinning an open sst reader.

Park main-queue evictees on a separate retired fifo that the next gc
drains unconditionally; reclamation stays deferred because enqueuing
the reader cleanup allocates, which the noexcept evictor must not do.
The fifo hook is auto_unlink so evict() and rehydration can unlink an
entry without knowing which fifo it is on.
B
Brandon Allard committed
5821cd39fe8e36fd4a375d9ccf70369736b4d47c
Parent: 986a28d