Repository navigation
fix(archive): recheck cancellation after final disk sync - #1361
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A recording writer could finish its last disk sync while the caller cancelled, then return a completion receipt. Recheck cancellation after both persistent and ephemeral durability boundaries and before setting completion. Two fault cases cancel inside the final sync and still require every opened handle to close.
Provider adoption also moves three native fault checks to the implementation's test harness: failed fresh-handle cleanup, oversized serialized metadata and same-content replacement between verification and writable open. Published dependencies do not inherit a consumer's Vitest filesystem mocks; Zoom retains observable host failures while Core now owns these exact handle/race assertions. All 29 native adapter cases pass. This completes the adapter before its first publication.