Repository navigation
fix(dash-spv): stop discarding a readable masternode snapshot - #1247
Conversation
Any error reading the snapshot removed it, including an I/O error that may clear on a later launch, such as a read refused by iOS data protection while the device is locked. Only a snapshot that does not decode is removed now. Headers are stored every 5 seconds and the snapshot after each QRInfo, so after a crash the snapshot can hold lists above the stored header tip. The whole snapshot was discarded then. It is now restored up to its newest list still in the header chain, through `MasternodeListEngine::truncate_above`.
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 45 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Waiting for bot review — coderabbitai not yet. Wait for the missing reviews, or a writer can post |
|
Waiting for bot review — coderabbitai not yet. Wait for the missing reviews, or a writer can post |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## dev #1247 +/- ##
=======================================
Coverage 79.06% 79.06%
=======================================
Files 298 298
Lines 79058 79080 +22
=======================================
+ Hits 62506 62524 +18
- Misses 16552 16556 +4
|
|
/skip-bots |
|
/self-reviewed |
Split out of #1227.
Any error reading the masternode engine snapshot removed it, including an I/O error that may clear on a later launch, such as a read refused by iOS data protection while the device is locked. Only a snapshot that does not decode is removed now.
Headers are stored every 5 seconds and the snapshot after each QRInfo, so after a crash the snapshot can hold lists above the stored header tip. The whole snapshot was discarded then. It is now restored up to its newest list still in the header chain, through
MasternodeListEngine::truncate_above.PR Hygiene ·
a77cb45When every merge requirement is met, the
PR Hygienecheck passes. Reviewer limits do not block merging; other required GitHub checks and protections still apply.