This is the record of an abcd-managed repository

abcdBetav0.16.2 · 2026-11-06

Development record

A capture transition's link repoint (repointMovedIssue in internal/core/capture/workflow.go) waits up to 5 s for the intent store's lock INSIDE the ledger lock, and the ledger's own acquisition budget (lockTimeout in internal/core/capture/alloc.go) is also 5 s, so an intent hold of 5 s or more makes a third process's ledger writer (a capture, a resolve, a link) fail with ErrAllocatorContention while the transition itself only reports a RelinkError. capture migrate --apply waits on the intent lock inside the ledger lock the same way. Bounded, not a deadlock: the two waits chain into a spurious failure on a slow machine.

issueresolvedminoriss-2609262218059995

A capture transition's link repoint (repointMovedIssue in internal/core/capture/workflow.go) waits up to 5 s for the intent store's lock INSIDE the ledger lock, and the ledger's own acquisition budget (lockTimeout in internal/core/capture/alloc.go) is also 5 s, so an intent hold of 5 s or more makes a third process's ledger writer (a capture, a resolve, a link) fail with ErrAllocatorContention while the transition itself only reports a RelinkError. capture migrate --apply waits on the intent lock inside the ledger lock the same way. Bounded, not a deadlock: the two waits chain into a spurious failure on a slow machine.

Grounds

  • pursued: with the intent lock held longer than a ledger writer's whole budget, a capture arriving while a resolve or a migrate apply waits now lands (TestAWaitingVerbLeavesTheLedgerToOtherWriters); a ledger writer failing with allocator contention during such a wait would show it wrong

Frontmatter

idiss-2609262218059995
typeissue
lifecycleresolved
severityminor