Skip to content

UNSTABLE 0.10 preview with new sync modes (bugfix)

Pre-release
Pre-release
Compare
Choose a tag to compare
@caraphinneth caraphinneth released this 03 Oct 14:45
· 19 commits to spv since this release

Adds new sync options based on Bitcoin PR#9483:
-spv: if set to 1, rely on headers and fresh blocks to check transactions.
-autorequestblocks: if set to 0, do not download blocks that are older than your wallet.
Modes selectable through GUI settings:

  • Full: -spv=0 -autorequestblocks=1 (default).
  • Pruned: -spv=0 -autorequestblocks=1 -prune=200 (or whatever you select). Needs reindex to switch back from. Only there for the completion sake and is not recommended.
  • Lightweight: -spv=1 -autorequestblocks=0. Full SPV mode, only new blocks requested.
  • Hybrid: -spv=1 -autorequestblocks=1. All blocks requested, but you're good to go after headers and new blocks are downloaded. Allows flawless switching to/from full mode.
    Naturally, -spv=0 -autorequestblocks=0 is not there since it's only useful for debug purposes.

Changes since the previous SPV snapshot:

  • Fixed a crash upon receiving empty headers.
  • SPV/non-SPV transaction state is now properly read from the wallet.

Changes since milestone 1:

  • initial sync should no longer generate excess network traffic;
  • even faster reindex;
  • protobuf is now optional, BIP70 support is not built by default;
  • compact blocks and HD keys support;
  • significant improvements in memory management and network response time (the latter even helps old peers!).