Commit Graph

306 Commits

Author SHA1 Message Date
Braydon Fuller
cede31d86f
indexer: cleanup and check pruned and index options 2019-05-15 12:11:37 -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
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
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
8bff122253
indexer: use chain and blocks for indexer, remove chain client 2019-05-15 12:02:47 -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
kilpatty
d5514d9dcb
node-http: add check for height being below tip
This commit simply adds an enforce line to check that the height being
requested to reset to is below the chain tip. This way we return a bad
request error rather than a internal server error.
2019-04-30 21:43:48 -05:00
Braydon Fuller
89d3253f29
blockstore: add ensure method to create directories 2019-04-08 13:18:54 -07:00
Braydon Fuller
0b0dd58a91
node: add blockstore to full node 2019-04-08 13:18:54 -07:00
Braydon Fuller
7ceb8874ee
Merge pull request #736 from braydonf/coin-cache
Remove coin cache
2019-04-02 15:24:07 -07:00
Javed Khan
6a01409b79
Merge pull request #739 from pinheadmz/scan
node-http: require Bloom filter is loaded for `rescan` socket call
2019-04-02 18:55:53 +05:30
Mark Tyneway
26a2000b01
node rpc: update validateaddress
updates validateaddress to match the changes
in bitcoind https://github.com/bitcoin/bitcoin/pull/10583.
removes the fields ismine and iswatchonly, those
are things that a wallet would know, not a node.
adds segwit related fields, witness_version and
witness_program. test changes to the node rpc method
validateaddress with p2pkh, p2sh, p2wpkh and p2wsh addresses
2019-03-26 16:03:23 -07:00
Matthew Zipkin
11d70432b3
node-http: require filter to scan 2019-03-26 10:17:10 -07:00
Braydon Fuller
a9ebeb3871
blockchain: remove coin cache 2019-03-21 15:15:51 -07:00
Richard Bondi
9aebfb74e0
rpc help list commands 2019-03-02 11:38:38 -06:00
Matthew Zipkin
f0806a54dd
rpc: remove handleError 2019-02-07 14:04:37 -08:00
Matthew Zipkin
da2084f503
rpc: identify node/wallet in log 2019-02-07 14:04:37 -08:00
Matthew Zipkin
d9044960ad
http: identify node/wallet in log 2019-02-07 14:04:37 -08:00
Christopher Jeffrey
e0863d4a91
deps: upgrade to bcrypto 2.0. upgrade other deps. 2018-09-29 14:38:53 -07:00
Javed Khan
beb7f8fb1d
node: move closed message to handleClose 2018-09-17 23:54:36 +05:30
Javed Khan
b18a8a3f13
bin: handle close when interrupted 2018-09-17 23:54:34 +05:30
Javed Khan
175ff7906d
http: use Address instead of string 2018-08-25 00:22:12 +05:30
Javed Khan
7f4494e278
multi: pass new Node option file to wallet plugin
`file` is similar to `config`, but it propogates to the wallet plugin
and loads the wallet config file only if set to true.

This is useful to disable config files for both node and wallet when
running a full node, for example in a test environment.
2018-08-13 17:36:21 +05:30
Christopher Jeffrey
a0ac953079
bcoin: update logger usage. 2018-08-10 16:24:10 -07:00
Christopher Jeffrey
a45e683eb2
bcoin: switch to bsert for everything. 2018-08-10 16:23:46 -07:00
Christopher Jeffrey
b92839c82a
bcoin: use buffer-map. see #533. 2018-08-10 16:23:46 -07:00
Christopher Jeffrey
41af7acfd6
net: remove bip150/bip151 support. 2018-07-12 10:17:13 -07:00
Christopher Jeffrey
c7d844ea37
node/wallet: add cors option. see #397. 2018-03-29 22:22:47 -07:00
Orfeas Stefanos Thyfronitis Litos
2b0e5f5935
Document sendTX() return value 2018-03-29 22:12:01 -07:00
Orfeas Stefanos Thyfronitis Litos
8f3de71719
Handle broadcast() errors in sendTX()
Replace this.pool.broadcast(tx) with this.broadcast(tx) in case of a
selfish node because the latter handles broadcast errors, whereas the
former does not.
2018-03-29 22:11:50 -07:00
Christopher Jeffrey
bd76939f4c
pkg: update bcrypto. 2018-03-29 21:56:53 -07:00
Christopher Jeffrey
d5a2609f75
peer: add reverse dns lookup. 2018-03-29 21:56:52 -07:00
Christopher Jeffrey
99a7eb5fa5
wallet/bcoin: refactor exposure. 2018-03-29 21:56:51 -07:00
Christopher Jeffrey
417b37b0c3
db: remove backend option. 2018-03-29 21:56:51 -07:00
Christopher Jeffrey
cb978df380
db: drop old migrations. avoid using encoding. 2018-03-29 21:56:51 -07:00
Christopher Jeffrey
f99064750a
net: move netaddress. 2018-03-29 21:56:50 -07:00
Christopher Jeffrey
3c82ac0486
bcoin: use util.revHex again. 2018-03-29 21:56:49 -07:00
Christopher Jeffrey
163e89fc29
bcoin: lint. 2018-03-29 21:56:49 -07:00
Christopher Jeffrey
93fe6669bf
node: classify. 2018-03-29 21:56:49 -07:00
Christopher Jeffrey
405feef9ce
bcoin: clean up requires. 2018-03-29 21:56:48 -07:00
Christopher Jeffrey
21ab415769
refactor: switch to bio module. 2018-03-29 21:56:48 -07:00
Christopher Jeffrey
bf4f5e3bac
bcoin: bstring requires. 2018-03-29 21:56:48 -07:00
Christopher Jeffrey
ca08d6d97e
bcoin: rename bufio and bstring. 2018-03-29 21:56:48 -07:00
Christopher Jeffrey
4535cd1827
utils: start using bmutex. 2018-03-29 21:56:47 -07:00
Christopher Jeffrey
f9eba3f5a6
crypto: start using hash.digest(). 2018-03-29 21:56:47 -07:00
Christopher Jeffrey
8332b93721
utils: remove dependence on co. 2018-03-29 21:56:47 -07:00
Christopher Jeffrey
424370bc1f
utils: stop using asyncobject. 2018-03-29 21:56:47 -07:00