github ArweaveTeam/arweave N.1.9.0.0
Release N.1.9.0.0

latest releases: N.2.7.3, N.2.7.2, N.2.7.1...
4 years ago

Release N1.9.0.0 is out!

The release comes with a hard fork which activates at height 315700, approximately 2019-11-04 at 09:00 CET.

New features in the release:

  • Improved RandomX hashing performance. The performance boost is up to 300%, depending on the setup.
  • Transaction database upgrade. The transaction index backend has been upgraded to use SQLite, giving a huge performance boost to ArQL/GraphQL query speeds, more efficient indexing, and more flexibility to support future development. The feature is already live on arweave.net.
  • The disk space limit feature has been updated to stop writing new files on disk when the disk partition with the Arweave data folder is 98% full, (this default behavior can be tweaked via the disk_space command line argument).

Other improvements and bugfixes:

  • The general memory footprint for nodes has been reduced.
  • Content-Type filtering has been tightened up, fixing an issue where header splitting with certain transaction tag values was possible.
  • Pooling mechanics adjustments including updated benchmarks.
  • Difficulty adjustment per retarget period will now be capped, in order to further stabilize block times.

Upgrade instructions

This is a big update, so comes with a slightly more involved upgrade process.

Shut down arweave-server. To make sure the shutdown was successful, run ps aux | grep beam | grep -v grep. The output should be empty.

Run git fetch --all --tags && git checkout N.1.9.0.0 && git reset --hard N.1.9.0.0

Now, we can update the dependencies and prepare your machine.

1. Erlang 21

Support for legacy Erlang 20 has been removed, Erlang 21 is now the minimum supported Erlang target. To check your current version, run erl -v, if you're running less than 21, run the following steps.

To upgrade Erlang on Ubuntu 18.04:

wget http://www.erlang.org/download/otp_src_21.3.tar.gz; tar -zvxf otp_src_21.3.tar.gz; cd otp_src_21.3; export ERL_TOP=`pwd`; ./configure --without-wx && make -j4 && sudo make install

2. SQLite

To install the SQLite dependency on Ubuntu 18.04, run the following:

sudo apt-get install libsqlite3-dev

3. Restart the node

Start arweave-server again with the same arguments as before, on the first run a database migration process will start, this process doesn't need to be supervised and can take an hour or so, depending on the specs of your machine. A ar_sqlite3: populated_db log message will be emitted when the upgrade is complete.

Your node will function as normal during this migration process with the exception of the /arql endpoint, which will return a 503 status code.

The install.sh script has been and the mining guide notes have been updated to reflect all of these changes.

Support

For more details on how to run the node, please see our mining guide - https://docs.arweave.org/info/mining/mining-guide. If you have any issues upgrading or would like to know more about the release, feel free to reach out to us in the #mining channel on Discord Arweave Dev Talk server (https://discord.gg/DjAFMJc) or email us on team@arweave.org.

Don't miss a new arweave release

NewReleases is sending notifications on new releases.