Electrum leveldb archival server foundry

Database download

If you are looking to run a node of electrum server it's much faster to import an existing dataset than to index the blockchain with leveldb yourself. Creating a new UTXO leveldb with a transaction history limit of 10k per address takes over a week in /dev/shm

You can use the archival server to quickly download a leveldb database, where the indexing work has already been done for you. A dataset with limit 100 is the default setting. A dataset with a history limit of 10k per address can pretty much be considered to be what used to be known as a "full" server in Electrum.

As of 23.07.2017 foundry dumps enforce BIP91 / BIP148. If you happen to need a dump prior to BIP91 enforcement please get in touch on IRC on #electrum

You can find the latest archives here:

Main site: http://foundry.electrum.org/leveldb-dump/ (rsync recommended see below)
Mirror in France: http://electrum-foundry.sky-ip.org/
JWU42 exclusive 1k limit dumps: http://www.jdubya.info/electrum/
JWU42 dumps for new server engine ElectrumX: https://jdubya.info/electrum/ElectrumX/
rsync mirror by the block by 1209k (100 limit, rocksdb): https://1209k.com/electrum-sync/

Get an overview of running servers and whether their root hash is correct:
server-peer-hashes.txt (Updated every 10 minutes)
Electrum server monitoring by 1209k

The foundry holds archives for pruning limits 100 and 10000 in separate archives. 1000 is currently not available (see above for an alternative source)
i.e. electrum-leveldb-utxo-100-2014-03-05.tar.bz2 means it's a database dump for the new utxo tree with limit 100, created on the 5th of March 2014.

Here's a short codelisting:

wget [URL from leveldb-dump dir]
wget http://foundry.electrum.org/leveldb-dump/md5sums.txt
md5sum [downloaded filename]
grep [md5sum result] md5sums.txt
# if it returns empty the sums don't match and your dl might be corrupted!
tar xfz [filename] -C 'yourpath'

# Then edit your electrum-server.conf to include:
backend = leveldb
path = /yourpath/[database-name]
pruning_limit = [Limit from above 100, 1000 or 10000]
You can also use rsync to sync to the latest database built with a proper root hash.
It currently changes around 5 GB per sync / day.
Compression is not currently supported, to preserve CPU on the foundry. rsync with compression will fail so don't set the flag
The sync is updated daily at ~0:40 - 01:00 CET. If you're rsyncing around that time you might need to sync a second time if you get errors about missing files when starting electrum server
Here's a codelisting for the 10k database (works with 100 too):
/usr/bin/rsync -avp --delete foundry.electrum.org::electrum-leveldb-utxo-10000/ /yourpath/[database-name]

Please note: The databases are built on leveldb 1.15 and file extensions are now the regular .ldb (starting 15th of Jul 2015) Please use a (lib)leveldb version of at least 1.9.0 (Jan 2013). For Debian Wheezy you can get a recent version from wheezy backports.
If you're running leveldb below version 1.13 you need to rename file extensions from .ldb to .sst!

#rename example for old versions of leveldb - see text above
cd /yourpath/[database-name]
rename 's/\.ldb$/\.sst/' addr/*.ldb
rename 's/\.ldb$/\.sst/' hist/*.ldb
rename 's/\.ldb$/\.sst/' undo/*.ldb
rename 's/\.ldb$/\.sst/' utxo/*.ldb
This foundry is run by Eagle[TM] / EagleTM. Feel free to contact me on irc.freenode.net #electrum
Donation address for the foundry: 1MZgzxdAbC2dsk7mivMLj5GPABZ2Wzzyjx
I'll share half the donations with the project.