Commit Graph

89 Commits

Author SHA1 Message Date
Martin Boehm
bc6f8a9e5d Retry connection to blockchain rpc on startup
After restart, the blockchain daemons are not immediately ready
to serve requests. Blockbook must wait for them.
2018-05-17 11:52:16 +02:00
Martin Boehm
7cb8c8d3f0 Add option to disable txcache 2018-05-14 15:49:08 +02:00
Martin Boehm
7b79ac97e8 Fix usage message 2018-05-03 14:49:19 +02:00
Martin Boehm
b3b8512958 Sync using indexv2 2018-04-30 14:50:19 +02:00
Martin Boehm
0a55ca61f6 Sync using indexv2 - WIP 2018-04-29 00:17:30 +02:00
Jakub Matys
a37ccdaee0 fixed logging 2018-04-12 15:43:57 +02:00
Martin Boehm
394a773fc3 Merge branch 'master' into ethereum 2018-04-03 22:10:10 +02:00
Martin Boehm
7d6a9ae663 Force execution in tickAndDebounce after debounceTime 2018-04-03 22:09:46 +02:00
Martin Boehm
19d071a184 Remove bitcoin specific code from MQ push handler 2018-03-27 23:39:06 +02:00
Jakub Matys
fbfb33cb5d Output index uses abstract identifier instead of outputScript 2018-03-20 16:01:36 +01:00
Martin Boehm
9c94db13f6 Move rpc config to external json file, move zeromq to btc implementation 2018-03-15 12:34:29 +01:00
Martin Boehm
96bfdfd74e Use block data in disconnect blocks, remove disconnected txs from cache 2018-03-14 12:34:13 +01:00
Jakub Matys
96a60bf7fa Renamed metrics and added implicit label coin 2018-03-14 09:45:10 +01:00
Martin Boehm
b412b60c9c Move start of http interface before initial sync
This allows to collect metrics during initial sync
2018-03-13 16:10:38 +01:00
Jakub Matys
d7229f8db0 added prometheus metrics 2018-03-13 11:44:50 +01:00
Martin Boehm
fbc5248ef8 Handle HTTP status codes returned from blockchain rpc 2018-03-11 01:31:09 +01:00
Martin Boehm
e914cd4479 Enable HTTP interface to go profiling 2018-03-09 17:05:27 +01:00
Martin Boehm
9d0547f608 Use blockchain factory to create blockchain interface 2018-03-08 18:36:01 +01:00
Martin Boehm
f80ae32846 Abstract bitcoinrpc in preparation for alt coins 2018-03-08 12:59:37 +01:00
Martin Boehm
0783cac294 Detect type of the block chain and use correct chain params 2018-03-07 09:38:19 +01:00
Martin Boehm
98d91d4ce1 Synchronize mempool before starting server interfaces 2018-03-06 12:42:54 +01:00
Martin Boehm
d1c4c66c5f Implement TxCache stored in RocksDB 2018-03-06 12:36:24 +01:00
Martin Boehm
b3d1d449fd Fix minimum sync height 2018-03-01 20:20:50 +01:00
Martin Boehm
9bdb83deff Refactor sync code to own file 2018-03-01 18:37:01 +01:00
Martin Boehm
665a3d1230 Replace glog.Fatal by glog.Error to allow to run deferred functions 2018-03-01 11:22:37 +01:00
Martin Boehm
34400f5b2b Add context to errors returned by bitcoinrpc 2018-03-01 11:06:10 +01:00
Martin Boehm
39675d4eed Handle bitcoind rpc error in resyncIndex 2018-03-01 01:15:25 +01:00
Martin Boehm
b556d0354e Handle OS interrupt in resyncIndex 2018-03-01 00:59:25 +01:00
Martin Boehm
f8fbbcfe29 Connect blocks in parallel without getting block header - optimization 2018-03-01 00:32:40 +01:00
Martin Boehm
32d99e56eb Remove obsolete compact option 2018-02-26 16:44:25 +01:00
Martin Boehm
d1bf8a60dc Refactor of the explorerURL 2018-02-26 16:25:40 +01:00
Martin Boehm
16fc1b4797 Redirect blockchain explorer requests to external site 2018-02-26 16:21:58 +01:00
Martin Boehm
7a1ff7241f Tune RocksDB.
Remove bulk import - it consumes a lot of disk space.
Set no compression of data.
Reduce write buffer to .5GB from 2GB.
2018-02-24 16:25:55 +01:00
Martin Boehm
26c726c771 Notify socket.io subscribers about new block 2018-02-22 13:32:06 +01:00
Martin Boehm
0c456fe245 Notify socket.io subscribers about new block 2018-02-22 13:01:35 +01:00
Martin Boehm
11b31fb456 Update flags description 2018-02-07 22:56:17 +01:00
Martin Boehm
12876290e4 Enable SSL support for http and socket.io servers 2018-02-07 20:42:25 +01:00
Martin Boehm
8c9dfc3ef4 Implement Bitcore socket.io method getBlockHeader 2018-02-07 18:35:34 +01:00
Martin Boehm
b0f163e21c Support for socket.io interface, initial commit 2018-02-06 12:06:30 +01:00
Martin Boehm
ec87f4ed8d Use maximum size on disk trigger to invoke DB compaction 2018-02-06 09:43:54 +01:00
Martin Boehm
359d7ee1c4 Use constants instead of magic numbers 2018-02-06 09:12:50 +01:00
Martin Boehm
fdd9c9b99f Use bulk option only for initial load of DB 2018-02-05 17:47:20 +01:00
Martin Boehm
97cc2aca17 Use PrepareForBulkLoad option for connectBlocksParallel 2018-02-05 12:27:41 +01:00
Martin Boehm
e31095d03f Compact database during connectBlocksParallel 2018-02-05 10:31:22 +01:00
Martin Boehm
d4a35b9889 Synchronize blocks in parallel using algorithm without chunks 2018-02-05 00:28:15 +01:00
Martin Boehm
7c71876c12 Lookup input transactions in mempool 2018-02-03 19:14:27 +01:00
Martin Boehm
ac5aa2a234 Start sync loops only if -sync=true 2018-02-02 16:17:33 +01:00
Martin Boehm
cf15f0cf0c Move sync loop after initial resync 2018-02-01 22:36:57 +01:00
Martin Boehm
2605f2fc1d Implement REST interface to mempool transactions 2018-02-01 12:56:45 +01:00
Martin Boehm
1f36acc084 Reuses existing timer in tickAndDebounce 2018-02-01 12:26:12 +01:00