- Reimplemented and improved syncing mechanism to fix nodes getting stuck/ending up on a fork
- UTX Pool maximum size increased to 100k txs
- Acceptable block time drift reduced from -15 seconds to -100ms
- Added Block Headers API methods available at
/blocks/headers/allowing to request block headers (i.e. block metadata w/o transactions)
- Payment transaction has been deprecated and will not be accepted once block version 3 is activated
- Payment-related API methods (
/waves/createdSignedPayment) have been removed.
/waves/paymentnow creates and broadcasts a Transfer transcation instead of Payment transaction
- Lease transaction info via API now exposes the lease state (
peers.datis now human-readable JSON file
wallet.datis now encrypted JSON file
waves.logging-levelis not used anymore. For details and configuring instructions, please refer to the next section
waves.blockchain.max-transactions-per-block-diff- Max transactions per block diff, affects size of atomic persistence, default value is 1000
waves.blockchain.min-blocks-in-memory- Amount of blocks in memory. Fast rollback is possible up to this value, default value is 100
waves.network.traffic-logger.ignore-tx-messageslists codes of incoming message types which should not be logged, defaults to 23 (Block) and 25 (Transaction)
waves.network.traffic-logger.ignore-rx-messageslists codes of incoming message types which should not be logged, defaults to 25 (Transaction)
waves.blockchain.store-transactions-in-state- allows to switch transactions storage in state, default value "on"
waves.blockchain.in-memory-chunk-sizesets the size of in-memory blocks window, the smaller value reduces the memory footprint, default value is 5
waves.blockchain.in-mem-chunks-amountsets the number of in-memory windows, default value is 10, the fast rollback is possible up to
in-memory-chunk-size * in-mem-chunks-amount blocks
waves.matcher.order-cleanup-intervalsets the lean-up interval for expired orders on matcher, default value is 5m
waves.matcher.rest-order-limitlimits amount of orders exposed via API, default value is 100
waves.mvstore-page-split-sizeallows changing the size of MVStore in-memory pages, default value 4096 bytes
waves.network.synchronization.invalid-block-storagesection controls invalid block cache. If a block which has been loaded from a remote peer can not be appended to the blockchain, validation error is cached, so that no blocks with such signature are loaded from other peers. This helps improve sync process.
max-sizelimits invalid block cache size and
timeoutlimits invalid block cache residency time.
waves.utx.cleanup-intervaldefines an interval for utx to re-validate all transactions, default value is 5 min
We now separate what gets logged to files and what can be seen in STDOUT.
By default, node logs with
INFO level to STDOUT and
DEBUG in log file, which can be found at
/var/log/waves if starting through
upstart. Log-files are rotated, compressed, those older that 30 days are deleted, max size of all log files is 1Gb.
If you run a node with a JAR, you can easily change levels/output dir.
- To change STDOOUT level, start the node with
- To change file log output level, start the node with
- To change file log output directory, start the node with
We recommend to set
-Xmx parameter to
4G in case of transaction storage turned on, and
2G if you switched off transactions storage. With NG protocol activation, expect your node to consume significantly more disk space. Disabling transaction storage will reduce disk usage. However, if you need to retrieve transaction data via API, you'll need to keep transaction storage enabled.
Customer support service by UserEcho