aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge #9408: Allow shutdown during LoadMempool, dump only when necessaryPieter Wuille2017-01-063-1/+8
|\ | | | | | | | | 325e400 [Qt] Do proper shutdown (Jonas Schnelli) 9479f8d Allow shutdown during LoadMempool, dump only when necessary (Jonas Schnelli)
| * [Qt] Do proper shutdownJonas Schnelli2017-01-051-0/+2
| |
| * Allow shutdown during LoadMempool, dump only when necessaryJonas Schnelli2016-12-232-1/+6
| |
* | Merge #9319: Break addnode out from the outbound connection limits.Pieter Wuille2017-01-066-13/+54
|\ \ | | | | | | | | | | | | | | | 032ba3f RPC help documentation for addnode peerinfo. (Gregory Maxwell) 90f13e1 Add release notes for addnode changes. (Gregory Maxwell) 50bd12c Break addnode out from the outbound connection limits. (Gregory Maxwell)
| * | RPC help documentation for addnode peerinfo.Gregory Maxwell2017-01-052-0/+6
| | | | | | | | | | | | Also adds a comment about the netgroup exclusion behavior.
| * | Break addnode out from the outbound connection limits.Gregory Maxwell2017-01-056-13/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously addnodes were in competition with outbound connections for access to the eight outbound slots. One result of this is that frequently a node with several addnode configured peers would end up connected to none of them, because while the addnode loop was in its two minute sleep the automatic connection logic would fill any free slots with random peers. This is particularly unwelcome to users trying to maintain links to specific nodes for fast block relay or purposes. Another result is that a group of nine or more nodes which are have addnode configured towards each other can become partitioned from the public network. This commit introduces a new limit of eight connections just for addnode peers which is not subject to any of the other connection limitations (including maxconnections). The choice of eight is sufficient so that under no condition would a user find themselves connected to fewer addnoded peers than previously. It is also low enough that users who are confused about the significance of more connections and have gotten too copy-and-paste happy will not consume more than twice the slot usage of a typical user. Any additional load on the network resulting from this will likely be offset by a reduction in users applying even more wasteful workaround for the prior behavior. The retry delays are reduced to avoid nodes sitting around without their added peers up, but are still sufficient to prevent overly aggressive repeated connections. The reduced delays also make the system much more responsive to the addnode RPC. Ban-disconnects are also exempted for peers added via addnode since the outbound addnode logic ignores bans. Previously it would ban an addnode then immediately reconnect to it. A minor change was also made to CSemaphoreGrant so that it is possible to re-acquire via an object whos grant was moved.
* | | Merge #9138: Improve fee estimationPieter Wuille2017-01-0511-76/+94
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 44b64b9 Fix edge case with stale fee estimates (Alex Morcos) 78ae62d Add clarifying comments to fee estimation (Alex Morcos) 5fe0f47 Add extra logging to processBlock in fee estimation. (Alex Morcos) dc008c4 Add IsCurrentForFeeEstimatation (Alex Morcos) ebafdca Pass pointers to existing CTxMemPoolEntries to fee estimation (Alex Morcos) d825838 Always update fee estimates on new blocks. (Alex Morcos) 6f06b26 rename bool to validFeeEstimate (Alex Morcos) 84f7ab0 Remove member variable hadNoDependencies from CTxMemPoolEntry (Alex Morcos) 60ac00d Don't track transactions at all during IBD. (Alex Morcos) 4df4479 Remove extraneous LogPrint from fee estimation (Alex Morcos)
| * | | Fix edge case with stale fee estimatesAlex Morcos2017-01-041-1/+3
| | | |
| * | | Add clarifying comments to fee estimationAlex Morcos2017-01-042-1/+6
| | | |
| * | | Add extra logging to processBlock in fee estimation.Alex Morcos2017-01-042-10/+23
| | | |
| * | | Add IsCurrentForFeeEstimatationAlex Morcos2017-01-042-1/+20
| | | | | | | | | | | | | | | | Make a more conservative notion of whether the node is caught up to the rest of the network and only count transactions as fee estimation data points if the node is caught up.
| * | | Pass pointers to existing CTxMemPoolEntries to fee estimationAlex Morcos2017-01-043-9/+9
| | | |
| * | | Always update fee estimates on new blocks.Alex Morcos2017-01-045-13/+6
| | | | | | | | | | | | | | | | All decisions about whether the transactions are valid data points are made at the time the transaction arrives. Updating on blocks all the time will now cause stale fee estimates to decay quickly when we restart a node.
| * | | rename bool to validFeeEstimateAlex Morcos2017-01-044-9/+9
| | | |
| * | | Remove member variable hadNoDependencies from CTxMemPoolEntryAlex Morcos2017-01-049-32/+19
| | | | | | | | | | | | | | | | Fee estimation can just check its own mapMemPoolTxs to determine the same information. Note that now fee estimation for block processing must happen before those transactions are removed, but this shoudl be a speedup.
| * | | Don't track transactions at all during IBD.Alex Morcos2017-01-041-1/+3
| | | | | | | | | | | | | | | | This was an oversight, where blocks and mempool tracking were ignored during IBD, but transactions that arrived during IBD but were included in blocks after IBD were not ignored.
| * | | Remove extraneous LogPrint from fee estimationAlex Morcos2017-01-042-11/+8
| | | | | | | | | | | | | | | | Once priority estimation was removed, not all transactions in the mempool are tracked in the fee estimation mempool tracking. So there is no error if a transaction is not found for removal.
* | | | Merge #8610: Share unused mempool memory with coincachePieter Wuille2017-01-052-5/+9
|\ \ \ \ | | | | | | | | | | | | | | | ba3cecf Share unused mempool memory with coincache (Pieter Wuille)
| * | | | Share unused mempool memory with coincachePieter Wuille2016-12-222-5/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the mempool is not completely full, treat the difference between the maximum size and the actual usage as available for the coin cache. This also changes the early flush trigger from (usage > 0.9 * space) to (usage > 0.9 * space && usage > space - 100MB). This means we're not permanently leaving 10% of the space unused when the space is large.
* | | | | Merge #9465: [Wallet] Do not perform ECDSA signing in the fee calculation ↵Pieter Wuille2017-01-051-31/+46
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | inner loop. b3d7b1c Wallet: Do not perform ECDSA in the fee calculation inner loop. (Gregory Maxwell)
| * | | | | Wallet: Do not perform ECDSA in the fee calculation inner loop.Gregory Maxwell2017-01-051-31/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Performing signing in the inner loop has terrible performance when many passes through are needed to complete the selection. Signing before the algorithm is complete also gets in the way of correctly setting the fee (e.g. preventing over-payment when the fee required goes down on the final selection.) Use of the dummy might overpay on the signatures by a couple bytes in uncommon cases where the signatures' DER encoding is smaller than the dummy: Who cares?
* | | | | | Merge #9413: [CoinControl] Allow non-wallet owned change addressesJonas Schnelli2017-01-051-0/+13
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | 54f8026 [CoinControl] Allow non-wallet owned change addresses (Jonas Schnelli)
| * | | | | | [CoinControl] Allow non-wallet owned change addressesJonas Schnelli2016-12-231-0/+13
| | |_|_|_|/ | |/| | | |
* | | | | | Merge #9312: Increase mempool expiry time to 2 weeksWladimir J. van der Laan2017-01-051-1/+1
|\ \ \ \ \ \ | |_|_|_|_|/ |/| | | | | | | | | | | 5f0e27f Increase mempool expiry time to 2 weeks (Alex Morcos)
| * | | | | Increase mempool expiry time to 2 weeksAlex Morcos2016-12-091-1/+1
| | | | | |
* | | | | | Merge #8747: [rpc] Fix transaction size comments and RPC help text.Wladimir J. van der Laan2017-01-053-8/+10
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | d29505d Fix transaction size comments. Size now refers to virtual size as defined in BIP141. (jonnynewbs)
| * | | | | | Fix transaction size comments. Size now refers to virtual size as defined in ↵jonnynewbs2016-12-083-8/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | BIP141.
* | | | | | | Merge #9281: Refactor: Remove using namespace <xxx> from bench/ & test/ sourcesMarcoFalke2017-01-0522-290/+245
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 73f4119 Refactoring: Removed using namespace <xxx> from bench/ and test/ source files. (Karl-Johan Alm)
| * | | | | | | Refactoring: Removed using namespace <xxx> from bench/ and test/ source files.Karl-Johan Alm2017-01-0222-290/+245
| | | | | | | |
* | | | | | | | Merge #9387: [Refactor] RAII of libevent stuff using unique ptrs with deletersWladimir J. van der Laan2017-01-055-22/+160
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 05a55a6 Added EVENT_CFLAGS to test makefile to explicitly include libevent headers. (Karl-Johan Alm) 280a559 Added some simple tests for the RAII-style events. (Karl-Johan Alm) 7f7f102 Switched bitcoin-cli.cpp to use RAII unique pointers with deleters. (Karl-Johan Alm) e5534d2 Added std::unique_ptr<> wrappers with deleters for libevent modules. (Karl-Johan Alm)
| * | | | | | | | Added EVENT_CFLAGS to test makefile to explicitly include libevent headers.Karl-Johan Alm2017-01-041-1/+1
| | | | | | | | |
| * | | | | | | | Added some simple tests for the RAII-style events.Karl-Johan Alm2016-12-213-1/+91
| | | | | | | | |
| * | | | | | | | Switched bitcoin-cli.cpp to use RAII unique pointers with deleters.Karl-Johan Alm2016-12-201-20/+12
| | | | | | | | |
| * | | | | | | | Added std::unique_ptr<> wrappers with deleters for libevent modules.Karl-Johan Alm2016-12-202-0/+56
| | | | | | | | |
* | | | | | | | | Merge #9417: Do not evaluate hidden LogPrint argumentsWladimir J. van der Laan2017-01-051-8/+9
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 407cdd6 Do not evaluate hidden LogPrint arguments (Pieter Wuille)
| * | | | | | | | | Do not evaluate hidden LogPrint argumentsPieter Wuille2016-12-231-8/+9
| | |_|_|_|_|_|/ / | |/| | | | | | |
* | | | | | | | | Merge #9474: Mark the minconf parameter to move as ignoredWladimir J. van der Laan2017-01-051-1/+1
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ce370c1 Mark the minconf parameter to move as ignored (Pieter Wuille)
| * | | | | | | | | Mark the minconf parameter to move as ignoredPieter Wuille2017-01-041-1/+1
| | |_|_|_|_|_|_|/ | |/| | | | | | |
* | | | | | | | | Merge #9475: Let autoconf detect presence of EVP_MD_CTX_newWladimir J. van der Laan2017-01-051-2/+2
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0388afe Let autoconf detect presence of EVP_MD_CTX_new (Luke Dashjr)
| * | | | | | | | | Let autoconf detect presence of EVP_MD_CTX_newLuke Dashjr2017-01-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes LibreSSL compatibility
* | | | | | | | | | Merge #9107: Safer modify new coinsPieter Wuille2017-01-044-62/+181
|\ \ \ \ \ \ \ \ \ \ | |_|/ / / / / / / / |/| | | | | | | | | | | | | | | | | | | b50cd7a Fix dangerous condition in ModifyNewCoins. (Alex Morcos)
| * | | | | | | | | Fix dangerous condition in ModifyNewCoins.Alex Morcos2017-01-044-62/+181
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We were marking coins FRESH before being sure they were not overwriting dirty undo data. This condition was never reached in existing code because undo data was always flushed before UpdateCoins was called with new transactions, but could have been exposed in an otherwise safe refactor. Clarify in the comments the assumptions made in ModifyNewCoins. Add ability to undo transactions to UpdateCoins unit test. Thanks to Russ Yanofsky for suggestion on how to make logic clearer and fixing up the ccoins_modify_new test cases.
* | | | | | | | | | Merge #9457: [qt] Select more files for translationWladimir J. van der Laan2017-01-043-27/+91
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | facf3e7 [qt] `make translate` (MarcoFalke) fae26e8 [qt] Add more sources to translate (MarcoFalke)
| * | | | | | | | | | [qt] `make translate`MarcoFalke2017-01-042-25/+89
| | | | | | | | | | |
| * | | | | | | | | | [qt] Add more sources to translateMarcoFalke2017-01-041-2/+2
| | | | | | | | | | |
* | | | | | | | | | | Merge #9470: qt: Set (count) placeholder in sendcoinsdialog to notranslateMarcoFalke2017-01-042-11/+6
|\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 388ea19 qt: Set (count) placeholder in sendcoinsdialog to notranslate (Wladimir J. van der Laan)
| * | | | | | | | | | | qt: Set (count) placeholder in sendcoinsdialog to notranslateWladimir J. van der Laan2017-01-042-11/+6
| | | | | | | | | | | |
* | | | | | | | | | | | Merge #9401: Make rpcauth help message clearer, add example in example .confMarcoFalke2017-01-041-1/+1
|\ \ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | 0513c70 Make rpcauth help message clearer, add example in example .conf (Gregory Sanders)
| * | | | | | | | | | | Make rpcauth help message clearer, add example in example .confGregory Sanders2016-12-211-1/+1
| | | | | | | | | | | |
* | | | | | | | | | | | Merge #9396: Updated listsinceblock rpc documentationWladimir J. van der Laan2017-01-041-0/+1
|\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3f67972 updated listsinceblock rpc docs (accraze)