Skip to content

fix(transactions): harden confirmation recovery handling - #10382

Merged
ReubenBond merged 2 commits into
dotnet:mainfrom
ReubenBond:reubenbond-fix-confirmationworker-collect-hang
Aug 10, 2026
Merged

ReubenBond merged 2 commits into
dotnet:mainfrom
ReubenBond:reubenbond-fix-confirmationworker-collect-hang

Conversation

@ReubenBond

@ReubenBond ReubenBond commented Aug 9, 2026

Copy link
Copy Markdown
Member

Summary

  • complete failed confirmation-collection batches only after recovery installs the authoritative storage batch so retries bind to the restored batch
  • prevent duplicate recovery within a single StorageWork cycle so consecutive failure counting and deactivation thresholds stay correct
  • use one failure-aware follow-up callback path for storage-batch completion
  • add deterministic tests covering confirmation retry ordering, exact-once batch completion, and direct TransactionQueue storage-work recovery behavior
Microsoft Reviewers: Open in CodeFlow

Complete failed storage batches only after recovery finishes, prevent duplicate recovery within one StorageWork cycle, and cover confirmation retry ordering plus failure counting with deterministic tests.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 8ec731ce-65d2-4334-aadc-c600bcf6daeb
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 7863fb27-1f10-4b39-acc9-bcb9b1013f12
@ReubenBond
ReubenBond force-pushed the reubenbond-fix-confirmationworker-collect-hang branch from 8c5ce76 to 9e56918 Compare August 9, 2026 23:46
@ReubenBond
ReubenBond merged commit 1dcc00d into dotnet:main Aug 10, 2026
123 of 124 checks passed
@ReubenBond
ReubenBond deleted the reubenbond-fix-confirmationworker-collect-hang branch August 10, 2026 00:39
This was referenced Aug 28, 2026
This was referenced Sep 4, 2026
@github-actions github-actions Bot locked and limited conversation to collaborators Sep 9, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant