blockstream-electrs/TODO.txt
2018-05-25 10:30:20 +03:00

22 lines
996 B
Plaintext

= Electrum
Update height to -1 for txns with any unconfirmed input (https://electrumx.readthedocs.io/en/latest/protocol-basics.html#status)
Snapshot DB after successful indexing - and run queries on this snapshot
Handle multiple RPC client in parallel
Figure out graceful shutting down and error logging for RPC server
= Bitcoind
Handle bitcoind connection failures - instead of crashing
Use p2p protocol for querying blocks - similar to `bitcoincore-indexd`
Lookup confirmed transactions only at their blocks (using `blockhash` parameter of `getrawtransaction` RPC), so -txindex won't be needed
Add getrawtransactions() API (for RPC batching)
= Performance
Add timing/profiler helpers (for indexing/DB/RPC operations)
Measure first-time query latency
= Rust
Use Bytes instead of Vec[u8] when possible
Handle SIGINT gracefully (https://www.reddit.com/r/rust/comments/6swidb/how_to_properly_catch_sigint_in_a_threaded_program/)
Return errors instead of panics
Use generators instead of vectors