aboutsummaryrefslogtreecommitdiff
path: root/src/txmempool.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Merge #9548: Remove min reasonable feeWladimir J. van der Laan2017-03-071-2/+2
|\ | | | | | | | | | | | | | | ad82cb0 Remove unnecessary min fee argument in CTxMemPool constructor (Alex Morcos) 2a7b56c CBlockPolicyEstimator now uses hard coded minimum bucket feerate (Alex Morcos) ac9d3d2 Change fee estimation bucket limit variable names (Alex Morcos) Tree-SHA512: 6e3bc7df3497ed60c7620845d222063e33a0238020f5c3316e61e0eff758078588ea8dd51196ceb59aa561ba106f8cdae62cebe521adb3247108bb49f15252d6
| * Remove unnecessary min fee argument in CTxMemPool constructorAlex Morcos2017-01-171-1/+1
| |
| * CBlockPolicyEstimator now uses hard coded minimum bucket feerateAlex Morcos2017-01-171-1/+1
| |
* | [cleanup] Remove coin age priority completely.Alex Morcos2017-03-031-17/+2
| | | | | | | | Remove GetPriority and ComputePriority. Remove internal machinery for tracking priority in CTxMemPoolEntry.
* | [rpc] Remove priorityDelta from prioritisetransactionAlex Morcos2017-03-031-15/+13
| | | | | | | | This a breaking API change to the prioritisetransaction RPC call which previously required exactly three arguments and now requires exactly two (hash and feeDelta). The function prioritiseTransaction is also updated.
* | [cleanup] Remove estimatePriority and estimateSmartPriorityAlex Morcos2017-02-271-10/+0
| | | | | | | | Unused everywhere now except one test.
* | Removed redundant parameter from mempool.PrioritiseTransactiongubatron2017-02-211-2/+2
| | | | | | | | (Also made the `const uint256 hash` parameter a `const uint256& hash` as suggested by @sdaftuar)
* | [Trivial] Update comments referencing main.cppCryptAxe2017-02-161-1/+1
| |
* | Merge #9578: Add missing mempool lock for CalculateMemPoolAncestorsPieter Wuille2017-02-051-0/+2
|\ \ | | | | | | | | | 003cd60 Add missing mempool lock for CalculateMemPoolAncestors (Matt Corallo)
| * | Add missing mempool lock for CalculateMemPoolAncestorsMatt Corallo2017-01-201-0/+2
| |/
* | Refactor: Remove using namespace <xxx> from src/*.cpp.Karl-Johan Alm2017-01-271-5/+3
| |
* | mempool: add notification for added/removed entriesWladimir J. van der Laan2017-01-231-10/+13
|/ | | | | | | | | | | | Add notification signals to make it possible to subscribe to mempool changes: - NotifyEntryAdded(CTransactionRef)> - NotifyEntryRemoved(CTransactionRef, MemPoolRemovalReason)> Also add a mempool removal reason enumeration, which is passed to the removed notification based on why the transaction was removed from the mempool.
* Merge #9380: Separate different uses of minimum feesWladimir J. van der Laan2017-01-161-4/+3
|\ | | | | | | | | | | eb30d1a Introduce -dustrelayfee (Alex Morcos) 7b1add3 Introduce -incrementalrelayfee (Alex Morcos) daec955 Introduce -blockmintxfee (Alex Morcos)
| * Introduce -incrementalrelayfeeAlex Morcos2017-01-161-4/+3
| |
* | Fix use-after-free in CTxMemPool::removeConflicts()Suhas Daftuar2017-01-101-1/+1
| |
* | Pass pointers to existing CTxMemPoolEntries to fee estimationAlex Morcos2017-01-041-2/+2
| |
* | Always update fee estimates on new blocks.Alex Morcos2017-01-041-3/+2
| | | | | | | | 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-041-4/+4
| |
* | Remove member variable hadNoDependencies from CTxMemPoolEntryAlex Morcos2017-01-041-4/+4
|/ | | | 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.
* Merge #9288: Fix a bug if the min fee is 0 for FeeFilterRounderWladimir J. van der Laan2017-01-041-1/+1
|\ | | | | | | | | f8d43b8 Avoid rollingMinimumFeeRate never being able to decay below half (Alex Morcos) eab8e1b fix a bug if the min fee is 0 for FeeFilterRounder (Alex Morcos)
| * Avoid rollingMinimumFeeRate never being able to decay below halfAlex Morcos2016-12-081-1/+1
| |
* | Merge #9283: A few more CTransactionRef optimizationsWladimir J. van der Laan2017-01-041-5/+5
|\ \ | | | | | | | | | | | | | | | | | | 91335ba Remove unused MakeTransactionRef overloads (Pieter Wuille) 6713f0f Make FillBlock consume txn_available to avoid shared_ptr copies (Pieter Wuille) 62607d7 Convert COrphanTx to keep a CTransactionRef (Pieter Wuille) c44e4c4 Make AcceptToMemoryPool take CTransactionRef (Pieter Wuille)
| * | Make AcceptToMemoryPool take CTransactionRefPieter Wuille2016-12-211-5/+5
| | |
* | | Increment MIT Licence copyright header year on files modified in 2016isle29832016-12-311-1/+1
|/ / | | | | | | | | | | Edited via: $ contrib/devtools/copyright_header.py update .
* | Merge #9262: Prefer coins that have fewer ancestors, sanity check txn before ↵Wladimir J. van der Laan2016-12-201-0/+7
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | ATMP cee1612 reduce number of lookups in TransactionWithinChainLimit (Gregory Sanders) af9bedb Test for fix of txn chaining in wallet (Gregory Sanders) 5882c09 CreateTransaction: Don't return success with too-many-ancestor txn (Gregory Sanders) 0b2294a SelectCoinsMinConf: Prefer coins with fewer ancestors (Gregory Sanders)
| * | reduce number of lookups in TransactionWithinChainLimitGregory Sanders2016-12-191-3/+3
| | |
| * | SelectCoinsMinConf: Prefer coins with fewer ancestorsGregory Sanders2016-12-131-0/+7
| | |
* | | remove internal tracking of mempool conflicts for reporting to walletAlex Morcos2016-12-051-8/+3
| | |
* | | remove external usage of mempool conflict trackingAlex Morcos2016-12-051-2/+2
| |/ |/|
* | Rename the remaining main.{h,cpp} to validation.{h,cpp}Matt Corallo2016-12-021-1/+1
|/
* Introduce convenience type CTransactionRefPieter Wuille2016-11-191-7/+7
|
* Make CBlock::vtx a vector of shared_ptr<CTransaction>Pieter Wuille2016-11-191-7/+7
|
* Remove priority estimationAlex Morcos2016-11-071-3/+2
|
* Add feedelta to TxMempoolInfoPieter Wuille2016-10-301-2/+6
|
* Return shared_ptr<CTransaction> from mempool removesPieter Wuille2016-10-211-4/+4
|
* Make removed and conflicted arguments optional to removePieter Wuille2016-10-211-5/+7
|
* Bypass removeRecursive in removeForReorgPieter Wuille2016-10-211-7/+8
|
* Kill insecure_random and associated global stateWladimir J. van der Laan2016-10-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are only a few uses of `insecure_random` outside the tests. This PR replaces uses of insecure_random (and its accompanying global state) in the core code with an FastRandomContext that is automatically seeded on creation. This is meant to be used for inner loops. The FastRandomContext can be in the outer scope, or the class itself, then rand32() is used inside the loop. Useful e.g. for pushing addresses in CNode or the fee rounding, or randomization for coin selection. As a context is created per purpose, thus it gets rid of cross-thread unprotected shared usage of a single set of globals, this should also get rid of the potential race conditions. - I'd say TxMempool::check is not called enough to warrant using a special fast random context, this is switched to GetRand() (open for discussion...) - The use of `insecure_rand` in ConnectThroughProxy has been replaced by an atomic integer counter. The only goal here is to have a different credentials pair for each connection to go on a different Tor circuit, it does not need to be random nor unpredictable. - To avoid having a FastRandomContext on every CNode, the context is passed into PushAddress as appropriate. There remains an insecure_random for test usage in `test_random.h`.
* Use cmpctblock type 2 for segwit-enabled transferPieter Wuille2016-10-041-1/+1
| | | | | Contains version negotiation logic by Matt Corallo and bugfixes by Suhas Daftuar.
* Do not shadow variablesPavel Janík2016-09-271-4/+4
|
* Remove unused variablesMarcoFalke2016-08-251-1/+0
|
* Merge #8346: Mempool: Use Consensus::CheckTxInputs direclty over ↵Pieter Wuille2016-08-011-2/+7
|\ | | | | | | | | | | main::CheckInputs a6cc299 Mempool: Use Consensus::CheckTxInputs direclty over main::CheckInputs (Jorge Timón)
| * Mempool: Use Consensus::CheckTxInputs direclty over main::CheckInputsJorge Timón2016-07-291-2/+7
| |
* | Treat high-sigop transactions as larger rather than rejecting themPieter Wuille2016-07-191-1/+1
| |
* | Rename "block cost" to "block weight"Suhas Daftuar2016-07-181-2/+2
|/
* BIP141: Other consensus critical limits, and BIP145Pieter Wuille2016-06-221-19/+25
| | | | Includes changes by Suhas Daftuar, Luke-jr, and mruddy.
* Provide a flat list of txid/terators to txn in CTxMemPoolMatt Corallo2016-06-191-1/+13
|
* Stop trimming when mapTx is emptyPieter Wuille2016-06-191-1/+1
|
* Get rid of CTxMempool::lookup() entirelyPieter Wuille2016-06-071-13/+3
|
* Switch CTransaction storage in mempool to std::shared_ptrPieter Wuille2016-06-051-24/+60
|