utils: fix unbounded chunked_kv_cache index growth
The index was reclaimed by walking a single fifo of evicted entries, stopping at the first entry still on the ghost queue. Main-queue evictees never enter the ghost queue and were interleaved behind ghosted entries, and the ghost clock only advances on small-queue evictions, so under a touch-heavy workload with never-repeating keys (e.g. the fetch read coalescer) gc stalled behind one live ghost entry and the index grew by one entry per insertion. Erase main-queue evictees from the index at eviction time. This leaves the ghost fifo holding only ghost-queue entries, whose expiry is monotone in fifo order, making the gc early-return correct.
B
Brandon Allard committed
986a28d565debbaf6c28b680ad1da34c44be058f
Parent: 134083d