Skip to content

Release N.1.9.2.0

Compare
Choose a tag to compare
@ldmberman ldmberman released this 12 Dec 16:06
· 813 commits to master since this release

The release comes with the new build system. No need to install any dependencies anymore - simply download and run the binary! Please, read the upgrade upgrade instructions below for details - the upgrade instructions for the previous releases would not apply here.

Improvements and bugfixes, the miner:

  • The polling mode was made more efficient. In addition to that, even outside the polling mode the node will ask its trusted peers for blocks if it has not received any in the last minute.
  • The number of best peers to propagate transactions and blocks to can be specified in the command line.
  • The number of file descriptors to use for incoming connections can be specified on the command line. After the limit is reached, the requests are queued.
  • Collecting transactions during fork recovery now respects protocol limits to avoid abuse.
  • Requests with valid transactions are excluded from the IP-based throttling to ensure timely propagation of excessive transaction volumes.
  • Metrics for uploaded and downloaded bytes per endpoint were added.

Improvements and bugfixes, the gateway:

  • The SQLite driver was replaced, the previous one had an issue where it occasionally would fail to restart after a crash.
  • The missing CORS headers were added to the /:path and /:path/:subpath endpoints.
  • The number of file descriptors necessary for incoming gateway connections was reduced.
  • Metadata of all transactions of a block is inserted in a single database transaction now.

Upgrade instructions

N.1.9.2.0 comes with the prebuilt binaries for the Linux and Darwin x86_64 platforms.

Download the corresponding archive and unpack it.

tar -xzf arweave-1.9.2.0.linux-x86_64.tar.gz

It makes sense to unpack it inside a dedicated directory. You can always move this directory around, but the miner may not work if you move only some of the files. The weave data would, by default, be stored in this directory, too, but it can be overridden using the data_dir command-line argument.

The archive contents look like this:

bin/  data/  erts-10.3/  lib/  releases/

To run the miner, execute ./bin/start <arguments>. See the mining guide for more details.

If your OS/platform architecture is not in the list, check README for how to build the miner from sources.

If you have been already mining before this update, you can either download and unpack the archive in your Git arweave folder and run ./bin/start ... or execute the following to continue building the miner from sources:

git fetch --all --tags && git checkout -f N.1.9.2.0
git submodule update
rm -rf lib _build

You can now run the miner using the arweave-server script.

You can also create a new directory and unpack the archive there, but make sure you use the same data directory (data_dir argument) as you did before. If you used the default, it would be data_dir <path-to-your-previous-arweave-folder> in the mining command. Check this section of the guide if you would like to move your data elsewhere.

If you operate a gateway, note that the TLS certificates need to be put into the apps/arweave/priv/tls folder.

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.