aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-03-31Make threshold for flushing more conservative.Alex Morcos
Always leave a reasonable buffer of 50MB for usage from newly connected block (once over 50%) and increase the high water mark buffer to 200MB.
2017-03-31Lower default memory footprint slightlyAlex Morcos
2017-03-31Make pcoinsTip memory calculations consistentAlex Morcos
Since we are more accurately measuring pcoinsTip peak usage at twice the current in dynamic usage, it makes sense to double the default (this will lead to the same effective usage and peak usage as previously). We should also double the buffer used to avoid flushing if above 90% but still sufficient space remaining.
2017-03-31scheduler: fix sub-second precision with boost < 1.50Cory Fields
2017-03-31Merge #10095: refactor: Move GetDifficulty out of `rpc/server.h`Wladimir J. van der Laan
f885b67 refactor: Make rest.cpp dependency on `*toJSON` in `blockchain.cpp` explicit (Wladimir J. van der Laan) 8d8f28d refactor: Move RPCNotifyBlockChange out of `rpc/server.h` (Wladimir J. van der Laan) e6dcfee refactor: Move GetDifficulty out of `rpc/server.h` (Wladimir J. van der Laan) Tree-SHA512: fc2656611d18442f2fddba5ac1554d958151f6785c2039afdfc36735d7e71592d9686ff6cc7b2ad95180071d7514470e62c52d697c5a1e88f851bddaf5942edb
2017-03-31Merge #10126: Compensate for memory peak at flush timeWladimir J. van der Laan
7228ce8 Compensate for memory peak at flush time (Pieter Wuille) Tree-SHA512: 97e9848410fab061402c85d8440c54a50dd8a0203b2ea194013ea116700a6dc1b4b26b8c5f9c9c68c1f5c6b935c5d6c737437c1911b003d9ff5445c570cd449d
2017-03-31Merge #10120: util: Work around (virtual) memory exhaustion on 32-bit w/ glibcWladimir J. van der Laan
625488a util: Work around (virtual) memory exhaustion on 32-bit w/ glibc (Wladimir J. van der Laan) Tree-SHA512: 99b610a8cf9561998af90e16fc19320fddd30c987e8f33325d63df0f56d70235b94d9482e80f28154d4b33a3ecf4961686380c444ec18d1da5e8804a8b6f4de1
2017-03-31Merge #10130: bitcoin-tx input verification (awemany, jnewbery)Wladimir J. van der Laan
19ecd1e Add tests for bitcoin-tx input checking (John Newbery) 21704f6 Check stderr when testing bitcoin-tx (John Newbery) eb66bf9 bitcoin-tx: Fix missing range check (Awemany) Tree-SHA512: 08c6153cf7dd5e0ecd23e24d81af4c0f17534d484179dd91dcd78d42df14c91284341d31cc695469a64c507bce72c34231748b7cabb7df8f1051d228fb0a62c5
2017-03-31Merge #10090: Update bitcoin.conf with example for pruningMarcoFalke
c0651cc Update bitcoin.conf with example for pruning (Kyle Honeycutt) Tree-SHA512: f27180ac5d5a4bd32c7a63de156ca14eb8068509e64d386ca84ee16d0dacfa8e1bab9a8e7b88175fae12c8d823f71f8705d413f224a15d5aa7cf059f416fa023
2017-03-30Add tests for bitcoin-tx input checkingJohn Newbery
2017-03-30Check stderr when testing bitcoin-txJohn Newbery
2017-03-30bitcoin-tx: Fix missing range checkAwemany
The number of arguments is not checked MutateTxAddOutAddr(..), meaning that > ./bitcoin-tx -create outaddr= accessed the vStrInputParts vector beyond its bounds. This also includes work by jnewbery to check the inputs for MutateTxAddPubKey()
2017-03-30Decrease testcase sizes in cuckoocache testsJeremy Rubin
2017-03-30Merge #10114: [tests] sync_with_ping should assert that ping hasn't timed outWladimir J. van der Laan
6a18bb9 [tests] sync_with_ping should assert that ping hasn't timed out (John Newbery) 6426716 Add send_await_disconnect() method to p2p-compactblocks.py (John Newbery) Tree-SHA512: d0eeb066ed3f6aef594caaa693280d10abedac9b719e795c9659e52ddae315085eb2845131644793007e30a16e3e0bf3e3925b40ca2ae023cad923c5ab32df25
2017-03-30Compensate for memory peak at flush timePieter Wuille
2017-03-30Merge #9959: Mining: Prevent slowdown in CreateNewBlock on large mempoolsWladimir J. van der Laan
011124a Update benchmarking with package statistics (Suhas Daftuar) 42cd8c8 Add benchmarking for CreateNewBlock (Suhas Daftuar) eed816a Mining: return early when block is almost full (Suhas Daftuar) Tree-SHA512: c0d8f71e4e0441acf3f4ca12f8705e413b59b323659346a447145653def71710537fb4c6d80cad8e36d68b0aabf19c92e9eab7135a8897b053ed58720856cdda
2017-03-30[tests] sync_with_ping should assert that ping hasn't timed outJohn Newbery
sync_with_ping currently returns false if the timeout expires, and it is the caller's responsibility to fail the test. However, none of the tests currently assert on sync_with_ping()'s return code. This commit adds an assert to sync_with_ping so the test will fail if the timeout expires. This commit also removes all the duplicate implementations of sync_with_ping() from the individual tests.
2017-03-30Add send_await_disconnect() method to p2p-compactblocks.pyJohn Newbery
p2p-compactblocks was incorrectly using sync_with_ping() when sending in invalid block. The node would disconnect us and never respond to the ping, so the sync_with_ping would just time out after 30 seconds and continue with the test. This commit adds a send_await_disconnect() method that sends the message, and then waits for the node to disconnect us. In this commit I've added the method to p2p-compactblocks.py, but a future commit could move it to mininode since it could be useful more generally. This commit reduces the p2p-compactblock runtime by 30 seconds.
2017-03-30util: Work around (virtual) memory exhaustion on 32-bit w/ glibcWladimir J. van der Laan
glibc-specific: On 32-bit systems set the number of arenas to 1. By default, since glibc 2.10, the C library will create up to two heap arenas per core. This is known to cause excessive virtual address space usage in our usage. Work around it by setting the maximum number of arenas to 1.
2017-03-30Merge #10109: Remove SingleNodeConnCBMarcoFalke
159fe88 Remove SingleNodeConnCB (John Newbery) Tree-SHA512: 2fc3d060f4ac9445e657134919a871c46987d53eb98d23a858ee9515fc997be7a81923f08f2a37d07d123b55b912ae82ffa0f820d16297b044ab24dcf0788a8a
2017-03-29Update bitcoin.conf with example for pruningKyle Honeycutt
This option is becoming more popular recently, and I propose an example to be shown in the bitcoin.conf. pruning comments updated and corrected pruning comments Revised details on pruning in bitcoin.conf Revised details on pruning in bitcoin.conf spelling and space spelling and space add details on pruning in bitcoin.conf
2017-03-29Datadir option in linearize scriptsAndrew Chow
Adds a datadir configuration option to the linearize scripts to allow the script to use the RPC cookie instead of requiring the user to set a rpcuser and rpcpassword for the rpc server.
2017-03-29Update benchmarking with package statisticsSuhas Daftuar
2017-03-29Add benchmarking for CreateNewBlockSuhas Daftuar
2017-03-29Mining: return early when block is almost fullSuhas Daftuar
2017-03-29Merge #9294: Use internal HD chain for change outputs (hd split)Wladimir J. van der Laan
4115af7 Fix rebase issue where pwalletMain was used instead of pwallet Ser./Deser. nInternalChainCounter as last element (Jonas Schnelli) 9382f04 Do not break backward compatibility during wallet encryption (Jonas Schnelli) 1df08d1 Add assertion for CanSupportFeature(FEATURE_HD_SPLIT) (Jonas Schnelli) cd468d0 Define CWallet::DeriveNewChildKey() as private (Jonas Schnelli) ed79e4f Optimize GetOldestKeyPoolTime(), return as soon as we have both oldest keys (Jonas Schnelli) 771a304 Make sure we set the wallets min version to FEATURE_HD_SPLIT at the very first point (Jonas Schnelli) 1b3b5c6 Slightly modify fundrawtransaction.py test (change getnewaddress() into getrawchangeaddress()) (Jonas Schnelli) 003e197 Remove FEATURE_HD_SPLIT bump TODO (Jonas Schnelli) d9638e5 Overhaul the internal/external key derive switch (Jonas Schnelli) 1090502 Fix superfluous cast and code style nits in RPC wallet-hd.py test (Jonas Schnelli) 58e1483 CKeyPool avoid "catch (...)" in SerializationOp (Jonas Schnelli) e138876 Only show keypoolsize_hd_internal if HD split is enabled (Jonas Schnelli) add38d9 GetOldestKeyPoolTime: if HD & HD Chain Split is enabled, response max(oldest-internal-key, oldest-external-key) (Jonas Schnelli) dd526c2 Don't switch to HD-chain-split during wallet encryption of non HD-chain-split wallets (Jonas Schnelli) 79df9df Switch to 100% for the HD internal keypool size (Jonas Schnelli) bcafca1 Make sure we always generate one keypool key at minimum (Jonas Schnelli) d0a627a Fix issue where CDataStream->nVersion was taken a CKeyPool record version (Jonas Schnelli) 9af8f00 Make sure we hand out keypool keys if HD_SPLIT is not enabled (Jonas Schnelli) 469a47b Make sure ReserveKeyFromKeyPool only hands out internal keys if HD_SPLIT is supported (Jonas Schnelli) 05a9b49 Fix wrong keypool internal size in RPC getwalletinfo help (Jonas Schnelli) 01de822 Removed redundant IsLocked() check in NewKeyPool() (Jonas Schnelli) d59531d Immediately return setKeyPool's size if HD or HD_SPLIT is disabled or not supported (Jonas Schnelli) 02592f4 [Wallet] split the keypool in an internal and external part (Jonas Schnelli) Tree-SHA512: 80d355d5e844b48c3163b56c788ab8b5b5285db0ceeb19858a3ef517d5a702afeca21dbae526d7b8fb4101c2a745af1d92bf557c40cf516780f17992bf678c1a
2017-03-29Merge #10107: Remove unused variable. Remove accidental trailing semicolons ↵MarcoFalke
in Python code 85de9d4 Remove call to gettransaction(...) where the result is unused (practicalswift) bd02422 Remove accidental trailing semicolons in Python code (practicalswift) Tree-SHA512: 23ffb1ccc29bf73b334d62b274ab614cb40e2969147adccacbaecc69a410a661a9f2dd9e9cbc8a70bd2c7f345095efc68743f288eb866315e0e8731441ba01d0
2017-03-29Merge #10084: rpc: Rename first named arg of createrawtransactionWladimir J. van der Laan
fa55853 rpc: Rename first named arg of createrawtransaction (MarcoFalke) Tree-SHA512: f2e07183f2503344e676e08fe0fd73e995d7c6fda3fc11c64116208dec8e445f0627583dfba85014129b6f2dc7e253b9d760e57e66811272db89e9ba25ce6dbc
2017-03-29refactor: Make rest.cpp dependency on `*toJSON` in `blockchain.cpp` explicitWladimir J. van der Laan
2017-03-29Merge #10088: Trivial: move several relay options into the relay help groupPieter Wuille
0fb2887 Move several relay options into the Relay help group (Jameson Lopp) Tree-SHA512: 31fdfd8c741adb6fe6806a28955f0fbbc9360b1d8c3d8a28684794822f1b3231fffab93357357d986b81a4532c9eeabb79e5ede9378ff3ad8930ceb6588d9eb6
2017-03-29Merge #10086: Trivial: move rpcserialversion into RPC option groupPieter Wuille
1403b1a move rpcserialversion into RPC option group (Jameson Lopp) Tree-SHA512: c56cc318ea09ac27a8e12b8b9a1006992dcb969e6112df5046975b548aad30f729a4204f4893c8fe9bf5b50442eba6c75b5f8dd6d1261cf83c938474e93e9a7e
2017-03-28Merge #10108: ApproximateBestSubset should take inputs by reference, not valuePieter Wuille
5335132 ApproximateBestSubset should take inputs by reference, not value (Ryan Havar) Tree-SHA512: 0990de7efbeba8ef9b70ccee45298c2fb982459a64e44b6395f7d28808740315d2d26e87103d4848677fc519cdf3247c1bde498ecb2e239e18134cb933e6b661
2017-03-28No need to use OpenSSL malloc/freeThomas Snider
2017-03-28Make forknotify.py more robustJohn Newbery
forknotify would intermittently fail because the alert file was not being written fast enough. This commit adds a timeout so the test does not fail immediately.
2017-03-28Wait for connection to open in bip9-softforks.pyJohn Newbery
bip9-sofforks.py stop-starts the bitcoind node twice during the test run, but it doesn't wait for the connection from mininode to open before continuing with the test. This leads to race conditions where the test can fail getblocktemplate() because it has no p2p connections.
2017-03-28Remove SingleNodeConnCBJohn Newbery
This commit merges the NodeConnCB and SingleNodeConnCB into a single class (called NodeConnCB). The original intent for the NodeConnCB was to be able to have a python 'mininode' connect to multiple running bitcoinds. This has never been used and can be achieved more easily by having multiple NodeConns backed by a common datastore if it is ever needed. The changes in mininode.py are just code moves (and merging the two classes into a single class). The code changes in the individual test cases are changing the subclasses to subclass from NodeConnCB instead of SingleNodeConnCB. There is a lot of duplicate code in the subclasses that can be removed in future commits.
2017-03-28ApproximateBestSubset should take inputs by reference, not valueRyan Havar
2017-03-28Remove call to gettransaction(...) where the result is unusedpracticalswift
2017-03-28Remove accidental trailing semicolons in Python codepracticalswift
2017-03-28Merge #10105: [tests] fixup - make all Travis test runs quiet, non just cron ↵MarcoFalke
job runs 91f1f19 Make all Travis test runs quiet, non just cron job runs (John Newbery) Tree-SHA512: 747cca83c836b25d8dad85c5d3643002c8cbe2d37dcd3bb8bb95049c487a02910a4fa0823003770ab94c11f289635722b194de18a167edb5cf3c7352a860067c
2017-03-28Make all Travis test runs quiet, non just cron job runsJohn Newbery
2017-03-28Merge #10076: [qa] combine_logs: Use ordered list for logfilesMarcoFalke
fa4535d [qa] combine_logs: Use ordered list for logfiles (MarcoFalke) Tree-SHA512: 66da6f2659018d24b1cac1f6d2ee8603c2c6f15ce5aff456e8e4b208874e97c7046b97112046d5b45bfd777b405771a3ad0a55036c4f4cdeec06842563af2c4d
2017-03-28Merge #10096: Check that all test scripts in test/functional are being runMarcoFalke
29d6634 Check that all test scripts in test/functional are being run (John Newbery) Tree-SHA512: 9231d3a119632be031c51c4f7e95a8adae58489a8ec36fc967d499c0708bae2941a3bf28f11dcd4efd59141eb54c3c920f2629f5cd8a0139d30397a19591666d
2017-03-28Merge #9780: Suppress noisy output from qa tests in TravisMarcoFalke
8c7288c Print out the final 1000 lines of test_framework.log if test fails (John Newbery) 6d780b1 Update travis config to run rpc-tests.py in quiet mode (John Newbery) 55992f1 Add --quiet option to suppress rpc-tests.py output (John Newbery) Tree-SHA512: ab080458a07a9346d3b3cbc8ab59b73cea3d4010b1cb0206bb5fade0aaac7562c623475d0a02993f001b22ae9d1ba68e2d0d1a3645cea7e79cc1045b42e2ce3a
2017-03-28Fix rebase issue where pwalletMain was used instead of pwalletJonas Schnelli
Ser./Deser. nInternalChainCounter as last element
2017-03-27Print out the final 1000 lines of test_framework.log if test failsJohn Newbery
2017-03-27Make qt wallet test compatible with qt4Russell Yanofsky
Unlike Qt5, the Qt4 signals implementation doesn't allow a signal to be directly connected to a c++ lambda expression. Work around this by defining a Callback QObject with a virtual method that can forward calls to a closure. The Qt4 error was reported by Patrick Strateman <patrick.strateman@gmail.com> in https://github.com/bitcoin/bitcoin/pull/10039#issuecomment-289248763
2017-03-27Update travis config to run rpc-tests.py in quiet modeJohn Newbery
2017-03-27Add --quiet option to suppress rpc-tests.py outputJohn Newbery
rpt-tests.py outputs progress information as it runs tests. This commit adds a --quiet option that suppresses that progress output and only prints a summary of results (and logs from failed tests).
2017-03-27Check that all test scripts in test/functional are being runJohn Newbery
This commit checks that all of the python files in the test/functional directory are listed in test_runner.py.