-
Notifications
You must be signed in to change notification settings - Fork 210
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
flake: panic: Must deleted existing spendable note
#5271
Comments
dpc
added a commit
to dpc/fedimint
that referenced
this issue
May 12, 2024
In one of the recent commits I've added an assertion to make sure a spendable note was actually always removed when we thought it was, as I was investigating a bug causing notes to be lost (fedimint#5195), and it seemed like a good idea. Too bad it causing flakes now: fedimint#5271 So it looks like our reliance on retrying db conflicts (`autocommit`), leads to inability to assert basic expectations about database state, which seems terrible. In PR I'm adding a little lock to prevent write-write conflicts in this area of the code, and I think it's worthwhile, just to be able to ensure database integrity. Moreover, I realized that `autocommit` is probably a bad idea altogether. Application typically require transaction conflict handling, because they are using **shared** databases. But with an embedded databases, there is no sharing with external entities so there *always* should be, or even *must be* a way to structure application and locking to avoid any conflicts, preventing db isolation level issues, inability to assert basic stuff, or just wasting time retrying things.
This was referenced May 12, 2024
dpc
added a commit
to dpc/fedimint
that referenced
this issue
May 13, 2024
dpc
added a commit
to dpc/fedimint
that referenced
this issue
May 13, 2024
dpc
added a commit
to dpc/fedimint
that referenced
this issue
May 13, 2024
dpc
added a commit
to dpc/fedimint
that referenced
this issue
May 13, 2024
okjodom
pushed a commit
to okjodom/fedimint
that referenced
this issue
Jun 7, 2024
okjodom
pushed a commit
to okjodom/fedimint
that referenced
this issue
Jun 7, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
https://github.com/fedimint/fedimint/actions/runs/9041274494/job/24860479614?pr=5259
The text was updated successfully, but these errors were encountered: