Development record
A failed fetch from origin refuses the drain move instead of entering the drain's outage wait.
issueresolvednitpickiss-2610161015448977
A failed fetch from origin refuses the drain move instead of entering the drain's outage wait.
Grounds
- pursued: a lost connection to origin makes the drain wait and resume, not stop; shown wrong if a failed fetch refuses a drain move
Frontmatter
| id | iss-2610161015448977 |
|---|---|
| type | issue |
| lifecycle | resolved |
| severity | nitpick |
.abcd/work/issues/resolved/iss-2610161015448977-a-failed-fetch-from-origin-refuses-the.md
open on GitHub ↗ · commit history ↗
References1
- itd-2610161016401115Drains run unattended and visiblyrelated
mentions2
- dcn-26101610403502562026-10-16 — A drain plans from origin's default branch (facilitator-on-delegation, drain-many-accounts): each drain move fetches origin inside the drain's lock before it reads anything, and takes one snapshot of the ledger from origin's default branch, which the plan, the lane's start check, the judgement's remedy digest and the reservation footprint all read; a fetch that fails, a default branch the fetch could not read, or a missing origin/HEAD means the move cannot plan and enters the drain's outage wait, never planning from what the checkout last saw; the dry run plans from the last fetched view and says how old it is, so it still writes nothing; a checkout behind origin is warned about, not refused, because the lane is cut from origin anyway; and any reservation of a record finished on origin's default branch backs off, with or without a tip (grounds: a queue consumer reads the row it locks, as SELECT ... FOR UPDATE SKIP LOCKED; iss-2610160957404827, iss-2610161015448977).
- spc-2610161044461448drain-many-accounts