Commit Graph

58 Commits

Author SHA1 Message Date
Martin Boehm
4db0895899 Check DB version on startup 2018-07-27 12:57:48 +02:00
Martin Boehm
d4cd2ad607 Return state information for index request on internal http server 2018-06-12 22:57:46 +02:00
Martin Boehm
4f5461da4f Report metrics of all db columns 2018-06-08 14:05:41 +02:00
Martin Boehm
fd7828a877 Compute column stats periodically 2018-06-08 13:19:57 +02:00
Martin Boehm
2535e4b6b7 Report metrics of txcache 2018-06-04 18:09:36 +02:00
Martin Boehm
4343c888a0 Update txcache stats on put/delete db operations 2018-06-04 17:11:10 +02:00
Martin Boehm
4f42d2f1d6 Add method to compute stats (rowcount, size) of all db columns 2018-06-01 16:01:58 +02:00
Martin Boehm
9147781772 Use single instance instead of global InternalState object 2018-05-29 11:37:35 +02:00
Martin Boehm
c03b3d8a1a Store coin in internal state and verify that rpc coin matches db coin 2018-05-23 10:58:07 +02:00
Martin Boehm
291e99ba5f Add internal state of the application 2018-05-22 12:56:51 +02:00
Martin Boehm
83edc33b3f Fix processing of transactions in ConnectBlock 2018-05-03 01:03:20 +02:00
Martin Boehm
22af986121 Implement DisconnectBlocks in index v2 - WIP 2018-04-26 19:50:22 +02:00
Martin Boehm
ed027a68c9 Implement DisconnectBlocks in index v2 - WIP 2018-04-24 12:00:24 +02:00
Martin Boehm
ce485099a7 Implement DisconnectBlocks in index v2 - WIP 2018-04-23 17:11:08 +02:00
Martin Boehm
f78b050234 Fix indexing of coinbase transactions 2018-04-20 23:53:17 +02:00
Martin Boehm
febcba5fbe Use new db column blockaddresses to support UTXO chain block disconnect 2018-04-20 13:56:55 +02:00
Martin Boehm
c657381d7e Change the way UTXO addresses are indexed - WIP 2018-04-19 14:28:05 +02:00
Martin Boehm
2ee2177970 Change the way UTXO addresses are indexed - WIP 2018-04-18 23:42:11 +02:00
Martin Boehm
296eee828f Change the way UTXO addresses are indexed - WIP
Columns before:
outputs: saddress+block height -> outpoints
inputs: txid+vout -> spending txid+vout

Columns after change:
addresses: address+block height -> input or output outpoints
unspenttxs: txid -> addresses+indexes
2018-04-17 23:50:01 +02:00
Martin Boehm
a75376706e Move packing/unpacking of Txid and Block Hash to coin specific code 2018-04-08 11:24:29 +02:00
Martin Boehm
39a31d4544 Handle transactions with missing ethereum To address 2018-03-28 13:23:43 +02:00
Martin Boehm
44fdb5528b Support indexing of non UTXO chains 2018-03-23 13:15:35 +01:00
Martin Boehm
dda80bd074 Refactor names in interface BlockChainParser, added method IsUTXOChain 2018-03-23 11:03:41 +01:00
Jakub Matys
a9effbe835 Added ZCashBlockParser 2018-03-20 17:28:03 +01:00
Jakub Matys
fbfb33cb5d Output index uses abstract identifier instead of outputScript 2018-03-20 16:01:36 +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
d7229f8db0 added prometheus metrics 2018-03-13 11:44:50 +01:00
Martin Boehm
4c51d7cb0a Add rocksdb reopen db method
Mainly used for debugging purposes
2018-03-12 16:28:52 +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
d1c4c66c5f Implement TxCache stored in RocksDB 2018-03-06 12:36:24 +01:00
Martin Boehm
58205ed84a Store transactions in RocksDB 2018-03-05 18:14:41 +01:00
Martin Boehm
34400f5b2b Add context to errors returned by bitcoinrpc 2018-03-01 11:06:10 +01:00
Martin Boehm
da28595321 Fix incorrect memory handling 2018-02-28 12:24:29 +01:00
Martin Boehm
9dfef815b3 Tune RocksDB 2018-02-27 13:10:18 +01:00
Martin Boehm
386b4f1db8 Tune RocksDB 2018-02-26 18:42:55 +01:00
Martin Boehm
2375837d0a Tune RocksDB 2018-02-26 13:11:23 +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
af0e85ce43 Tune rocksdb options 2018-02-19 16:17:21 +01:00
Martin Boehm
d96af8e648 Change return values of index.GetSpentOutput method 2018-02-08 13:11:10 +01:00
Martin Boehm
43dec549d5 Implement index.GetSpentOutput method 2018-02-08 13:00:22 +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
ee663944e2 Refresh iterator in DisconnectBlocks to avoid huge snapshot 2018-02-05 18:35:05 +01:00
Martin Boehm
d6e9b5caa4 Use special RocksDB options for outputs 2018-02-05 17:12:32 +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
1950f125e5 Ignore too large (> 512 bytes) output scripts 2018-02-04 23:17:54 +01:00
Martin Boehm
7c71876c12 Lookup input transactions in mempool 2018-02-03 19:14:27 +01:00
Martin Boehm
a403b8d0fe Rename package bitcoin to bchain 2018-01-31 15:23:17 +01:00