aboutsummaryrefslogtreecommitdiff
path: root/qa
AgeCommit message (Collapse)Author
2015-01-19Restore RPC HTTP keepalives to default.Gregory Maxwell
This avoids a regression for issues like #334 where high speed repeated connections eventually run the HTTP client out of sockets because all of theirs end up in time_wait. Maybe the trade-off here is suboptimal, but if both choices will fail then we prefer fewer changes until the root cause is solved. Rebased-From: 1a25a7edf82706c3152e2d978d320ec465a34de1 7d2cb485116636595250fce4ea4eab16a877479b Github-Pull: #5674
2015-01-15Add a -rpckeepalive and disable RPC use of HTTP persistent connections.Gregory Maxwell
It turns out that some miners have been staying with old versions of Bitcoin Core because their software behaves poorly with persistent connections and the Bitcoin Core thread and connection limits. What happens is that underlying HTTP libraries leave connections open invisibly to their users and then the user runs into the default four thread limit. This looks like Bitcoin Core is unresponsive to RPC. There are many things that should be improved in Bitcoin Core's behavior here, e.g. supporting more concurrent connections, not tying up threads for idle connections, disconnecting kept-alive connections when limits are reached, etc. All are fairly big, risky changes. Disabling keep-alive is a simple workaround. It's often not easy to turn off the keep-alive support in the client where it may be buried in some platform library. If you are one of the few who really needs persistent connections you probably know that you want them and can find a switch; while if you don't and the misbehavior is hitting you it is hard to discover the source of your problems is keepalive related. Given that it is best to default to off until they're handled better. Github-Merge: #5655 Rebased-From: 16a5c18cea7330bd68dc9d2f768eb518af88795b 56c1093dae0c523f9f643f00c67414691272a983 1dd8ee72afc26191da51d8d3a5590eab7c9368f6
2015-01-08Fix smartfees test for change to relay policySuhas Daftuar
Github-Pull: #5575 Rebased-From: 1eb1e65f092dc2b6e1067d2018440fbbd997fa5c
2015-01-07Require sufficent priority for relay of free transactionsPieter Wuille
Rebased-From: 1c52aad540ec1370db60fd68fc3485413e3cb8e1 Github-Pull: #5535
2014-12-11Merge pull request #5267Wladimir J. van der Laan
34318d7 RPC-test based on invalidateblock for mempool coinbase spends (Gavin Andresen) 7fd6219 Make CTxMemPool::remove more effecient by avoiding recursion (Matt Corallo) b7b4318 Make CTxMemPool::check more thourough by using CheckInputs (Matt Corallo) 723d12c Remove txn which are invalidated by coinbase maturity during reorg (Matt Corallo) 868d041 Remove coinbase-dependant transactions during reorg. (Matt Corallo)
2014-12-09[REST] /rest/block response with full tx detailsJonas Schnelli
- rest block request returns full unfolded tx details - /rest/block/notxdetails/<HASH> returns block where transactions are only represented by its hash
2014-12-09Port of walletbackup.sh to Python.mrbandrews
2014-12-08RPC-test based on invalidateblock for mempool coinbase spendsGavin Andresen
2014-12-06[RPC] add rpc-test for http keep-alive (persistent connections)Jonas Schnelli
2014-12-05Fix missing python2 in rpc-testsMatt Corallo
2014-12-03Merge pull request #5407Wladimir J. van der Laan
9e56532 Coinbases-in-mempool regression test (Gavin Andresen)
2014-12-02Coinbases-in-mempool regression testGavin Andresen
Immature coinbase spends are allowed in the memory pool if they can be mined in the next block. They are not allowed in the memory pool if they cannot be mined in the next block. This regression test tests those edge cases.
2014-12-02Merge pull request #5369Gavin Andresen
b2d0162 Test resurrecting memory pool transactions during chain re-org (Gavin Andresen) 3dd8ed7 Delay writing block indexes in invalidate/reconsider (Pieter Wuille) 798faec Add 'invalidateblock' and 'reconsiderblock' RPC commands. (Pieter Wuille)
2014-12-02Test resurrecting memory pool transactions during chain re-orgGavin Andresen
Builds on #5316.
2014-12-02Fix rest.py test after #5376Wladimir J. van der Laan
2014-12-01[REST] add REST interface tests in rpc-test sectionJonas Schnelli
2014-12-01Merge pull request #5386Wladimir J. van der Laan
1b91be4 Report status of chain tips (Pieter Wuille)
2014-11-27Report status of chain tipsPieter Wuille
2014-11-27Fix python usage for arch's broken maintainersMatt Corallo
2014-11-24Merge pull request #5335Gavin Andresen
7e615f5 Fixed mempool sync after sending a transaction (Suhas Daftuar)
2014-11-24Merge pull request #1816Wladimir J. van der Laan
b867e40 CreateNewBlock: Stick height in coinbase so we pass template sanity check (Luke Dashjr) 60755db submitblock: Check for duplicate submissions explicitly (Luke Dashjr) bc6cb41 QA RPC tests: Add tests block block proposals (Luke Dashjr) 9765a50 Implement BIP 23 Block Proposal (Luke Dashjr) 3dcbb9b Abstract DecodeHexBlk and BIP22ValidationResult functions out of submitblock (Luke Dashjr) 132ea9b miner_tests: Disable checkpoints so they don't fail the subsidy-change test (Luke Dashjr) df08a62 TestBlockValidity function for CBlock proposals (used by CreateNewBlock) (Luke Dashjr) 4ea1be7 CreateNewBlock and miner_tests: Also check generated template is valid by CheckBlockHeader, ContextualCheckBlockHeader, CheckBlock, and ContextualCheckBlock (Luke Dashjr) a48f2d6 Abstract context-dependent block checking from acceptance (Luke Dashjr)
2014-11-21Merge pull request #5333Wladimir J. van der Laan
e4ef724 Edited rpc-tests to run python script not shell script. (mrbandrews) 189fb52 Port of wallet.sh to python (wallet.py). (mrbandrews)
2014-11-20Fixed mempool sync after sending a transactionSuhas Daftuar
2014-11-20Edited rpc-tests to run python script not shell script.mrbandrews
2014-11-20Port of wallet.sh to python (wallet.py).mrbandrews
Also included are minor edits to util.py to create a clean blockchain and add a parameter to gather_inputs to specify number of confirmations.
2014-11-20QA RPC tests: Add tests block block proposalsLuke Dashjr
2014-11-19Port/fix txnmall.sh regression testGavin Andresen
Ported txnmall.sh to Python, and updated to match recent transaction malleability changes. I also modified it so it tests both double-spending confirmed and unconfirmed (only-in-mempool) transactions. Renamed to txn_doublespend, since that is really what is being tested. And told the pull-tester to run both variations on this test.
2014-11-18Merge pull request #5280Gavin Andresen
3c30f27 travis: disable rpc tests for windows until they're not so flaky (Cory Fields) daf03e7 RPC tests: create initial chain with specific timestamps (Gavin Andresen) a8b2ce5 regression test only setmocktime RPC call (Gavin Andresen)
2014-11-17travis: disable rpc tests for windows until they're not so flakyCory Fields
2014-11-17RPC tests: create initial chain with specific timestampsGavin Andresen
Use setmocktime to create the initial block chain with 10-minute-apart-blocks starting 1 Jan 2014.
2014-11-17Merge pull request #5237Wladimir J. van der Laan
2db4c8a Fix node ranges in the test framework. (Daniel Kraft)
2014-11-14don't override dir() in qa rpc testsBryan Bishop
Replace "dir" with "dirname" in util.py in qa/rpc-tests/ because "dir" is the name of a function in python.
2014-11-13travis: temporarily disable the forknotify testCory Fields
It appears to be breaking randomly on Windows
2014-11-07gather_inputs: use correct variable in error messagedexX7
"amount" and "fee" do not exist (anymore?).
2014-11-07Fix node ranges in the test framework.Daniel Kraft
2014-10-31tests: replace the old (unused since Travis) tests with new rpc test scriptsCory Fields
2014-10-31tests: remove old pull-tester scriptsCory Fields
They're unused since the switch to Travis
2014-10-31tests: fix forknotify.py on windowsCory Fields
Windows interprets 'foo.txt' as a literal filename while "foo.txt" is treated as expected.
2014-10-31tests: allow rpc-tests to get filenames for bitcoind and bitcoin-cli from ↵Cory Fields
the environment This will allow for windows tests to run with bitcoind.exe and bitcoin-cli.exe
2014-10-27Merge pull request #5139Gavin Andresen
9f87325 Start with tidier cache directories (Gavin Andresen) Signed-off-by: Gavin Andresen <gavinandresen@gmail.com>
2014-10-27Merge pull request #5121Wladimir J. van der Laan
214091d Update license in pull-tester and rpc-tests (Michael Ford)
2014-10-24Start with tidier cache directoriesGavin Andresen
Remove more files from the cached, 200-block-chain data directories.
2014-10-24Merge pull request #5132Gavin Andresen
2290ed0 Work around #5113. (Daniel Kraft) dcb9846 Extend getchaintips RPC test. (Daniel Kraft) Signed-off-by: Gavin Andresen <gavinandresen@gmail.com>
2014-10-24--tracerpc option for regression testsGavin Andresen
Run tests with --tracerpc and all RPC calls will dump to the console. Very helpful for debugging.
2014-10-24Work around #5113.Daniel Kraft
2014-10-24Extend getchaintips RPC test.Daniel Kraft
Add the capability to simulate network splits to the RPC test framework and use it to do more extensive testing of 'getchaintips'.
2014-10-23Update license in pull-tester and rpc-testsMichael Ford
Add missing copyright/license header where necessary
2014-10-14Fix large reorgsPieter Wuille
2014-10-10rpc-tests: don't spew non-errors to stdoutCory Fields
There's a brief race here, the process might've already exited and cleaned up after itself. If that's the case, reading from the pidfile will harmlessly fail. Keep those quiet.
2014-10-09Trigger -alertnotify if network is upgrading without youGavin Andresen
This adds a -regetest-only undocumented (for regression testing only) command-line option -blockversion=N to set block.nVersion. Adds to the "has the rest of the network upgraded to a block.nVersion we don't understand" code so it calls -alertnotify when 51 of the last 100 blocks are up-version. But it only alerts once, not with every subsequent new, upversion block. And adds a forknotify.py regression test to make sure it works. Tested using forknotify.py: Before adding CAlert::Notify, get: Assertion failed: -alertnotify did not warn of up-version blocks Before adding code to only alert once: Assertion failed: -alertnotify excessive warning of up-version blocks After final code in this pull: Tests successful