Commit Graph

89 Commits (f5a8bed629892516c745019c94a565560a818a79)

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