- Limit query results, to prevent RPC server to get stuck (see
--txid-limit
flag)
- Support Rust 2018 edition (1.31)
- Upgrade to Electrum protocol 1.4 (from 1.2)
- Let server banner be configurable via command-line flag
- Improve query.get_merkle_proof() performance
- Update to rust-bitcoin 0.15.1
- Use bounded LRU cache for transaction retrieval
- Support 'server.ping' and partially 'blockchain.block.header' Electrum RPC
- Don't run full compaction after initial import is over (when using JSONRPC)
- Optimize for low-memory systems by using different RocksDB settings
- Rename
--skip_bulk_import
flag to--jsonrpc-import
- Optimize block headers processing during startup
- Handle TCP disconnections during long RPCs
- Use # of CPUs for bulk indexing threads
- Update rust-bitcoin to 0.14
- Optimize block headers processing during startup
- Reconnect to bitcoind only on transient errors
- Poll mempool after transaction broadcasting
- Optimize for low-memory systems
- Improve compaction performance
- Handle disconnections from bitcoind by retrying
- Make
blk*.dat
ingestion more robust - Support regtest network
- Support more Electrum RPC methods
- Export more Prometheus metrics (CPU, RAM, file descriptors)
- Add
scripts/run.sh
for building and runningelectrs
- Add some Python tools (as API usage examples)
- Change default Prometheus monitoring ports
- Allow specifying custom bitcoind data directory
- Allow specifying JSONRPC cookie from commandline
- Improve initial bulk indexing performance
- Support 32-bit systems
- Announcement: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2018-July/016190.html
- Published to https://crates.io/electrs and https://docs.rs/electrs