Commit Graph

640 Commits

Author SHA1 Message Date
Roman Zeyde
ba1762d240
Skip already indexed blocks during bulk indexing 2018-07-19 22:02:41 +03:00
Roman Zeyde
1a9e3a0e56
Skip bad magic values 2018-07-19 20:51:03 +03:00
Roman Zeyde
16ee6f4dd1
Log more information when RPC requests' UTF8 parsing fails
Also don't panic in case of RPC errors
2018-07-17 21:35:23 +03:00
Roman Zeyde
d422dc09cb
Verify JSONRPC responses correspond to correct requests 2018-07-17 11:11:04 +03:00
Roman Zeyde
d0bb321da1
Refactor mempool visualization tool 2018-07-17 10:11:28 +03:00
Roman Zeyde
3d09a9f3a0
Fix missing mempool entry 'fees' section
It was added to bitcoind at 7de1de7da4
and does not appear at 0.16.x releases.
2018-07-17 01:29:03 +03:00
Roman Zeyde
1b4adfdefd
Log more information in case of invalid hash 2018-07-16 14:44:45 +03:00
Roman Zeyde
2a3678e392
Merge branch 'regtest_mode' 2018-07-16 14:22:12 +03:00
Roman Zeyde
5c350c1f57
Skip transaction retrieval if no mempool entries are found 2018-07-16 14:06:42 +03:00
Roman Zeyde
57eb81e15d
Retry in case of mempool update failure
If there is an inconsistency between mempool entries and available
transactions, issue a warning and retry on the next poll.
2018-07-16 13:14:26 +03:00
Roman Zeyde
755967ac12
Allow caching for Travis builds 2018-07-16 12:57:50 +03:00
Roman Zeyde
d14746a36b
Remove sstable ingestion support
Currently, it's easier to use regular batch writes (without auto
compactions) during bulk indexing.
2018-07-16 12:03:02 +03:00
Roman Zeyde
c7948e9972
Don't pass serde_json::Value by mutable reference 2018-07-16 11:48:09 +03:00
Roman Zeyde
96d06eaeeb
Show unexpected JSON response in case of error 2018-07-16 11:03:40 +03:00
Roman Zeyde
de02d8b987
Add log statement for blk*.dat globbing 2018-07-16 10:22:04 +03:00
Roman Zeyde
4f8d83f2d0
Allow calling setrlimit() on 32-bit systems 2018-07-16 09:54:12 +03:00
Roman Zeyde
f40357e8cc
Use --network flag to customize network type
(instead of a non-flag commandline argument)
2018-07-16 09:30:51 +03:00
Roman Zeyde
d743e09a4c
Simplify DB path construction 2018-07-16 09:28:33 +03:00
Roman Zeyde
774d75bd97
Use match statement for daemon_dir construction 2018-07-16 09:18:48 +03:00
Lawrence Nahum
a85b6ba0c8
add support for regtest 2018-07-15 23:10:29 +02:00
Roman Zeyde
86e5cbda2e
Don't run cargo with --verbose on Travis 2018-07-16 00:00:03 +03:00
Roman Zeyde
de15dbd392
Fix formatting 2018-07-15 23:53:19 +03:00
Roman Zeyde
2d74d6d4f0
Rename a few Config members following #19
rpc_addr -> electrum_rpc_addr
daemon_rpc_url -> daemon_rpc_addr
2018-07-15 22:39:19 +03:00
Lawrence Nahum
408372cba4
make listen port and bitcoin rpc configurable 2018-07-15 19:08:15 +02:00
Roman Zeyde
ea65239141
Trace received Electrum RPC requests 2018-07-15 14:49:51 +03:00
Roman Zeyde
5507ee1a8b
Simplify main loop using Option<RPC> 2018-07-15 14:05:17 +03:00
Roman Zeyde
d1f5c61def
Use correct txids for getting mempool transactions
If block is found after "getmempoolentry()" and before "gettransactions()",
there will be more transactions at `txs` than in `entries` - causing a panic.
2018-07-15 09:28:50 +03:00
Roman Zeyde
ea24d6a01f
Add release notes 2018-07-15 09:14:45 +03:00
Roman Zeyde
ab4747ce7e
Add cmake to installation instructions 2018-07-15 07:49:23 +03:00
Roman Zeyde
849c83ed64
Bump version 2018-07-14 18:04:27 +03:00
Roman Zeyde
00de0c028c
Log daemon's network info
(including its version string)
2018-07-14 17:13:34 +03:00
Roman Zeyde
253e244a86
Fix cargo fmt for Travis
Stable Rust doesn't support `cargo fmt --check` (yet).
2018-07-14 13:02:28 +03:00
Roman Zeyde
197e5792f8
Improve error message for daemon disconnection 2018-07-14 12:42:21 +03:00
Roman Zeyde
ac9e300226
Run 'cargo fmt --check' on Travis 2018-07-14 10:14:35 +03:00
Roman Zeyde
2852020c58
Fix leftovers at examples/load.rs 2018-07-13 22:24:14 +03:00
Roman Zeyde
daee3fbe4b
Replace "Vec::new()" by shorter "vec![]" 2018-07-13 21:30:30 +03:00
Roman Zeyde
1a9b977dad
Update TODOs
- implemented Daemon::gettransactions() API
- implemented multithreaded indexing workers
- SSTable injection requires non-overlapping ranges (= pre-sorting = full compaction)
- HTTP parsing can be improved
2018-07-13 21:12:26 +03:00
Roman Zeyde
48cd929a99
Remove StoreOptions and enable manual compactions explicitly 2018-07-13 14:23:10 +03:00
Roman Zeyde
9a89e6a2d8
Update README with latest performance metrics 2018-07-12 23:26:37 +03:00
Roman Zeyde
03790d9977
Add logging for bulk indexing 2018-07-12 21:30:33 +03:00
Roman Zeyde
4d322d4819
Substract signed integers 2018-07-12 19:38:39 +03:00
Roman Zeyde
1e258f4b3d
Allow vectorized fetch for mempool transactions 2018-07-12 19:38:16 +03:00
Roman Zeyde
cdacf451a9
Log delta of mempool transactions 2018-07-12 18:58:38 +03:00
Roman Zeyde
e09ac477bb
Skip bulk indexing if it's already over 2018-07-12 16:52:25 +03:00
Roman Zeyde
b9a4cb4318
Move bulk reader and indexer to separate module 2018-07-12 16:47:39 +03:00
Roman Zeyde
4c7413db9d
Increase open files limit explicitly
Otherwise, full compaction may fail.
2018-07-12 14:44:10 +03:00
Roman Zeyde
c7b8f57228
Keep default parallism settings 2018-07-12 12:47:05 +03:00
Roman Zeyde
125bfe0e15
Log latest indexed block 2018-07-12 10:47:25 +03:00
Roman Zeyde
62a78f18ad
Put "finish" marker after compaction is over 2018-07-12 10:46:33 +03:00
Roman Zeyde
f92dfc808d
Log indexed blk*.dat file path 2018-07-12 09:25:17 +03:00