1
0
Fork 0
mirror of https://github.com/romanz/electrs.git synced 2025-02-25 07:17:41 +01:00
electrs/TODO.txt
2018-05-24 20:45:57 +03:00

22 lines
1 KiB
Text

= 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
Use futures for electrum RPC serving and cancellation
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