Skip to content
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

Ensure consistency between aborted set and reused ptrs #6844

Merged
merged 1 commit into from
Feb 28, 2024

Conversation

emhane
Copy link
Member

@emhane emhane commented Feb 28, 2024

Closes #6843.

Removes a read transaction from the aborted set if mdbx tries to reuse it (initiated by user), regardless of error code.

@emhane emhane added C-bug An unexpected or incorrect behavior A-db Related to the database labels Feb 28, 2024
@emhane emhane added this pull request to the merge queue Feb 28, 2024
// reassigns same recently aborted transaction pointer.
{
let tx = env.begin_ro_txn().unwrap();
let tx_ptr = tx.txn() as usize;
Copy link
Collaborator

@joshieDo joshieDo Feb 28, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is it actually reassigning to the prev ptr?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sometimes. we should proptest test these so they run more than once. try the test more than once on main and you will see it fail sometimes pass sometimes.

Merged via the queue into main with commit ecba340 Feb 28, 2024
29 checks passed
@emhane emhane deleted the emhane/txn-manager-aborted-consistency branch February 28, 2024 13:23
fgimenez pushed a commit to fgimenez/reth that referenced this pull request Feb 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-db Related to the database C-bug An unexpected or incorrect behavior
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Inconsistency aborted read transactions <> reassigned mdbx pointers
2 participants