-
Notifications
You must be signed in to change notification settings - Fork 8
fix: keep a crank's store work inside one transaction #1021
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
sirtimid
wants to merge
21
commits into
sirtimid/clist-refcount-symmetry
Choose a base branch
from
sirtimid/crank-rollback-integrity
base: sirtimid/clist-refcount-symmetry
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
21 commits
Select commit
Hold shift + click to select a range
e0573b7
test: pin the transaction invariants #1005 left broken
grypez c8ce039
fix: keep a crank's store work inside one transaction
sirtimid 58b00b7
test(kernel-test): reap until the vat's GC is visible, not three times
sirtimid 29e4dbf
test: fix rollback crank test
sirtimid f3b0d4a
fix(ocap-kernel): forget every savepoint when a crank rollback fails
sirtimid d6ab74c
fix(kernel-store): log an abort that fails while discarding a transac…
sirtimid dcf1db7
test(ocap-kernel): pin the flush's ordering against a failing enqueue
sirtimid 97f161b
docs: correct the transaction claims review found wrong
sirtimid fe99803
docs: cut the padding from this branch's comments and changelogs
sirtimid f605ec6
fix(ocap-kernel): revert cached values and GC candidates on crank rol…
sirtimid 5fadbf4
test(kernel-store): pin the failed COMMIT that wedges `_inTx`
grypez 9d78120
test(ocap-kernel): pin the endCrank failure that buries the real error
grypez ad07e8a
test(kernel-node-runtime): pin the kernel store's missing logger
grypez 997c10d
test(ocap-kernel): pin the release failure lost at the remote savepoint
grypez 251e58f
test: tighten the four repros after review
grypez 86d16dc
fix(kernel-store): clear `_inTx` before the COMMIT, not after
sirtimid 8adaae5
fix(ocap-kernel): stop `endCrank` burying the error that killed the r…
sirtimid fdf9d6a
fix(ocap-kernel): report the remote release failure, not a missing sa…
sirtimid 80cb871
test(ocap-kernel): pin the in-memory revert against a failed crank ro…
sirtimid 90b42e9
fix(runtimes): give the kernel store a logger
sirtimid 0892784
chore: cite this PR in the changelogs
sirtimid File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
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
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
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
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
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Commit failure skips safeMutate rollback
Medium Severity
commitIfNeedednow clears_inTxbefore attemptingCOMMIT. When thatCOMMITthrows,safeMutate's catch callsrollbackIfNeeded, which sees_inTxfalse and becomes a no-op. A failed SQLiteCOMMITleaves the transaction open, so the cleanupsafeMutateused to perform never runs and the connection stays in a non-autocommit state until close.Reviewed by Cursor Bugbot for commit 0892784. Configure here.