Full node 0.9.0 (Testnet Only)


In the release

In this TestNet release, we introduce new experimental LevelDB data backend. A node with LevelDB requires less RAM for operation and consumes less space on disk. This version is fully compatible with version 0.8.12, except the configuration file and data folder.

Other changes

  • Utility to export existing blockchain to binary file
  • Utility to import blocks from binary file

Changes to configuration file

  • New waves.data-directory parameter. Use it to configure directory in which the node stores it's data. Defaults to ${waves.directory}"/data"
  • waves.mvstore-page-split-size parameter was removed
  • Default value for waves.network.file was changed to ${waves.directory}"/peers.dat". Peers file was moved out from LevelDB data folder
  • Parameters waves.blockchain.blockchain-filewaves.blockchain.state-file and waves.blockchain.checkpoint-file are no longer used
  • Parameter waves.blockchain.store-transactions-in-state is obsolete
  • Parameter waves.matcher.order-history-file is obsolete

System requirements

We recommend setting -Xmx parameter back to 2G.

Migration notes

Stop the node

Export existing blockchain to file by executing following command in your home directory:

sudo java -cp '/usr/share/waves-testnet/lib/*' -Dwaves.directory=/var/lib/waves-testnet com.wavesplatform.Exporter /etc/waves-testnet/waves.conf testnet

After execution of the command new file testnet-<current_height> will be created in the current folder.

Remove folder data

sudo rm -rdf /var/lib/waves-testnet/data

Install new version

sudo dpkg -i waves-testnet_0.9.0_all.deb

Import the blockchain file (or just start the node)

sudo java -cp '/usr/share/waves-testnet/lib/*' -Dwaves.directory=/var/lib/waves-testnet com.wavesplatform.Importer /etc/waves-testnet/waves.conf testnet-<current_height>

Change an owner of folder data

sudo chown -R waves-testnet:waves-testnet /var/lib/waves-testnet/data

Start the node

Known issues

  • LevelDB on Windows does not work under heavy load which is the case
  • Matcher storage was not optimized, DEX can be slow and needs extensive testing
  • Rollback was not optimized, fails sometimes of OOM exception