Commit 64ce1b4
doc: one execution path for index peeks
A fast-path index peek's arrangement walk runs inline on the timely worker to
completion today, with no preemption point. Three separate efforts have
attacked the resulting head-of-line blocking from three directions, leaving
three PendingPeek states for one target type, two accumulation loops, and two
places where a walk is discarded and restarted.
This document settles on one execution path: a single scan type, run first
inline with a small budget, promoted to a tokio task under a replica-wide
permit only when it overruns that budget, with the peek stash becoming a
state transition of the running scan rather than a second walk starting over.
It is a design document because the consolidation changes cancellation
semantics, memory retention, and concurrency bounds, and those need to be
settled before the code they justify deleting is removed.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>1 parent f9b255f commit 64ce1b4
1 file changed
Lines changed: 501 additions & 0 deletions
0 commit comments