You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Layer 1 blocking variants (Codex P1 + Gemini Medium): retract the
previous "I/O-bound, bypass the pool" decision. The current
adapter busy-polls XREAD BLOCK / B*POP with time.Sleep +
KV+leader re-check on each wake, so bypassing would hand CPU
unbounded to them. v1 keeps blocking variants gated; a
condvar-based wake-up is listed as the prereq for an honest
bypass in a stacked follow-up.
- Layer 1 Lua ctx caveat (Gemini Medium): runLuaScript currently
rebuilds the script context from context.Background(), which
drops the ctxKeyInPoolSlot sentinel Submit installed when it
dispatched the outer EVAL. Called out explicitly that Layer 1
MUST NOT ship before runLuaScript derives its context from the
caller-supplied ctx; otherwise Lua scripts inside the pool
self-deadlock on every redis.call.
- Layer 4 Mode B cost (Gemini HIGH): Mode B preserves the
O(N_suffix) unmarshal cost during the migration window, not
constant O(new). Added a read-driven drain mitigation, top-N
legacy-suffix-size metric for operator visibility, and an
explicit note that Mode A is the conservative choice for
operators who can't tolerate transient cost.
- Layer 4 removal criterion (Codex P1): just "no legacy reads"
could keep the fallback alive on cold streams forever. Require
a paired elastickv_stream_legacy_format_keys_total derived from
a periodic prefix-scan; the fallback is safe to remove only when
both counters are zero.
0 commit comments