Chris Kleeschulte
1f4c5e5e1f
Fixing recently sent items.
2017-10-04 08:34:52 -04:00
Chris Kleeschulte
f5ad8b89fb
Added next hash support in header service.
2017-09-25 21:21:05 -04:00
Chris Kleeschulte
6a18c1e46e
Fixed issue with reorg.
2017-09-11 15:41:27 -04:00
Chris Kleeschulte
82dd1dfe3f
Fixed reorging.
2017-09-08 14:18:55 -04:00
Chris Kleeschulte
02ff6c680c
Fixed sync resume (memory issues).
...
Input values on tx index are no longer lazy loaded.
2017-09-07 18:55:33 -04:00
Chris Kleeschulte
4bd3a06edc
Fixed block sync where blocks come in all at once.
2017-08-29 16:01:11 -04:00
Chris Kleeschulte
7a8bae64a4
wip
2017-08-28 20:05:00 -04:00
Chris Kleeschulte
69f239a58b
Added regtests for block, tx.
2017-08-25 17:34:20 -04:00
Chris Kleeschulte
f0360a78a0
Fixed a problem with address balances.
2017-08-25 10:36:00 -04:00
Chris Kleeschulte
678cb83d61
Fixed tests for altered getAddressHistory and getAddressSummary calls.
2017-08-24 09:50:29 -04:00
Chris Kleeschulte
fc6ee8e193
Fixed README for this release.
2017-08-21 11:28:45 -04:00
Chris Kleeschulte
1a5e25d4c1
Fixed a problem were I was indexing the wrong output value.
2017-08-18 14:24:03 -04:00
Chris Kleeschulte
2fa6b5c314
Fixed tests.
2017-08-18 10:48:54 -04:00
Chris Kleeschulte
07b1ff3111
Added regtest reorg tests,
2017-08-17 19:38:06 -04:00
Chris Kleeschulte
72770944db
Address routes fixes.
2017-08-15 12:48:16 -04:00
Chris Kleeschulte
c7ee57f224
Fixed network name when referring to bcoin's main net.
2017-08-10 18:11:04 -04:00
Chris Kleeschulte
bf7cd67269
Fixed address/transaction indexing.
2017-08-10 17:46:27 -04:00
Jason Dreyzehner
7c65ebad27
ci(Travis): Fix build, fix (or ignore) jshint issues
2017-07-31 15:04:25 -04:00
Chris Kleeschulte
2bd769cce0
wip
2017-07-27 19:12:23 -04:00
Chris Kleeschulte
45042aee57
wip
2017-07-26 17:36:41 -04:00
Chris Kleeschulte
b4a66d969c
wip
2017-07-26 10:35:06 -04:00
Chris Kleeschulte
f69dfd0462
wip
2017-07-25 18:41:17 -04:00
Chris Kleeschulte
4a294f7058
wip
2017-07-21 14:03:04 -04:00
Chris Kleeschulte
f47a3e3a3b
wip
2017-07-21 11:45:36 -04:00
Chris Kleeschulte
de4c59f958
wip
2017-07-19 15:50:47 -04:00
Chris Kleeschulte
861a80d678
wip
2017-07-19 10:35:25 -04:00
Chris Kleeschulte
aceddb12d9
wip
2017-07-18 19:05:32 -04:00
Chris Kleeschulte
a8eb0f8979
wip
2017-07-18 13:29:28 -04:00
Chris Kleeschulte
8365f358e7
wip
2017-07-18 10:04:22 -04:00
Chris Kleeschulte
67e9d63f4b
wip
2017-07-16 17:29:58 -04:00
Chris Kleeschulte
b471857bf0
wip
2017-07-15 15:50:52 -04:00
Chris Kleeschulte
98ea052405
wip
2017-07-14 16:14:24 -04:00
Chris Kleeschulte
a488c3f083
wip
2017-07-12 17:46:38 -04:00
Chris Kleeschulte
9c943cc959
wip
2017-07-12 10:07:46 -04:00
Chris Kleeschulte
5e0b2b1f11
wip
2017-07-11 17:16:23 -04:00
Chris Kleeschulte
5de265e094
wip
2017-07-10 16:16:31 -04:00
Chris Kleeschulte
7afaa59862
wip
2017-07-10 10:00:47 -04:00
Chris Kleeschulte
b5d67135ae
wip
2017-07-09 19:50:30 -04:00
Chris Kleeschulte
28e29ff8db
wip
2017-06-22 09:17:55 -04:00
Chris Kleeschulte
780175ee4e
wip
2017-05-25 08:54:27 -04:00
Chris Kleeschulte
a8760b3451
Wip on block service.
2017-05-18 09:48:28 -04:00
Chris Kleeschulte
bb73bac027
Added more logging. Services should call the db service for db operations.
2017-05-17 18:02:00 +00:00
Chris Kleeschulte
b4214e6ffc
Fixes for missing transaction id.
2017-05-16 20:32:10 +00:00
Chris Kleeschulte
3fe2c3ea16
wip
2017-05-01 11:22:46 -04:00
Chris Kleeschulte
6634b4feae
wip on regtest
2017-04-26 16:59:44 -04:00
k
0788da0e45
wip new routes.
2017-04-24 13:44:08 -04:00
Chris Kleeschulte
65089302bb
Fixed wallet getTransactions.
2017-03-31 16:05:07 -04:00
Chris Kleeschulte
06ffa05ba2
Added code for tx list.
2017-03-30 16:34:49 -04:00
Chris Kleeschulte
8d98abd080
Cleaned up old code that may not make it into the next release.
2017-02-12 12:15:22 -05:00
Chris Kleeschulte
a52b8134f7
Added unit tests for encoding files.
2017-02-07 08:18:09 -05:00
Chris Kleeschulte
4310faa8f0
Split out encodings and nested all services into a directory.
2017-02-02 08:53:51 -05:00
Chris Kleeschulte
3051c04147
Called next to proceed with sync.
2017-02-01 10:21:23 -05:00
Patrick Nagurny
7e08651d95
import addresses
2017-01-31 17:09:59 -05:00
Patrick Nagurny
15b9bce0ac
blockHandler for wallet-api service
2017-01-31 14:42:08 -05:00
Chris Kleeschulte
e2229a6516
Added Utxo index block handler.
2017-01-31 13:30:48 -05:00
Chris Kleeschulte
3b76463112
Unified all encodings/serialization functions into one,
...
centrally-accessible encodings file.
2017-01-31 08:00:28 -05:00
Chris Kleeschulte
fbdafb74f9
Merge branch 'feature/concurrency' into feature/walletIndex
2017-01-30 15:05:05 -05:00
Patrick Nagurny
26108753db
got it working
2017-01-26 18:09:36 -05:00
Chris Kleeschulte
553312947f
Added mempool stuff.
2017-01-26 14:57:47 -05:00
Chris Kleeschulte
7662bf1bf5
Adjusted Address index.
2017-01-24 15:56:23 -05:00
Chris Kleeschulte
d4783dabde
Added rudimentry mempool.
2017-01-24 14:47:19 -05:00
Patrick Nagurny
3c27f07291
getAddressHistory
2017-01-23 16:59:26 -05:00
Chris Kleeschulte
5a372f268c
wip
2017-01-20 17:28:25 -05:00
Chris Kleeschulte
523c3ab852
wip
2017-01-20 11:27:59 -05:00
Patrick Nagurny
efa8480651
get address index to work
2017-01-19 16:11:04 -05:00
Chris Kleeschulte
f1277c8ad3
Added height into tx index.
2017-01-18 19:11:47 -05:00
Chris Kleeschulte
43dfeffd5e
Added blockHandler.
2017-01-18 18:23:17 -05:00
Patrick Nagurny
8ecf6e1c47
modify address index, add timestamp and tx indexes (wip)
2017-01-17 15:44:56 -05:00
Patrick Nagurny
339f56157f
restore db and address services
2017-01-10 16:51:32 -05:00
Braydon Fuller
7e70bbfa7d
bitcoind: bitcoind service using rpc and zmq with address index
2016-04-08 11:59:26 -04:00
Jan Pochyla
b55ecf3044
clamp tx pagination to 0
2016-04-01 18:11:49 +02:00
Braydon Fuller
462e4e3cdd
Merge pull request #407 from bitpay/opt/multiple-address-history
...
Opt/multiple address history
2016-02-11 12:15:15 -05:00
Matias Alejo Garcia
e36cdb717a
rm empty keys
2016-02-11 10:42:30 -05:00
Matias Alejo Garcia
1a68ca4fae
add tests to _updateAddressIndex
2016-02-10 15:38:02 -05:00
Matias Alejo Garcia
3bb3d82aac
add counter for address mempool index
2016-02-10 15:03:34 -05:00
Matias Alejo Garcia
e7895b4b34
use key as binary
2016-02-09 15:30:40 -05:00
Matias Alejo Garcia
d0c2fa61d8
fix tests
2016-02-09 10:57:40 -05:00
Matias Alejo Garcia
9f87156adc
fix format
2016-02-09 10:26:09 -05:00
Matias Alejo Garcia
dae5c9d3d5
fix regtests
2016-02-08 15:07:32 -05:00
Matias Alejo Garcia
c1d3f351f2
add address index to mempool + noBalance options
2016-02-08 13:21:53 -05:00
Matias Alejo Garcia
e7e33313cf
add noBalance options + mempoolAddressIndex
2016-02-08 12:50:32 -05:00
Braydon Fuller
6e8f3ee917
Add regtest from bitcore-lib
2016-02-03 18:29:33 -05:00
Braydon Fuller
f473ddeddd
Lower and include new concurrency limits
2016-02-03 12:28:32 -05:00
Braydon Fuller
93e5dbfc34
Address Service: Limit the number of simultaneous requests
2016-02-02 13:27:45 -05:00
Braydon Fuller
3d7fb6f234
Address Service: End stream without pausing first
...
There was an issue where streams would still be held open if "pause" was
called before "end", this would lead to http requests from the insight-api
not being returned with an error status as soon as possible but would
instead stay open.
2016-01-26 13:25:53 -05:00
Braydon Fuller
39f8355cd9
Address Service: Bump maximum number of addresses default
2016-01-19 14:07:28 -05:00
Braydon Fuller
45029030f1
Address Service: Sort after unconfirmed and confirmed
2016-01-18 16:16:53 -05:00
Braydon Fuller
e498e0fac2
Address Service: Include default callback earlier
2016-01-18 16:03:37 -05:00
Braydon Fuller
d4f2df5c51
Address Service: Sort mempool txids
2016-01-18 15:56:05 -05:00
Braydon Fuller
a166b6af23
Address Service: Removed nolonger used constant for cache
2016-01-18 15:06:18 -05:00
Braydon Fuller
62934b4b66
Address Service: Removed event listeners prior to stopping
2016-01-18 15:00:55 -05:00
Braydon Fuller
3d9b6d5532
Address Service: More tests for history
2016-01-18 12:59:49 -05:00
Braydon Fuller
e79c00db10
Address Service: Updated tests and fixed various bugs
2016-01-15 18:04:32 -05:00
Braydon Fuller
ead6c2f45f
Address Service: Removed caching and added max query limits
...
Querying addresses that have millions of transactions is supported however
takes hundreds of seconds to fully calculate the balance. Creating a cache of
previous results wasn't currently working because the `isSpent` query is always
based on the current bitcoind tip. Thus the balance of the outputs would be included
however wouldn't be removed when spent as the output wouldn't be checked again
when querying for blocks past the last checkpoint. Including the satoshis in the
inputs address index would make it possible to subtract the spent amount,
however this degrades optimizations elsewhere. The syncing times or querying
for addresses with 10,000 transactions per address.
It may preferrable to have an additional address service that handles high-volume
addresses be on an opt-in basis so that a custom running client could select
high volume addresses to create optimizations for querying balances and history.
The strategies for creating indexes differs on these use cases.
2016-01-14 17:17:04 -05:00
Braydon Fuller
4fcec8755c
Address Service: Fixed many bugs from tests
...
- Refactored getAddressSummary and added several tests
- Fixed bugs revealed from the integration regtests
- Updated many unit tests
2016-01-13 17:15:14 -05:00
Braydon Fuller
188ff28ec7
Address Service: Fixed HASH_TYPES_MAP naming issue
2016-01-11 16:51:00 -05:00
Braydon Fuller
8d2f69c5fd
Address Service: Restored multi-address history queries
...
- Restored functionality to be able to query the history of multiple addresses in one query
- Sorted mempool transactions by timestamp in txid lists
2016-01-11 16:17:55 -05:00
Braydon Fuller
5c4f3c4453
Address Service: Use address summary cache for pagination
2016-01-11 16:17:55 -05:00
Braydon Fuller
8298e380ed
Address Service: Use streams to combine inputs and outputs
2016-01-11 16:17:55 -05:00
Braydon Fuller
cef2f7686d
Address Service: Limit the length of outputs that can be queried at a time
2016-01-11 16:17:55 -05:00
Braydon Fuller
40eb4f50ae
Address Service: Start to cache getAddressSummary based on range of block heights
2016-01-11 16:17:55 -05:00
Braydon Fuller
cab25cf397
Address Service: Start to use streams for memory optimization with large queries
2016-01-11 16:17:55 -05:00
Samuel Reed
3214390d4c
Fix #377 ; db must contain hash type, not just hash.
...
Prevents erroneous crediting of all transactions to both the
p2pkh and the corresponding p2sh address.
2016-01-11 09:47:00 -06:00
Braydon Fuller
0ea035c4f0
Address: Fixed race condition with transaction event handlers
2015-11-03 17:12:13 -05:00
Braydon Fuller
c5c8e21c6c
Address: Fixed bug with isSpent confusion with prevTxId and txid
2015-11-03 10:26:32 -05:00
Braydon Fuller
89ef28f0b7
Optimize mempool address index memory footprint
...
- Adds default to store a large portion of the mempool index in leveldb
- Includes an option to use memdown to have the mempool index in-memory
2015-10-30 18:36:16 -04:00
Braydon Fuller
086ba5fcfc
Switch to remove items from mempool index as they leave asynchronously.
2015-10-29 19:16:56 -04:00
Rob Riddle
824e624929
Fix typos and some examples in service doc
2015-10-22 18:47:19 +03:00
Patrick Nagurny
9bdd9e7995
unconfirmed balance shouldn't include confirmed balance
2015-10-21 18:25:57 -04:00
Braydon Fuller
1dec93edd4
bitcore -> bitcore-lib
2015-10-17 00:56:29 -04:00
Braydon Fuller
2e3d58c07a
Fix bug where the outputIndex would be removed.
...
The address history `combineTransactionInfo` method removes the
outputIndex when creating the outputIndexes property. When these are
from the mempool the original reference is also modified.
We can easily solve this by returning new instances in `getOutputs`
and `getInputs` instead of a reference to the actual mempool instance.
This will also have the additional benefit that height and other
properties that will be the same for every mempool entry will
not be stored in memory longer than what is necessary to fulfill
a request.
2015-10-12 18:35:37 -04:00
Braydon Fuller
d9b2a0969b
Fixed bug with balance
...
There was a bug when getting unspent outputs that would include an output
that was spent in the mempool in addition to the new output with the change
address. This lead to a balance having an output counted twice towards the
end balance. The solution is to have the isSpent method for the address service
to also include if the output was spent in the mempool, as the isSpent
method exposed from bitcoind only includes if the output was spent in a block.
2015-10-12 09:29:49 -04:00
Patrick Nagurny
3e38d84d0b
emit address/balance events for mempool transactions
2015-10-02 17:10:12 -04:00
Braydon Fuller
da9d856da3
Add comments to describe each prefix.
2015-10-02 10:56:28 -04:00
Braydon Fuller
27e90ef41a
Give false if spent information not available.
2015-10-01 23:50:06 -04:00
Braydon Fuller
539b263c67
Add spentTxId Index
...
- To be able to query an inputTxId and inputIndex that spends an outputTxId and outputIndex
- Extends the mempoolSpentIndex to include the inputTxId and inputIndex
2015-10-01 20:03:31 -04:00
Braydon Fuller
f337622790
Updates to documentation for bitcore.io website.
2015-09-29 14:15:49 -04:00
Braydon Fuller
1183e0cae7
Service Documentation
2015-09-23 18:14:37 -04:00
Braydon Fuller
80fadc7ec3
Fix bug with address summary transaction count.
2015-09-21 17:02:11 -04:00
Braydon Fuller
e3096d3646
Address compatibility with pay-to-publickey output scripts.
2015-09-21 13:49:48 -04:00
Patrick Nagurny
4e763d189f
fixes
2015-09-18 14:06:26 -04:00
Patrick Nagurny
b11ab97739
add tests
2015-09-18 14:06:26 -04:00
Patrick Nagurny
bc39a5e480
use mempool spent index
2015-09-18 14:06:26 -04:00
Patrick Nagurny
8b1a2aa001
get address summary
2015-09-18 14:06:26 -04:00
Chris Kleeschulte
0ba168e2a2
Fixed typo and added a test to prove that the inputs from the mempoolInputIndex are added on stream close.
2015-09-17 17:20:35 -04:00
Chris Kleeschulte
c3654120ee
MempoolInputIndex and MempoolOutputIndex
...
- Added in memory indexes for mempool input and
output by address.
2015-09-17 14:29:11 -04:00
Braydon Fuller
62faecb9ae
Address Mempool Index: Fix bugs with reset mempool.
2015-09-17 14:26:53 -04:00
Braydon Fuller
ad120213e1
Start of mempool address index.
2015-09-17 14:26:53 -04:00
Braydon Fuller
4343b90de2
Merge pull request #219 from pnagurny/feature/timestamp-blocks
...
Get block hashes by timestamp range
2015-09-16 13:47:00 -04:00
Patrick Nagurny
00d3a0ba67
binary encode key and value
2015-09-15 16:55:14 -04:00
Braydon Fuller
bfba4a1b7f
Address History: Include count in response results.
2015-09-15 13:17:15 -04:00
Braydon Fuller
5fbd8991ed
Address History: Combine addresses so that history is txid unique.
2015-09-14 21:04:54 -04:00
Braydon Fuller
e7587564a7
Address History: Add getAddressHistoryCount to available API methods.
2015-09-14 17:29:43 -04:00
Braydon Fuller
b1b40c892e
Address History: Add getAddressHistoryCount method
2015-09-14 16:48:28 -04:00
Braydon Fuller
87a9163743
Address History: Docs for "start" and "end" arguments
2015-09-14 16:29:27 -04:00
Braydon Fuller
a80b58e004
Address History: Fix sorting bug
2015-09-14 16:11:31 -04:00
Braydon Fuller
f88eee5a1c
Improve db storage efficiency by ~2 times
...
Encodes and decodes keys and values for leveldb storage more efficiently.
2015-09-14 00:30:21 -04:00
Braydon Fuller
d3641f3b0a
Pagination Optimization
...
- Sort and paginate before getting full transaction details.
- Only get detailed transaction information for items within the current page.
- Improves the performance with large sets of transactions.
2015-09-14 00:30:14 -04:00
Braydon Fuller
1cf34f2dd8
Address Block Handling Optimizations
...
- Changes to use ripemd160 hash directly instead of the base58check encoded values
- Speeds block handling performance by ~4 times
2015-09-12 19:56:13 -04:00
Braydon Fuller
c205f781a5
Pagination for Address History
...
- Reindexing the bitcore-node database is required with this change.
- Address indexes are updated to include address and height in spent index so that both inputs and outputs can be queried by address and height using "start" and "stop" to limit the range of the query.
- Address history also now supports paginated results using "from" and "to" values that indicate an index in the array.
2015-09-12 19:44:10 -04:00