Commit Graph

1365 Commits

Author SHA1 Message Date
Braydon Fuller
995b4b57d4 DB: Include docs on how to recreate the database 2016-01-28 13:47:26 -05:00
Braydon Fuller
98bd8ee560 DB Service: Include a version number for upgrading purposes 2016-01-28 12:08:05 -05:00
Chris Kleeschulte
b0a0f629e2 Merge pull request #392 from braydonf/large-queries
Memory optimizations for large address queries
2016-01-27 14:45:05 -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
a2acc0c80f Address Service: Fixed test for max address limit 2016-01-26 13:09:31 -05:00
Braydon Fuller
2850573e6e Merge pull request #396 from ralphtheninja/master
homepage link 404 on github
2016-01-19 15:02:51 -05:00
Lars-Magnus Skog
43e472707f homepage link 404 on github 2016-01-19 20:49:17 +01: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
687400eab2 Address Service: Added test for history getAddressDetailsForTransaction 2016-01-18 13:53:32 -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
Chris Kleeschulte
7931062d57 Merge pull request #379 from STRML/bugfix/hashType
Fix #377; db must contain hash + type, not just hash.
2016-01-11 15:51:57 -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
Chris Kleeschulte
3b2108da03 Merge pull request #383 from posita/posita/380-add-missing-git-config
Fix #380. Add missing git config properties if required before committing bitcoin core patch.
2016-01-04 13:25:01 -05:00
Matt Bogosian
df3fc3dd35 Fix #380. Add missing git config properties if required before committing bitcoin core patch. 2015-12-23 18:03:44 -08:00
Braydon Fuller
858182a346 Merge pull request #370 from kleetus/feature/docs_home_dir
Docs update
2015-12-11 10:23:41 -05:00
Chris Kleeschulte
d0b78f52ec Merge pull request #368 from Sexual/patch-1
Add node.start to Node Constructor
2015-12-11 09:39:35 -05:00
Chris Kleeschulte
838d35b294 Docs update
- Some users are confused on whether or not they can use the home directory expansion shortcut.
- Changed to absolute example path to more accurately demonstrate.
2015-12-08 15:38:16 -05:00
Sladey
7c841e2cdc Add node.start to node constructur
Spent about 17 hours trying to figure out why my node wasn't starting. Kinda silly to miss something like this.
2015-12-05 21:47:13 +00:00
Chris Kleeschulte
59701c4c34 Bump development version to v1.0.1-dev 2015-12-02 18:03:34 -05:00
Chris Kleeschulte
6ef84f6059 Bump package version to v1.0.1 2015-12-02 17:10:15 -05:00
Chris Kleeschulte
8f95f794d5 Merge pull request #360 from braydonf/bitcoin-0.11.2
Bindings: Adjust patch to bitcoin for the 0.11.2 release
2015-11-16 10:12:36 -05:00
Braydon Fuller
2e2bd70262 Bindings: Adjust patch to bitcoin for the 0.11.2 release 2015-11-13 11:35:47 -05:00
Chris Kleeschulte
f14810698c Bump development version to v1.0.0-dev 2015-11-04 12:43:59 -05:00
Chris Kleeschulte
7c6f0c0b44 Bump package version to v1.0.0 2015-11-04 10:50:28 -05:00
Patrick Nagurny
02620a5b47 Merge pull request #352 from braydonf/mem
Optimized address service mempool index size
2015-11-03 17:23:28 -05:00
Braydon Fuller
0ea035c4f0 Address: Fixed race condition with transaction event handlers 2015-11-03 17:12:13 -05:00
Patrick Nagurny
cda3259fea Merge pull request #355 from braydonf/subapp
Web: Changed to pass express subapp to services instead of the router.
2015-11-03 10:42:18 -05:00
Braydon Fuller
378edd4186 Web: Changed to pass express subapp to services instead of the router. 2015-11-03 10:32:01 -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
fccd6197c6 Docs: Updated bitcoind event docs to be less ambiguous 2015-11-02 18:02:32 -05:00
Braydon Fuller
826114b575 Docs: Update docs for bitcoind bindings with txleave event 2015-11-02 17:31:41 -05:00
Braydon Fuller
a1bae366b3 Database: Removed runAllMempoolIndexes method
Replaced with using `tx` and `txleave` to manage the state of the mempool indexes.
2015-11-02 17:18:37 -05:00
Braydon Fuller
5ac3b1c61f Address: Added unit tests for new mempool index methods 2015-11-02 17:10:43 -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