Commit Graph

368 Commits

Author SHA1 Message Date
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
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
24894cb748 main: update unspent address index during reorgs 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
186e11fde7 main: update address index during reorgs 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
5bb6d69ff8 rpc: added getaddressbalance method using addressindex 2016-06-02 12:15:13 -04:00
Braydon Fuller
5b5f3f7d00 rpc: sort txids by height for multiple addresses 2016-06-02 12:15:13 -04:00
Braydon Fuller
f4d11ffc7c rpc: query for multiple addresses txids 2016-06-02 12:15:13 -04:00
Braydon Fuller
2500d1d115 rpc: update getaddresstxids for uniqueness 2016-06-02 12:15:13 -04:00
Braydon Fuller
fcac6bcdc8 rpc: fix issue for querying txids for p2sh addresses 2016-06-02 12:15:13 -04:00
Braydon Fuller
18ea599a71 main: index address index sorted by height 2016-06-02 12:15:13 -04:00
Braydon Fuller
4d46195634 qa: started test for addressindex rpc getaddresstxids 2016-06-02 12:15:13 -04:00
Suhas Daftuar
46898e7e94
Version 2 transactions remain non-standard until CSV activates
Before activation, such transactions might not be mined, so don't
allow into the mempool.

- Tests: move get_bip9_status to util.py

- Test relay of version 2 transactions

Github-Pull: #7835
Rebased-From: e4ba9f6b0402cf7a2ad0d74f617c434a26c6e124 5cb1d8a2071d05beb9907a423178895fd8a5c359 da5fdbb3a2778523cce70d635c1aa2b31a693bc6
2016-04-08 14:22:04 +02:00
Wladimir J. van der Laan
834aaef7bd
Merge #7543: [0.12] Backport BIP9, BIP68 and BIP112 with softfork
640666b [qa] rpc-tests: Properly use integers, floats (BtcDrak)
c270b62 Fix comments in tests (BtcDrak)
caf1381 Add bip68-sequence.py to extended rpc tests (BtcDrak)
26e9a05 Test of BIP9 fork activation of mtp, csv, sequence_lock (NicolasDorier)
3a99feb Add RPC test for BIP 68/112/113 soft fork. (Alex Morcos)
159ee3d Policy: allow transaction version 2 relay policy. (BtcDrak)
9713ed3 Soft fork logic for BIP68 (BtcDrak)
648be9b Soft fork logic for BIP113 (BtcDrak)
ee40924 Add CHECKSEQUENCEVERIFY softfork through BIP9 (Pieter Wuille)
6ff0b9f RPC test for BIP9 warning logic (Suhas Daftuar)
0710b30 Test versionbits deployments (Suhas Daftuar)
8ebc6f2 Add testing of ComputeBlockVersion (Suhas Daftuar)
0bdaacd Softfork status report in RPC (Pieter Wuille)
5f90d4e Versionbits tests (Pieter Wuille)
6f83cf2 BIP9 Implementation (Pieter Wuille)
ade85e1 Add LockPoints (Alex Morcos)
c8d309e Code style fix. (BtcDrak)
6170506 Separate CheckLockTime() and CheckSequence() logic (BtcDrak)
c0c5e09 BIP112: Implement CHECKSEQUENCEVERIFY (Mark Friedenbach)
197c376 fix sdaftuar's nits again (Alex Morcos)
0a79c04 Bug fix to RPC test (Alex Morcos)
0d09af7 Add RPC test exercising BIP68 (mempool only) (Suhas Daftuar)
15ba08c Implement SequenceLocks functions (Alex Morcos)
2016-04-04 13:08:29 +02:00
BtcDrak
640666b22f [qa] rpc-tests: Properly use integers, floats
partial backport from #7778 using fa2cea1
2016-04-03 18:06:06 +01:00
BtcDrak
c270b62cc2 Fix comments in tests 2016-03-31 10:28:57 +01:00
BtcDrak
caf138122d Add bip68-sequence.py to extended rpc tests 2016-03-29 10:34:07 +01:00
NicolasDorier
26e9a05cc3 Test of BIP9 fork activation of mtp, csv, sequence_lock 2016-03-26 04:05:42 +00:00
Alex Morcos
19866c1ffc
Fix calculation of balances and available coins.
No longer consider coins which aren't in our mempool.

Add test for regression in abandonconflict.py

Github-Pull: #7715
Rebased-From: 68d4282774d6a60c609301cddad0b652f16df4d9
2016-03-23 15:11:22 +01:00
Alex Morcos
3a99feba85 Add RPC test for BIP 68/112/113 soft fork.
This RPC test will test both the activation mechanism of the first versionbits soft fork as well as testing many code branches of the consensus logic for BIP's 68, 112, and 113.
2016-03-18 09:28:41 +00:00
Suhas Daftuar
6ff0b9f96e RPC test for BIP9 warning logic 2016-03-18 09:14:53 +00:00
Alex Morcos
0a79c04af3 Bug fix to RPC test 2016-03-18 09:14:52 +00:00
Suhas Daftuar
0d09af77b7 Add RPC test exercising BIP68 (mempool only) 2016-03-18 09:14:52 +00:00
MarcoFalke
f04f4fd2ee
[doc/log] Fix markdown syntax and line terminate LogPrint
- Fix doxygen comment for payTxFee
- [doc] Fix markdown
- Make sure LogPrintf strings are line-terminated

Github-Pull: #7617
Rebased-From: fa06ce09498707d5e82633f1e1b034675e552628 fa97f95c15a7aee15feea500571a10a90f22ea8b fa266524592cc18c789cc587d738fb0e548fd23a
2016-03-11 09:44:17 +01:00
mrbandrews
947c4ff724
[rpc-tests] Change solve() to use rehash
Github-Pull: #7468
Rebased-From: 7689041c03278a09c88a2bb78cd00217f6d4b1de
2016-02-10 20:39:52 +01:00
Suhas Daftuar
e25b158ab8
RPC: indicate which transactions are replaceable
Add "bip125-replaceable" output field to listtransactions and gettransaction
which indicates if an unconfirmed transaction, or any unconfirmed parent, is
signaling opt-in RBF according to BIP 125.

Github-Pull: #7286
Rebased-From: eaa8d2754b48b62cdd07255fc3028feecad0c095
2016-01-20 13:50:58 +01:00
Suhas Daftuar
51af87f078
Fix error in blockchain.py introduced in merge
Github-Pull: #7373
Rebased-From: 4a0487937877484f14476716c3643de7a31c32da
2016-01-18 16:01:31 +01:00
James O'Beirne
351ffd8482
Fix help, add RPC tests for getblockheader
- Add assert_is_hex_string and assert_is_hash_string to RPC test utils.
- Add RPC documentation for getblockheader[chainwork].
- Add RPC tests for getblockheader.

Github-Pull: #7194
Rebased-From: 16d4fce0b203bdaa679ad5b3f1e6b6f46880d5d2 4745636126d9a4f28f701f701be392779815a7bf 135d6ec8cedc83ad800da45080c16d49e9182e80
2016-01-18 12:25:50 +01:00
MarcoFalke
d8b062d752
[qa] Fix pyton syntax in rpc tests
Github-Pull: #7335
Rebased-From: 7777994846cdb9b9cf69e391a33eeed30393bbcf
2016-01-18 10:46:46 +01:00
Wladimir J. van der Laan
1709cc5cb0
Merge pull request #7338
f17b00b release-notes: Combine NOP2->CLTV asm change into "RPC: Low-level API changes" section (Luke Dashjr)
e20704b Replace some instances of formatWithUnit with formatHtmlWithUnit (fanquake)
6f8346d qt5: Use the fixed font the system recommends (MarcoFalke)
605de4a Rename OP_NOP2 to OP_CHECKLOCKTIMEVERIFY. (mb300sd)
6191a9b [RPC-Tests] add option to run rpc test over QT clients (Jonas Schnelli)
6307beb Note that reviewers should mention the commit hash of the commits they reviewed. (Patrick Strateman)
6092ff2 Set link from http:// to https:// (Suriyaa Kudo)
2016-01-18 10:36:57 +01:00
Suhas Daftuar
1488fc8eac
Eliminate race condition in mempool_packages test
Github-Pull: #7368
Rebased-From: 4d10d2e16fb837abe304e0a5d3bc0a41941d917a
2016-01-18 10:29:32 +01:00
mb300sd
605de4a88a Rename OP_NOP2 to OP_CHECKLOCKTIMEVERIFY.
Github-Pull: #7213
Rebased-From: 37d271d7cce44885f835292ffe99b54399b014d6
2016-01-13 21:25:36 +00:00
Jonas Schnelli
6191a9b628 [RPC-Tests] add option to run rpc test over QT clients
Github-Pull: #7068
Rebased-From: 979698c1715ce86a98934e48acadbc936c95c9a3
2016-01-13 21:25:35 +00:00
Alex Morcos
fd4bd5009e
Add RPC call abandontransaction
- Make wallet descendant searching more efficient
- Add new rpc call: abandontransaction

Unconfirmed transactions that are not in your mempool either due to eviction or other means may be unlikely to be mined.  abandontransaction gives the wallet a way to no longer consider as spent the coins that are inputs to such a transaction.  All dependent transactions in the wallet will also be marked as abandoned.

- Add RPC test for abandoned and conflicted transactions.
- [Wallet] Call notification signal when a transaction is abandoned

Github-Pull: #7312
Rebased-From: 9e697172542e2b01517e4025df2c23d0ed5447f4 01e06d1fa365cedb7f5d5e17e6bdf0b526e700c5 df0e2226d998483d247c0245170f6b8ff6433b1d d11fc1695c0453ef22a633e516726f82717dd1d9
2016-01-13 15:55:00 +01:00
Alex Morcos
a36d79bfe2
Add sane fallback for fee estimation
- Always respect GetRequiredFee for wallet txs
- Add sane fallback for fee estimation
- SQUASHME: Fix rpc tests that assumed fallback to minRelayTxFee

Add new commandline option "-fallbackfee" to use when fee estimation does not have sufficient data.

Github-Pull: #7296
Rebased-From: 995b9f3 e420a1b bebe58b
2016-01-13 11:06:17 +01:00
Suhas Daftuar
d513405cb7
[Tests] Eliminate intermittent failures in sendheaders.py
- Add race-condition debugging tool to mininode
- Eliminate race condition in sendheaders.py test

Clear the last block announcement before mining new blocks.

Github-Pull: #7308
Rebased-From: 82a0ce09b45ab9c09ce4f516be5b9b413dcec470 168915e6dec88b31793d4ee4b60b94d4149de36c
2016-01-09 16:32:30 +01:00
MarcoFalke
1ed938b5fe
[qa] wallet: Check if maintenance changes the balance
- [qa] Cleanup wallet.py test
- [qa] check if wallet or blochchain maintenance changes the balance
- [walletdb] Add missing LOCK() in Recover() for dummyWallet

Github-Pull: #7229
Rebased-From: fa0765d433eb6d44a5cbec44f136b62814c663e5 fa14d994843fe2d700c977653cd3133d0a77cb67 fa33d9740c9b0d1071094ab6c1736f27a7090c95
2016-01-07 09:19:25 +01:00
MarcoFalke
333e1eaeea
Bump copyright headers to 2015
- Bump copyright headers to 2015
- [devtools] Rewrite fix-copyright-headers.py
- [devtools] Use git pretty-format for year parsing

Github-Pull: #7205
Rebased-From: fa6ad855e9159b2247da4fa0054f32fa181499ab fa24439ff3d8ab5b9efaf66ef4dae6713b88cb35 fa71669452e57039e4270fd2b33a0e0e1635b813
2016-01-05 14:13:33 +01:00
MarcoFalke
bdd0f9e286
[qa] Move gen_return_txouts() to util.py
Github-Pull: #7250
Rebased-From: fa0a9749eb09f6b537b98075241a7fcb46f758e3
2016-01-04 11:58:36 +01:00
Wladimir J. van der Laan
453c56701a
tests: Disable Tor interaction
This is unnecessary during the current tests (any test for Tor
interaction can explicitly enable it) and interferes with the proxy
test.

Github-Pull: #7170
Rebased-From: 4c40ec0451a8f279f3e2e40af068c9451afd699e
2015-12-22 16:45:56 +01:00
Jonas Schnelli
9ef7c54ef0 [Tests] Add mempool_limit.py test
- [Tests] Add mempool_limit.py test
- [Tests] Refactor some shared functions

Github-Pull: #7153
Rebased-From: 110ff1142c5284edba8aab77fcac0bea0e551969 7632cf689a9b959dd7a059b8b4a04761a4bc6e6a
2015-12-22 14:08:22 +01:00
Suhas Daftuar
301f16ad1c
Add more tests to p2p-fullblocktest
Github-Pull: #7226
Rebased-From: 9b41a5fba278e9ab56a9b86e7a5fe195dcad0b7a
2015-12-22 09:54:52 +01:00
Suhas Daftuar
12c469b236
[Mempool] Fix mempool limiting and replace-by-fee for PrioritiseTransaction
1) Fix mempool limiting for PrioritiseTransaction

Redo the feerate index to be based on mining score, rather than fee.

Update mempool_packages.py to test prioritisetransaction's effect on
package scores.

2) Update replace-by-fee logic to use fee deltas

3) Use fee deltas for determining mempool acceptance

4) Remove GetMinRelayFee

One test in AcceptToMemoryPool was to compare a transaction's fee
agains the value returned by GetMinRelayFee. This value was zero for
all small transactions.  For larger transactions (between
DEFAULT_BLOCK_PRIORITY_SIZE and MAX_STANDARD_TX_SIZE), this function
was preventing low fee transactions from ever being accepted.

With this function removed, we will now allow transactions in that range
with fees (including modifications via PrioritiseTransaction) below
the minRelayTxFee, provided that they have sufficient priority.

Github-Pull: #7062
Rebased-From: eb306664e786ae43d539fde66f0fbe2a3e89d910 9ef2a25603c9ec4e44c4f45c6a5d4e4386ec86d3 27fae3484cdb21b0d24face833b966fce5926be5 901b01d674031f9aca717deeb372bafa160a24af
2015-12-21 17:19:53 +01:00