You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Merge #1836: Fix SQLite panic when syncing many UTXOs by enabling WAL journal mode
7c4850f release: bump version to 0.30.2 (Steve Myers)
1065511 fix(sqlite): set connection journal_mode to WAL and busy_timeout to 5000 ms (Steve Myers)
344fa3f test: repro bug with large num utxos and sqlite (Steve Myers)
957b219 deps: downgrade dev dep electrsd to 0.24.0 (Steve Myers)
3b38892 ci: fix pinned rustls and add ci/pin-msrv.sh (Steve Myers)
Pull request description:
### Description
fixes#1827
replaces #1828
I changed the `SqliteDatabase` struct to create new rusqlite `Connection`s with [WAL](https://www.sqlite.org/wal.html) journal mode enabled and 5000ms busy_timeout. This prevents a large sync from trying to start and commit a batch (db transaction) while the initial non-batch connection is still busy writing it's data.
### Notes to the reviewers
I commented out the `electrum::test_electrum_large_num_utxos` test since it takes an hour to run. Before the fix in thie PR it would also fail with only 10 large TX.
The dev dependency and pinning changes were required to run the new, and other tests.
### Changelog notice
- Fix SQLite panic when syncing many UTXOs
### Checklists
#### All Submissions:
* [x] I've signed all my commits
* [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
* [x] I ran `cargo fmt` and `cargo clippy` before committing
#### Bugfixes:
* [ ] This pull request breaks the existing API
* [x] I've added tests to reproduce the issue which are now passing
* [x] I'm linking the issue being fixed by this PR
ACKs for top commit:
ValuedMammal:
utACK 7c4850f
nymius:
tACK 7c4850f
evanlinjin:
utACK 7c4850f
Tree-SHA512: ad10b8b4354bdcbc5b9aeb1d06f68f30501dcf4ed687b387f514ff7de5e034b729dbdf25f59a8b269e562f0dab8992aa187bf187e3e0adf585838ae96afb40cc
0 commit comments