Wladimir J. van der Laan
8c1e49ba13
Merge #7967 : [RPC] add feerate option to fundrawtransaction
...
04eaa90 Add more clear interface for CoinControl.h regarding individual feerate (Jonas Schnelli)
3b35e48 [RPC] add feerate option to fundrawtransaction (Jonas Schnelli)
2016-06-03 15:47:48 +02:00
Wladimir J. van der Laan
c141c14c9f
Merge #7942 : locking for Misbehave() and other cs_main locking fixes
...
719de56 lock cs_main for chainActive (Kaz Wesley)
efb54ba lock cs_main for State/Misbehaving (Kaz Wesley)
2016-06-03 15:29:28 +02:00
MarcoFalke
ae5575ba41
Merge #8139 : Fix interrupted HTTP RPC connection workaround for Python 3.5+
...
f45f51e Fix interrupted HTTP RPC connection workaround for Python 3.5+ (Pieter Wuille)
2016-06-03 08:53:43 +02:00
Pieter Wuille
a82f03393a
Merge #7997 : replace mapNextTx with slimmer setSpends
...
9805f4a mapNextTx: use pointer as key, simplify value (Kaz Wesley)
2016-06-03 01:26:50 +02:00
Pieter Wuille
f972b04d63
Merge #7825 : Prevent multiple calls to ExtractDestination
...
0bf6f30 Prevent multiple calls to ExtractDestination (Pedro Branco)
2016-06-03 00:45:22 +02:00
Kaz Wesley
9805f4af7e
mapNextTx: use pointer as key, simplify value
...
Saves about 10% of application memory usage once the mempool warms up. Since the
mempool is DynamicUsage-regulated, this will translate to a larger mempool in
the same amount of space.
Map value type: eliminate the vin index; no users of the map need to know which
input of the transaction is spending the prevout.
Map key type: replace the COutPoint with a pointer to a COutPoint. A COutPoint
is 36 bytes, but each COutPoint is accessible from the same map entry's value.
A trivial DereferencingComparator functor allows indirect map keys, but the
resulting syntax is misleading: `map.find(&outpoint)`. Implement an indirectmap
that acts as a wrapper to a map that uses a DereferencingComparator, supporting
a syntax that accurately reflect the container's semantics: inserts and
iterators use pointers since they store pointers and need them to remain
constant and dereferenceable, but lookup functions take const references.
2016-06-02 12:31:51 -07:00
mrbandrews
12c5a16c4e
Catch exceptions from non-canonical encoding and print only to log
2016-06-02 14:43:18 -04:00
mrbandrews
291f8aa5da
Continuing port of java comptool
2016-06-02 14:42:09 -04:00
Pieter Wuille
f45f51e3ae
Fix interrupted HTTP RPC connection workaround for Python 3.5+
2016-06-02 19:17:04 +02:00
Pieter Wuille
ec45cc5e27
Merge #7992 : Extend #7956 with one more test.
...
269a440 Add test for dbwrapper iterators with same-prefix keys. (Matt Corallo)
6030625 test: Add more thorough test for dbwrapper iterators (Wladimir J. van der Laan)
84c13e7 chain: Add assertion in case of missing records in index db (Wladimir J. van der Laan)
2016-06-02 19:14:34 +02:00
Braydon Fuller
55fa4798eb
main: spentindex for the mempool
2016-06-02 12:15:59 -04:00
Braydon Fuller
4c7dc871d1
rpc: add input value and address to getrawtransaction if spentindex enabled
2016-06-02 12:15:38 -04:00
Braydon Fuller
16d35eb228
main: add amount and address to spentindex value
2016-06-02 12:15:38 -04:00
Braydon Fuller
87dfd13694
rpc: include satoshis in verbose raw transaction
2016-06-02 12:15:38 -04:00
Braydon Fuller
1c022b9fc2
rpc: add blockindex to getaddressdeltas method
...
for the purposes of secondary sorting by block order
2016-06-02 12:15:37 -04:00
Braydon Fuller
3c74fff552
rpc: include help text for addressindex and related commands
2016-06-02 12:15:37 -04:00
Braydon Fuller
eb82f39655
rpcclient: add params to be parsed as JSON
...
There was an issue where getblockhashes wouldn't work from bitcoin-cli
as the two params would be strings instead of integers. This fixes that
issue, and will parse the first param as JSON for other addressindex
related rpc methods.
2016-06-02 12:15:37 -04:00
Cory Fields
6c44620e5a
travis: switch to Trusty
...
Github-Pull: #7920
Rebased-From: 06fdffd222 , 9267a47d86 , cf77fcdb1f , 174023c9b0 , a33b7c9cb5
Cherry-pick-From: 564aaa2cd0
2016-06-02 12:15:37 -04:00
Luke Dashjr
128c5e1232
Workaround Travis-side CI issues
...
Github-Pull: #7487
Rebased-From: 149641e8fc c01f08db12 5d1148cb79 1ecbb3b0f7
Cherry-pick-From: 00d57b4d3a
2016-06-02 12:15:37 -04:00
Wladimir J. van der Laan
9c5b709c6f
tests: Make proxy_test work on travis servers without IPv6
...
Github-Pull: #7489
Rebased-From: 7539f1aae3
Cherry-picked-From: 9ca957bcd4
2016-06-02 12:15:37 -04:00
Braydon Fuller
5fa85bc9ae
rpc: update oksafemode for address commands
2016-06-02 12:15:37 -04:00
Braydon Fuller
98f8fdddc8
rpc: optional "start" and "end" params for getaddressdeltas
2016-06-02 12:15:37 -04:00
Braydon Fuller
8391ff0b0a
rpc: include base58check encoded address in results
2016-06-02 12:15:37 -04:00
Braydon Fuller
28f9ae7853
test: test for getaddressmempool prevhash and prevout values
2016-06-02 12:15:37 -04:00
Braydon Fuller
5c3cf5f631
rpc: include prevhash and prevout information for spending deltas
2016-06-02 12:15:37 -04:00
Braydon Fuller
04da9306c6
build: fix darwin build
2016-06-02 12:15:37 -04:00
Braydon Fuller
94ea69a4d5
rpc: fix issue with querying txids by block heights
2016-06-02 12:15:37 -04:00
Braydon Fuller
96d8307b55
rpc: query txids for addresses within block height range
2016-06-02 12:15:37 -04:00
Braydon Fuller
abe40712ce
rpc: include height in spentinfo
2016-06-02 12:15:37 -04:00
Braydon Fuller
b752fbe09e
rpc: include spent info if spentindex enabled with getrawtransaction verbose
2016-06-02 12:15:37 -04:00
Braydon Fuller
e3d9207e5a
main: add spentindex option
2016-06-02 12:15:37 -04:00
Braydon Fuller
8636f36477
rpc: cast indexes to ints
2016-06-02 12:15:14 -04:00
Braydon Fuller
4678f2d438
build: add addressindex.h to make
2016-06-02 12:15:14 -04:00
Braydon Fuller
7c68235cf4
main: include timestampindex in help
2016-06-02 12:15:14 -04:00
Braydon Fuller
d99f17de1a
rpc: give back base58 encoded address format in utxos
2016-06-02 12:15:14 -04:00
Braydon Fuller
b66eff47cf
main: mempool address index
2016-06-02 12:15:14 -04:00
Braydon Fuller
1bd65a5c4b
main: sort address index utxos by height
2016-06-02 12:15:14 -04:00
Braydon Fuller
d0483c9aa0
main: remove spent address utxo indexes
2016-06-02 12:15:14 -04:00
Braydon Fuller
21c675855f
main: don't undo indexes when verifying blocks at startup
2016-06-02 12:15:14 -04:00
Braydon Fuller
24894cb748
main: update unspent address index during reorgs
2016-06-02 12:15:14 -04:00
Braydon Fuller
08836972c0
rpc: fix argument check for getaddressutxos
2016-06-02 12:15:14 -04:00
Braydon Fuller
0b42ba227a
main: index unspent outputs by address
2016-06-02 12:15:14 -04:00
Braydon Fuller
8597289d8b
main: fix order of address index when disconnecting block
2016-06-02 12:15:14 -04:00
Braydon Fuller
186e11fde7
main: update address index during reorgs
2016-06-02 12:15:14 -04:00
Braydon Fuller
38a7d6d323
rpc: optimize address txid queries
2016-06-02 12:15:14 -04:00
Braydon Fuller
cad092aebb
main: get address deltas between range of block heights
2016-06-02 12:15:14 -04:00
Braydon Fuller
206882cd4b
main: fixed bug with overlapping address index keys
...
There was a bug where the spending address index could have the same key
as the receiving address index if the input and output indexes matched. This lead
to the output always overwriting the input index leading to incorrect balances
with missing spent amounts. This patch separates the two so that they have unique
keys so balances will be correctly calculated.
2016-06-02 12:15:14 -04:00
Braydon Fuller
f76c2585f0
test: added to for balance after spending
2016-06-02 12:15:13 -04:00
Braydon Fuller
935ca8f832
main: add block timestamp index
2016-06-02 12:15:13 -04:00
Braydon Fuller
24deb4efc1
rpc: include height in getrawtransaction results
2016-06-02 12:15:13 -04:00