AI-generated analysisPublished automatically and not human-verified. Validated context appears in community notes below.
← Watch feed
Low 44 Bitcoin

rpc: Don't invalidate blocks in dumptxoutset

Public commit record

What the developer wrote

Authored by Fabian Jahr

68/100 · Adequate
rpc: Don't invalidate blocks in dumptxoutset

Instead this new approach uses a temporary coins db to roll back the
UTXO set.

This new approach also prevents the node from pruning necessary blocks
during dumptxoutset execution by using prune locks.
✓ Descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context
The short version

What changed, and why it matters

This commit changes how the Bitcoin Core 'dumptxoutset' RPC command creates snapshots of older UTXO sets. Previously, it temporarily invalidated a block to roll back the chain, which suspended network activity and could leave the node in a bad state if something went wrong. The new approach copies the UTXO set to a temporary database and rolls it back there, leaving the main chain untouched. It also uses a prune lock to prevent needed blocks from being deleted during the operation. This is a robustness and operational-safety improvement rather than a fix for a remote exploit.

Recommended action

Review the new CreateRolledBackUTXOSnapshot path for correctness of the temporary coins view, proper locking around chainstate access, and safe cleanup of the temporary database. Functional tests should verify that unclean shutdown leaves no corrupt state and that prune locks are released on all error paths. No urgent deployment is indicated, but node operators using dumptxoutset on pruned nodes should be aware of the new temporary database behavior.

Security signals we found

01

Removes chain invalidation side effect from RPC

02

Removes network suspension during RPC

03

Adds temporary UTXO database rollback

04

Adds prune lock to prevent block pruning during rollback

05

Adds manual cleanup warning for unclean shutdown

06

Changes RPC help text to describe new behavior

Risk score

Why this scored 44/100

Our methodology →
Potential impact 12/30
Exploitability 8/25
Stealth signal 6/15
Affected reach 7/15
Confidence 7/10
Evidence quality 4/5
Human-validated context

Community notes

Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.

No validated notes yet.

The AI analysis stands alone for now. Submit a note if you can add evidence or important context.