Skip to content

Releases: ArweaveTeam/arweave

Release 2.6.7

24 Apr 10:22
Compare
Choose a tag to compare
  • Reduce the overhead caused by the inefficient GET /recent_hash_list_diff handler,
    essentially speeding up (re-)packing;
  • fix the bug introduced in 2.6.6 where the in-place repacking could store invalid data;
    clean up the invalid records;
  • fixed the bug where the node would print the out-of-sync warning in the
    console when only one (or several out of many) trusted peer(s) are lagging behind.

The release comes with the prebuilt binaries for the Linux x86_64 platforms.

If you want to run the miner from the existing Git folder, execute the following command:

git fetch --all --tags && git checkout -f N.2.6.7

See the mining guide for further instructions.

If you have any issues upgrading or would like to know more about the release, feel free to reach out to us in the Arweave Miners Discord (https://discord.gg/GHB4fxVv8B) or email us at team@arweave.org.

Release 2.6.6

13 Apr 13:21
Compare
Choose a tag to compare

The release introduces a few improvements and bug fixes.

  • Fix the regression introduced in 2.6.5 where data synchronisation became very slow;
  • speed up the in-place repacking of the 2.5 storage;
  • choose the default packing rate based on the actual packing latency achieved by the node's processor;
  • hard-code the trusted peers to use when no trusted peers are specified explicitly; filter out the peers which fell behind.

The release comes with the prebuilt binaries for the Linux x86_64 platforms.

If you want to run the miner from the existing Git folder, execute the following command:

git fetch --all --tags && git checkout -f N.2.6.6

See the mining guide for further instructions.

If you have any issues upgrading or would like to know more about the release, feel free to reach out to us in the Arweave Miners Discord (https://discord.gg/GHB4fxVv8B) or email us at team@arweave.org.

Release 2.6.5

31 Mar 13:51
Compare
Choose a tag to compare
Release 2.6.5 Pre-release
Pre-release

The release introduces various improvements and bug fixes.

Some hightlights:

  • Fix a bug where the node would fail to produce a block if it cannot find the recent VDF checkpoints in the cache;
  • improve the node behaviour under disk space constraints:
    • stop writing data to storage modules residing on the separate drives when less than 1% of the disk space remains available;
    • stop writing data to storage modules on the data_dir drive when the remaining space is less than what is reserved for the disk pool and block headers cache;
  • fix a bug introduced in 2.6.4 where the node may fail to join the network when only some of the specified trusted peers are not available;
  • add support for syncing exclusively from local peers:
    • to enable the feature, specify local peers to sync from using the local_peer command line parameter and set the sync_from_local_peers_only command line flag;
    • the peer address may be (although it does not have to be) a private IP address;
    • make sure to specify local_peer on both sides - the node does not expect to be rate limited when syncing from a "local" peer so its peer needs to recognize it as local too;
  • the data synchronization is improved;
  • the sync_jobs configuration parameter now determines the number of workers responsible for fetching the chunks from the network and also from the other local storage modules:
    • if you run the node with sync_jobs 0, it won't sync any data from the network and it won't copy and repack the data between storage modules either;
    • if you set a positive value, the node will at first copy and repack the data across the intersecting storage modules and only then attempt to sync the missing data from the network;
    • if you want to copy and repack local storage modules but do not want to sync from the network, start the node with sync_from_local_peers_only (you do not have to specify local_peers).

The release comes with the prebuilt binaries for the Linux x86_64 platforms.

If you want to run the miner from the existing Git folder, execute the following command:

git fetch --all --tags && git checkout -f N.2.6.5

See the mining guide for further instructions.

If you have any issues upgrading or would like to know more about the release, feel free to reach out to us in the Arweave Miners Discord (https://discord.gg/GHB4fxVv8B) or email us at team@arweave.org.

Release 2.6.4

14 Mar 09:48
Compare
Choose a tag to compare

The release introduces various improvements and bug fixes.

Some hightlights:

  • Added GET /wallet/[addr]/reserved_rewards_total serving the sum (in Winston) of the reserved mining rewards;
  • introduced support for repairing specific RocksDB databases; specify each database to repair with:
repair_rocksdb [file]
  • VDF peers addressed using domain names now stay connected even if the IP addresses change (applies to both clients and servers configured via vdf_client_peer and vdf_server_trusted_peer accordingly);
  • sped up loading of blocks and transactions when joining the network;
  • a bug is fixed where mining with custom size storage modules would sometimes fail with "mined_block_but_failed_to_read_chunk_proofs";
  • fixed a bug where a failure to allocate a large page would result in the obscure "rwlock destroy" error.

The release comes with the prebuilt binaries for the Linux x86_64 platforms.

If you want to run the miner from the existing Git folder, execute the following command:

git fetch --all --tags && git checkout -f N.2.6.4

See the mining guide for further instructions.

If you have any issues upgrading or would like to know more about the release, feel free to reach out to us in the Arweave Miners Discord (https://discord.gg/GHB4fxVv8B) or email us at team@arweave.org.

Release 2.6.3

05 Mar 00:34
Compare
Choose a tag to compare

The release introduces an improvement to the VDF pre-emptive gossip and validation logic for Arweave 2.6.

The release comes with the prebuilt binaries for the Linux x86_64 platforms.

If you want to run the miner from the existing Git folder, upgrade Erlang to version 24 and execute the following command:

git fetch --all --tags && git checkout -f N.2.6.3

See the mining guide for further instructions.

If you have any issues upgrading or would like to know more about the release, feel free to reach out to us in the Arweave Miners Discord (https://discord.gg/GHB4fxVv8B) or email us at team@arweave.org.

Release 2.6.2

01 Mar 21:20
Compare
Choose a tag to compare
Release 2.6.2 Pre-release
Pre-release

The release introduces various improvements and bug fixes.

Some hightlights:

  • The memory consumption issues of 2.6.1 are fixed;
  • the v2_index_data_size_by_packing metric is recorded with the new "partition_size" and "partition_index" labels;
  • the node may now pack and update in place the unpacked data in the 2.5 storage (activate by enable legacy_storage_unpacked_packing);
  • the default packing rate is now chosen based on the CPU core count, albeit conservatively;
  • the mempool processing is improved by filtering out unfitting transactions early in the process.

The release comes with the prebuilt binaries for the Linux x86_64 platforms.

If you want to run the miner from the existing Git folder, upgrade Erlang to version 24 and execute the following command:

git fetch --all --tags && git checkout -f N.2.6.2

See the mining guide for further instructions.

If you have any issues upgrading or would like to know more about the release, feel free to reach out to us in the Arweave Miners Discord (https://discord.gg/GHB4fxVv8B) or email us at team@arweave.org.

Release 2.6.1

23 Feb 11:14
Compare
Choose a tag to compare
Release 2.6.1 Pre-release
Pre-release

The release introduces a convenient way to copy and repack data across the local storage modules, including the legacy 2.5 storage.

Some hightlights:

  • the data is copied and repacked from the 2.5 storage to the corresponding storage modules, if any, and between the storage modules; once finished, the node attempts to sync the missing data from the network;
  • additionally, the 2.5 data is repacked in place when the node is launched with enable legacy_storage_repacking;
  • the broken chunk index records are repaired in the process;
  • the limits for the number of chunks to keep in RAM (by the syncing, packing, and mining processes accordingly) are chosen based on the available memory and reported on startup; the limits may be overriden via data_cache_size_limit [number], packing_cache_size_limit [number], and mining_server_chunk_cache_size_limit [number];
  • the estimated maximum packing rate is reported on startup (you might want to restart the node with packing_rate [number] afterwards.

The release comes with the prebuilt binaries for the Linux x86_64 platforms. arweave-2.6.1.linux-x86_64.tar.gz works on Ubuntu 21+ and CentOS 8. To run on Ubuntu 18 or 20, grab arweave-2.6.1.ubuntu18-x86_64.tar.gz or arweave-2.6.1.ubuntu20-x86_64.tar.gz . CentOS 7 is not supported.

If you want to run the miner from the existing Git folder, upgrade Erlang to version 24 and execute the following command:

git fetch --all --tags && git checkout -f N.2.6.1

See the updated mining guide for further instructions.

If you have any issues upgrading or would like to know more about the release, feel free to reach out to us in the Arweave Miners Discord (https://discord.gg/GHB4fxVv8B) or email us at team@arweave.org.

Release 2.6

10 Feb 17:02
Compare
Choose a tag to compare

This release upgrades the network inline with the Arweave 2.6 specification. While the specification details the major upgrades to the system, some of the highlights include:

  • Significantly lessened energy consumption during the mining process.
  • Oracle-free real-time detection of storage costs.
  • Increased capabilities to detect network capacity.

Please read the spec and mining guide for full details of these features

Transition and Implementation Details

The fork activates at height 1132210, approximately 2023-03-06 14:00 UTC. You will need to make sure you have upgraded your miner before this time to connect to the network.

The release comes with the prebuilt binaries for the Linux x86_64 platforms. arweave-2.6.0.0.linux-x86_64.tar.gz works on Ubuntu 21+ and CentOS 8. To run on Ubuntu 18 or 20, grab arweave-2.6.0.0.ubuntu18-x86_64.tar.gz or arweave-2.6.0.0.ubuntu20-x86_64.tar.gz . CentOS 7 is not supported.

If you want to run the miner from the existing Git folder, upgrade Erlang to version 24 and execute the following command:

git fetch --all --tags && git checkout -f N.2.6.0

See the updated mining guide for further instructions.

The new protocol comes with the new mechanism for determining upload fees and mining rewards. The new upload fee computation mechanism kicks in in 75 days after the fork activation and begins a gradual transition to the new pricing mechanism taking 12 months. Fiat price stabilization will be disabled during these 3 months until the transition begins due to high uncertainty about the network difficulty at the time. An additional hard fork adjusting the benchmark rate during this interim period is likely.

This release also adds mechanisms for potential situations in which the endowment value reaches extreme values. In the case that the endowment consumes almost all of the tokens in the system (<1mAR left outside the endowment), all tokens will automatically re-denominate by 3 orders of magnitude. This allows the tokens to continue to be usefully subdivided, despite the deflation of its supply. In the event that the endowment runs too low (signalling that the core parameter of a Kryder+ rate expectation of 0.5% is too optimistic), the network would halve the expected Kryder+ rate. This halving would repeat until a Kryder+ value is found that leads to the anticipated long-term deflation, while storage for old data continues to be honoured.

This release also includes a delay in the release of block rewards for miners by approximately thirty days (30 * 24 * 30 blocks). This mechanism is designed to incentivize miners to be aligned with the network for atleast the medium-term. The delay will start at the moment that the hard fork activates.

Complete weave replicas are required for maximizing the mining performance. Nevertheless, miners with small datasets can pool together by using a shared mining address.

If you have any issues upgrading or would like to know more about the release, feel free to reach out to us in the Arweave Miners Discord (https://discord.gg/GHB4fxVv8B) or email us at team@arweave.org.

Release 2.5.3

20 Jul 10:39
Compare
Choose a tag to compare

This release adds support for byte-range content policies, including compatibility with the NSFW list produced by the shepherd program. You can load that list (or any others) by adding the following to your miner's start command:

transaction_blacklist_url http://shepherd-v.com/list.txt.

For more details, see the note in the mining guide.

Upgrade instructions

N.2.5.3 comes with the prebuilt binaries for the Linux and Darwin x86_64 platforms. arweave-2.5.3.linux-x86_64.tar.gz works at least on Ubuntu 20 and CentOS 8. To run on Ubuntu 18, grab arweave-2.5.3.ub18-x86_64.tar.gz. CentOS 7 is not supported.

Download the corresponding archive and unpack it:

tar -xzf arweave-2.5.3.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 . See the mining guide for more details.

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

If you want to run the miner from the existing Git folder, upgrade Erlang to version 23 or 24 and execute the following command:

git fetch --all --tags && git checkout -f N.2.5.3

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

Support

For more details on how to run a mining 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 Arweave Miners Discord (https://discord.gg/GHB4fxVv8B) or email us at team@arweave.org.

Release 2.5.2

04 May 13:44
Compare
Choose a tag to compare

The release introduces various improvements aiming to improve peering, block propagation, and data synchronization. Also, a bug is fixed that would reduce the node's mining performance.

  • Blocks and transactions are now served, gossiped, and fetched in the binary format (between the upgraded nodes). It reduces ~30% of the communicated traffic and speeds up processing;
  • chunks are also served in the new binary format;
  • the node sends compact block announcements to inform upgraded peers about the new blocks. The protocol allows the recipient to notify the sender of the missing transactions early and receive them along with the block header; also, the recipient may ask the sender to not include the recall chunk and fetch it themselves;
  • a block_gossip_peer configuration parameter is added to give miners the ability to specify priority block recipients manually;
  • blocks and transactions are propagated to the peers from the unique subnetworks first;
  • added GET /hash_list/[from]/[to]. The endpoint serves a JSON list of Base64Url encoded hashes of the blocks between the given heights (inclusive), sorted from latest to earliest;
  • processing chunks is made more efficient.

API changes

  • New endpoints: GET /hash_list/[from]/[to], POST /block2, POST /tx2, GET /tx2/[id], GET /block2/hash/[hash], GET /block2/height/[height], GET /chunk2/[offset], GET /block_index2, GET /recent_hash_list_diff.

Upgrade instructions

N.2.5.2 comes with the prebuilt binaries for the Linux and Darwin x86_64 platforms. arweave-2.5.2.linux-x86_64.tar.gz works at least on Ubuntu 20 and CentOS 8. To run on Ubuntu 18, grab arweave-2.5.2.ub18-x86_64.tar.gz. CentOS 7 is not supported.

Download the corresponding archive and unpack it:

tar -xzf arweave-2.5.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 . See the mining guide for more details.

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

If you want to run the miner from the existing Git folder, upgrade Erlang to version 23 or 24 and execute the following command:

git fetch --all --tags && git checkout -f N.2.5.2

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

Support

For more details on how to run a mining 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 Arweave Miners Discord (https://discord.gg/GHB4fxVv8B) or email us at team@arweave.org.