Braydon Fuller
7e49be2a07
Merge pull request #758 from braydonf/indexer
...
Indexer fixes and improvements
2019-05-16 11:20:05 -07:00
Braydon Fuller
6c497d46f1
changelog: update and fix chain changes
2019-05-16 10:28:09 -07:00
Braydon Fuller
7e9d00a665
node: pass options from getTXByAddress to getMetaByAddress
2019-05-16 10:26:54 -07:00
Braydon Fuller
34e8f22b9b
indexer: update and fix documentation
2019-05-16 10:25:58 -07:00
Braydon Fuller
662a68cf10
blockchain: cleanup deprecated methods
...
Deprecation details are in CHANGELOG.md
2019-05-15 12:11:37 -07:00
Braydon Fuller
372b9f9803
changelog: update with new indexer fields for info endpoint
2019-05-15 12:11:37 -07:00
Braydon Fuller
ce16bc9239
node: simplify index-prefix option
2019-05-15 12:11:37 -07:00
Braydon Fuller
a6fd1bec1a
changelog: update with latest migration
2019-05-15 12:11:37 -07:00
Braydon Fuller
677b45f3d5
migrate: upgrade from chaindb 4 to 6
2019-05-15 12:11:37 -07:00
Javed Khan
5111af0615
migrate: update latest migration
2019-05-15 12:11:37 -07:00
Braydon Fuller
ed06c2184d
indexer: check that blocks are connected
...
There was a rare case that a block could be incorrectly added to
the indexer if the indexer was disabled during a reorg to a height
that matched the height that was expected, and the `sync` method
for the indexer wasn't called that would detect the reorg.
2019-05-15 12:11:37 -07:00
Braydon Fuller
cede31d86f
indexer: cleanup and check pruned and index options
2019-05-15 12:11:37 -07:00
Braydon Fuller
5d18f9ba2e
indexer: index the genesis block
2019-05-15 12:11:37 -07:00
Braydon Fuller
efb2551555
indexer: fix reset and reorg handling
2019-05-15 12:11:37 -07:00
Braydon Fuller
865f7401ba
test: add test for retroactively enabling indexer
2019-05-15 12:11:37 -07:00
Braydon Fuller
b4be8574e5
test: improve addrindex tests
...
- Vectors for p2wsh and p2sh.
- Edge case for witness program.
- Improve determinism by not comparing mtime.
- Various edge and error cases.
2019-05-15 12:11:32 -07:00
Braydon Fuller
69e9844f82
test: cleanup and add txindex tests
2019-05-15 12:11:05 -07:00
Braydon Fuller
fae647b9e9
indexer: simplify block meta and remove records
2019-05-15 12:11:05 -07:00
Nodar Chkuaselidze
f30276bc27
test: add mempool indexing tests
2019-05-15 12:11:05 -07:00
Nodar Chkuaselidze
80aaa148e4
test: add mempool index persistence test
2019-05-15 12:11:05 -07:00
Braydon Fuller
b37ac59973
test: add utility to wait for values
2019-05-15 12:11:05 -07:00
Braydon Fuller
bb797602e6
node: add http indexer info
2019-05-15 12:11:05 -07:00
Braydon Fuller
bd26dbf32d
mempool: update for addrindex
2019-05-15 12:11:05 -07:00
Braydon Fuller
4c8f11ed34
node: update http for addrindex
2019-05-15 12:11:05 -07:00
Braydon Fuller
06ef0e3615
indexer: simplify addrindex query
2019-05-15 12:11:05 -07:00
Braydon Fuller
ebc40a58d0
indexer: trim disk usage for tx and addr indexes
2019-05-15 12:11:01 -07:00
Braydon Fuller
93c6ff845e
indexer: fix, simplify and rewrite indexer base
...
- Write indexer state and index atomically.
- Simplify chain state with current height.
- Roll forward to best height.
- Synchronize the index with the chain with common method `sync` for
the events 'connect', 'disconnect' and 'reset'. This will prevent
any of the events from conflicting with each other.
- Fix the chain rollback and reset.
- Make sure blocks are connected in the correct order.
- Improve logging to log similar to chain.
2019-05-15 12:02:50 -07:00
Javed Khan
e2a6a92ebc
addrindexer: index by address prefix
2019-05-15 12:02:50 -07:00
Braydon Fuller
aa3f02d585
test: initial http tests for indexer
2019-05-15 12:02:49 -07:00
Javed Khan
9f86dbca28
chaindb: bump to v6
2019-05-15 12:02:49 -07:00
Javed Khan
7342952ec4
migrate: update chaindb5to6 migration
2019-05-15 12:02:49 -07:00
Braydon Fuller
32904c7940
changelog: fix memory and cpu exhaustion for addrindex
2019-05-15 12:02:48 -07:00
Braydon Fuller
7dc55c9c3c
indexer: remove address coin index
2019-05-15 12:02:48 -07:00
Braydon Fuller
05d55efb22
indexer: fix memory and cpu exhaustion for addrindex
2019-05-15 12:02:48 -07:00
Braydon Fuller
b9e8c7b8de
changelog: merge blockstore and indexer changes
2019-05-15 12:02:47 -07:00
Braydon Fuller
8bff122253
indexer: use chain and blocks for indexer, remove chain client
2019-05-15 12:02:47 -07:00
Braydon Fuller
f9aab08c46
indexer: add block position to tx
2019-05-15 12:02:47 -07:00
Javed Khan
9f89c79bd7
indexer: work with blockstore
2019-05-15 12:02:47 -07:00
Javed Khan
51ac4a720b
changelog: add indexer to changelog
2019-05-15 12:02:46 -07:00
Javed Khan
33de39ca0a
migrate: remove txindex and addrindex from chaindb
2019-05-15 12:02:46 -07:00
Javed Khan
05794f5cb3
indexer: add module indexer
...
module indexer introduces a extensible architecture for indexing the
chain. It provides a base class which handles syncing with the chain,
handling re-orgs, interruptions, dynamic toggling, etc. TXIndexer
and AddrIndexer are provided for indexing transactions and addresses,
using the same flags as before i.e --index-tx and --index-address.
Indexes are stored in a different database and can be maintained
independently of the chain.
2019-05-15 12:02:41 -07:00
Braydon Fuller
81b840a634
Merge pull request #769 from braydonf/wallet-tx-conflict
...
wallet: handle multiple conflicting inputs
2019-05-14 22:56:29 -07:00
Braydon Fuller
eba7bbeddc
wallet: handle multiple conflicting inputs
2019-05-14 14:29:41 -07:00
Orfeas Stefanos Thyfronitis Litos
07f7338503
Replace 285 with 293 in blockstore README ( #767 )
...
* Replace 285 with 293 in blockstore README
* Mention block size after boundaries
2019-05-12 17:55:48 +05:30
Braydon Fuller
af19d802f5
Merge pull request #765 from tuxcanfly/fix-fee-overflow-err
...
chain: add fee overflow test; rename error
2019-05-06 16:29:41 -07:00
Javed Khan
d53fa0a1c5
chain: extend try..finally; restore consts to copy
2019-05-07 03:59:15 +05:30
Javed Khan
49143b2c16
chain: reset consensus params on assert fail
2019-05-07 03:48:31 +05:30
Javed Khan
4bc0bb2366
chain: add fee overflow test; rename error
2019-05-07 03:27:42 +05:30
Javed Khan
812dc1a6f3
Merge pull request #764 from braydonf/checkpoint
...
blockchain: do not accept forked chain older than last checkpoint
2019-05-07 00:23:19 +05:30
Braydon Fuller
46f83fe5ae
Merge pull request #763 from pinheadmz/docslint
...
linter: cover docs/examples
2019-05-03 09:33:14 -07:00