diff options
author | warptangent <warptangent@inbox.com> | 2015-05-08 13:46:26 -0700 |
---|---|---|
committer | warptangent <warptangent@inbox.com> | 2015-05-08 14:12:20 -0700 |
commit | 1eb4c66ad8647c8f73c31dd32645a689426346bd (patch) | |
tree | 095e5fd0143a7e2366217e58078bc3a0c215ec69 /src/blockchain_converter/blockchain_converter.cpp | |
parent | Add MDB_NORDAHEAD as a supported LMDB flag for blockchain_import (diff) | |
download | monero-1eb4c66ad8647c8f73c31dd32645a689426346bd.tar.xz |
Update blockchain utilities with portable bootstrap file format
Remove repeated coinbase tx in each exported block's data.
Add resume from last exported height to blockchain_export, making it the
default behavior when the file already exists.
Start reorganizing the utilities.
Various cleanup.
Update output, including referring to both height and block numbers as
zero-based instead of one-based. This better matches the block data,
rather than just some parts of the existing codebase.
Use smaller default batch sizes for importer when verifying, so progress
is saved more frequently.
Use small default batch size (1000) for importer on Windows, due to
current issue with big transaction sizes on LMDB.
file format
-----------
[4-byte magic | variable-length header | block data]
header
------
4-byte file_info length
file_info struct
file format major version
file format minor version
header length (includes file_info struct)
[rest of header, padded with 0 bytes up to header length]
block data
----------
4-byte chunk/block_package length
block_package struct
block
txs (coinbase/miner tx included already in block)
block_size
cumulative_difficulty
coins_generated
4-byte chunk/block_package length
block_package struct
[...]
Diffstat (limited to '')
-rw-r--r-- | src/blockchain_converter/blockchain_converter.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/blockchain_converter/blockchain_converter.cpp b/src/blockchain_converter/blockchain_converter.cpp index c3c6d0918..855dde644 100644 --- a/src/blockchain_converter/blockchain_converter.cpp +++ b/src/blockchain_converter/blockchain_converter.cpp @@ -57,7 +57,16 @@ bool opt_testnet = false; // number of blocks per batch transaction // adjustable through command-line argument according to available RAM -uint64_t db_batch_size = 20000; +#if !defined(WIN32) +uint64_t db_batch_size_verify = 5000; +#else +// set a lower default batch size for Windows, pending possible LMDB issue with +// large batch size. +uint64_t db_batch_size_verify = 1000; +#endif + +// converter only uses verify mode +uint64_t db_batch_size = db_batch_size_verify; } |