Blocks Archive

Regular backups of the blocks data directory so you can fully sync with the BOS network.

Title Download Size MD5 Checksum
blocks_bos_2019-06-18-19-00.tar.gz Wasabi S3 5.39 GiB edb9b478a970fc2d1b03dd152e8b025e
blocks_bos_2019-06-18-07-00.tar.gz Wasabi S3 5.37 GiB c0e9fbf555101114b1ab7956f92d0c3c
blocks_bos_2019-06-17-19-00.tar.gz Wasabi S3 5.36 GiB ff043cd3ad5e324aea500cba9b1ce2fb
blocks_bos_2019-06-17-07-00.tar.gz Wasabi S3 5.34 GiB a517d1af5e8f1a8c38b5e003125340e1
blocks_bos_2019-06-16-19-00.tar.gz Wasabi S3 5.33 GiB e0657a535bf8496e7a722d844c45d5c1
blocks_bos_2019-06-16-07-00.tar.gz Wasabi S3 5.32 GiB d149f1249d2384aaa1afcf5850593eec
blocks_bos_2019-06-15-19-00.tar.gz Wasabi S3 5.3 GiB 3fea0a4b56fb71c27df2d91dfc901813
blocks_bos_2019-06-15-07-00.tar.gz Wasabi S3 5.29 GiB e1ccbeab96864cd0c9bc9c617ccdcf04
blocks_bos_2019-06-14-19-00.tar.gz Wasabi S3 5.28 GiB 32dee063c5cc42f964397a380b5e41b6
blocks_bos_2019-06-14-07-00.tar.gz Wasabi S3 5.26 GiB a7af3413d4c62a632c2da25979946193
blocks_bos_2019-06-13-19-00.tar.gz Wasabi S3 5.25 GiB 9de9d098a5abbd1438cfabde029141b0
blocks_bos_2019-06-13-07-00.tar.gz Wasabi S3 5.23 GiB 361857e91514c34e983b9f0a2266517d
blocks_bos_2019-06-12-19-00.tar.gz Wasabi S3 5.22 GiB 3ecca3ad6e3acefb023da6ee0c3ab7dc
blocks_bos_2019-06-12-07-00.tar.gz Wasabi S3 5.21 GiB cf1449f9fabe3210236322d718850e64
blocks_bos_2019-06-11-19-00.tar.gz Wasabi S3 5.19 GiB 100f3d4f67565cd7ce10737c6dfecd77
blocks_bos_2019-06-11-07-00.tar.gz Wasabi S3 5.18 GiB ebeaa7e29d6019bc7aed671b7931184f

The blocks archives are taken daily from our bank of API nodes. These backups can be used across all node configurations and have been tested with Ubuntu, Centos and Debian.

How To Use

Download the archive, uncompress it into your data directory and start up nodeos requesting a hard replay which deletes the state database. This will validate the blocks, rebuild your state and sync with the live chain.

You can use the one-liner in the example to always download the latest backup. We also have a Blocks API which orders the archives in chronological order, newest first.

# Move to your local bos directory, removing the existing data directories (if relevant)
cd /opt/bos
rm -rf blocks state

# Download the latest blocks backup
wget $(wget --quiet "https://eosnode.tools/api/blocks?network=bos&limit=1" -O- | jq -r '.data[0].s3') -O blocks_backup.tar.gz

# Uncompress to ./blocks
tar xvzf blocks_backup.tar.gz

# Start the chain and replay from the blocks backup
./start.sh --hard-replay

# Tail the logs to watch the sync process
tail -f log.txt
2018-08-13T09:42:10.168 initializing chain plugin
2018-08-13T09:42:10.170 Hard replay requested: deleting state database
2018-08-13T09:42:10.171 Recovering Block Log...
2018-08-13T09:42:10.171 Moved existing blocks directory to backup location: '/mnt/blocks-2018-08-13T09:42:10.171'
2018-08-13T09:42:10.172 Reconstructing '/mnt/blocks/blocks.log' from backed up block log
2018-08-13T09:44:33.490 Existing block log was undamaged. Recovered all irreversible blocks up to block number 10887835.
2018-08-13T09:44:33.493 Reversible blocks database was not corrupted. Copying from backup to blocks directory.
2018-08-13T09:44:38.833 Log is nonempty
2018-08-13T09:44:38.833 Index is empty
2018-08-13T09:44:38.833 Reconstructing Block Log Index...
...
2018-08-13T09:47:12.722 No head block in fork db, perhaps we need to replay
2018-08-13T09:47:12.722 Initializing new blockchain with genesis state
2018-08-13T09:47:12.755 existing block log, attempting to replay 10887835 blocks
    140700 of 10887835

How Long To Replay?

Once you kick off the hard-replay, the sync will take hours. Exactly how long is dependent on your system configuration. The replay process is mostly CPU bound, as nodeos is single threaded the important factor is your CPU clock speed, not the overall number of cores.

When you replay, you should follow the nodeos log. The code snippet on the left shows you an example of the log messages that you should see when you execute the hard-replay. After the initial validation you get a progress output to give you a better indication of the time it will take.