06 / polite forever

The graphs were beautiful. That was the first thing wrong with them.

[ALERT] INC-0006 — Reconciliation backlog static for 90m
[INFO ] recovery workers: 3/3 running
[INFO ] cpu: 94% sustained
[INFO ] state transitions against the static backlog: 2,114,880
[WARN ] commits against the static backlog: 3

Two million state transitions. Three commits.

Andy scrolled the transition log until the lines stopped meaning anything: claim, yield, reclaim, yield, claim. Two workers passing the same batch back and forth with the manners of people stuck in a doorway.

“Not a deadlock,” he said, before Bob could.

Bob sat down anyway. “No. A deadlock stops. You can see a deadlock from orbit — nothing moves, everyone panics, someone kills a process, we all go to lunch.”

He gestured at the CPU graph, flat and high.

“This one looks like the team working late. It’ll look like that until the quarter ends.”

Andy pulled the commit counters. One worker had done everything. One had done almost nothing. One had done nothing at all, and had been doing nothing at all with tremendous energy.

evidence retained
  1. The 50ms backoff window was never entered by w-merge or w-reap.
  2. The worker in the 50ms window committed something: it is not the one sitting at 0 ops.
  3. w-drain is not the worker that committed 41k ops.
  4. The 500ms window does not belong to w-reap.
  5. w-merge did not commit 41k ops.
  6. A recovery transition line the audit index says was never written: [recovery] transition rejected — nx::epoch=…. Bob reads it, shrugs, and calls it a torn write.
messages incident channel
Ops 03:31

Workers are healthy. CPU is healthy. Backlog hasn't moved since 02:01.

Bob 03:33

Nothing in that evidence list tells you a worker's backoff outright. You'll have to take the ones away that can't be.

Bob 03:35

Left columns are workers and backoff windows. Rows are commit counts and backoff windows. One backoff and one commit count each.

Bob 03:36

Find the worker that committed nothing at all. Format: worker, backoff, committed.

table recovery workers

fault

Progress without completion

sample

90m

severity

SEV-2

Skip the grid, go to the answer
w-reap w-drain w-merge 50ms 500ms 5s
0 ops
3 ops
41k ops
50ms
500ms
5s
answer input incident response

Question: Which worker made no progress at all, on which backoff, with what committed?