aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* include the chaintip *blockIndex in the SyncTransaction signalJonas Schnelli2015-12-047-15/+16
| | | | | - allows reducing of calls to main.cpp for getting the chaintip during transaction syncing - potentially allows reducing of cs_main locks
* Merge pull request #7113Wladimir J. van der Laan2015-12-033-30/+75
|\ | | | | | | 086ee67 Switch to a more efficient rolling Bloom filter (Pieter Wuille)
| * Switch to a more efficient rolling Bloom filterPieter Wuille2015-11-283-30/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For each 'bit' in the filter we really maintain 2 bits, which store either: 0: not set 1-3: set in generation N After (nElements / 2) insertions, we switch to a new generation, and wipe entries which already had the new generation number, effectively switching from the last 1.5 * nElements set to the last 1.0 * nElements set. This is 25% more space efficient than the previous implementation, and can (at peak) store 1.5 times the requested amount of history (though only 1.0 times the requested history is guaranteed). The existing unit tests should be sufficient.
* | Merge pull request #7133Wladimir J. van der Laan2015-12-037-165/+15
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | aa4b0c2 When not filtering blocks, getdata sends more in one test (Pieter Wuille) d41e44c Actually only use filterInventoryKnown with MSG_TX inventory messages. (Gregory Maxwell) b6a0da4 Only use filterInventoryKnown with MSG_TX inventory messages. (Patick Strateman) 6b84935 Rename setInventoryKnown filterInventoryKnown (Patick Strateman) e206724 Remove mruset as it is no longer used. (Gregory Maxwell) ec73ef3 Replace setInventoryKnown with a rolling bloom filter. (Gregory Maxwell)
| * | Actually only use filterInventoryKnown with MSG_TX inventory messages.Gregory Maxwell2015-11-301-9/+7
| | | | | | | | | | | | Previously this logic could erroneously filter a MSG_BLOCK inventory message.
| * | Only use filterInventoryKnown with MSG_TX inventory messages.Patick Strateman2015-11-301-2/+3
| | | | | | | | | | | | Previously this logic could erroneously filter a MSG_BLOCK inventory message.
| * | Rename setInventoryKnown filterInventoryKnownPatick Strateman2015-11-303-8/+8
| | |
| * | Remove mruset as it is no longer used.Gregory Maxwell2015-11-305-149/+0
| | |
| * | Replace setInventoryKnown with a rolling bloom filter.Gregory Maxwell2015-11-303-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mruset setInventoryKnown was reduced to a remarkably small 1000 entries as a side effect of sendbuffer size reductions in 2012. This removes setInventoryKnown filtering from merkleBlock responses because false positives there are especially unattractive and also because I'm not sure if there aren't race conditions around the relay pool that would cause some transactions there to be suppressed. (Also, ProcessGetData was accessing setInventoryKnown without taking the required lock.)
* | | Now that 0.12 has been branched, master is 0.12.99Wladimir J. van der Laan2015-12-031-1/+1
| | | | | | | | | | | | ... in preparation for 0.13
* | | Merge pull request #7158Wladimir J. van der Laan2015-12-032-8/+43
|\ \ \ | | | | | | | | | | | | fab8347 [qt] Use tr() instead of _() (MarcoFalke)
| * | | [qt] Use tr() instead of _()MarcoFalke2015-12-022-8/+43
| | | | | | | | | | | | | | | | Also, `make translate`
* | | | Fix typo in wallet.cppMarcoFalke2015-12-021-1/+1
| | | |
* | | | PartitionCheck: remove useless spacespaveljanik2015-12-021-3/+3
| | | |
* | | | TRIVIAL: Chainparams: Remove unused CBaseUnitTestParamsJorge Timón2015-12-021-13/+0
| | | |
* | | | Update miner.cpp: Fix typo in commentantonio-fr2015-12-021-1/+1
| | | |
* | | | [trivial] Fix typo in peertablemodel.cppMarcoFalke2015-12-021-1/+1
| | | |
* | | | Fix various typospaveljanik2015-12-023-5/+5
|/ / /
* | | Merge pull request #7128Wladimir J. van der Laan2015-12-024-6/+13
|\ \ \ | | | | | | | | | | | | 02354c9 Constrain rpcport default values to a single location in code (Luke Dashjr)
| * | | Constrain rpcport default values to a single location in codeLuke Dashjr2015-12-014-6/+13
| | | |
* | | | qt: Final translation update before 0.12 forkWladimir J. van der Laan2015-12-0263-1476/+8915
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Add new translations (finally, after a long time) - update-translation script was not considering new translations - oops - fixed this, also remove (nearly) empty translations - Update translation process, it was still describing the old repository structure
* | | | Merge pull request #6216Wladimir J. van der Laan2015-12-021-9/+19
|\ \ \ \ | | | | | | | | | | | | | | | db6047d Take the training wheels off anti-fee-sniping (Peter Todd)
| * | | | Take the training wheels off anti-fee-snipingPeter Todd2015-06-211-9/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that the off-by-one error w/nLockTime txs issue has been fixed by 87550eef (75a4d512 in the 0.11 branch) we can make the anti-fee-sniping protection create transactions with nLockTime set such that they're only valid in the next block, rather than an earlier block. There was also a concern about poor propagation, however testing with transactions with nLockTime = GetAdjustedTime()+1 as a proxy for nLockTime propagation, as well as a few transactions sent the moment blocks were received, has turned up no detectable issues with propagation. If you have a block at a given height you certainly have at least one peer with that block who will accept the transaction. That peer will certainly have other peers who will accept it, and soon essentially the whole network has the transaction. In particular, if a node recives a transaction that it rejects due to the tx being non-final, it will be accepted again later as it winds its way around the network.
* | | | | Merge pull request #7147Wladimir J. van der Laan2015-12-0216-83/+205
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | 9827091 Squashed 'src/univalue/' changes from 5839ac3..2740c4f (MarcoFalke)
| * | | | | Merge commit '982709199f1b4e9e35211c419a81938f9f1dd4ed' into bitcoinMarcoFalke2015-12-0216-83/+205
| | | | | |
* | | | | | Merge pull request #7146Wladimir J. van der Laan2015-12-021-1/+1
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | 1812de9 Name union to prevent compiler warning (Pavel Janík)
| * | | | | | Name union to prevent compiler warningPavel Janík2015-12-021-1/+1
| | | | | | |
* | | | | | | Merge pull request #7118Wladimir J. van der Laan2015-12-021-3/+5
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | | | | | | | | b212f94 Describe maxmempool and mempoolminfee in the getmempoolinfo RPC help. (Pavel Janík)
| * | | | | | Describe maxmempool and mempoolminfee in the getmempoolinfo RPC help.Pavel Janík2015-12-011-3/+5
| | | | | | |
* | | | | | | Merge pull request #7144Wladimir J. van der Laan2015-12-021-0/+2
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 8f0d79e test: Disable scheduler test manythreads (Wladimir J. van der Laan)
| * | | | | | | test: Disable scheduler test manythreadsWladimir J. van der Laan2015-12-011-0/+2
| | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It causes occasional deadlocks, resulting in false negatives in Travis. Disable the test for now. Works around #6540.
* | | | | | | Flush coins cache also after transaction processingPieter Wuille2015-12-011-0/+1
| | | | | | |
* | | | | | | Uncache input txn in utxo cache if a tx is not accepted to mempoolMatt Corallo2015-12-011-3/+22
| | | | | | |
* | | | | | | Add CCoinsViewCache::HaveCoinsInCache to check if a tx is cachedMatt Corallo2015-12-012-0/+12
| | | | | | |
* | | | | | | Discard txn cache entries that were loaded for removed mempool txnMatt Corallo2015-12-011-8/+15
| | | | | | |
* | | | | | | Get the set of now-uncacheable-txn from CTxMemPool::TrimToSizeMatt Corallo2015-12-012-4/+25
| | | | | | |
* | | | | | | Add method to remove a tx from CCoinsViewCache if it is unchangedMatt Corallo2015-12-012-0/+15
| | | | | | |
* | | | | | | Rewrite CreateNewBlockAlex Morcos2015-12-012-205/+156
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the score index on the mempool to only add sorted txs in order. Remove much of the validation while building the block, relying on mempool to be consistent and only contain txs that can be mined. The mempool is assumed to be consistent as far as not containing txs which spend non-existent outputs or double spends, and scripts are valid. Finality of txs is still checked (except not coinbase maturity, assumed in mempool). Still TestBlockValidity in case mempool consistency breaks and return error state if an invalid block was created. Unit tests are modified to realize that invalid blocks can now be constructed if the mempool breaks its consistency assumptions and also updated to have the right fees, since the cached value is now used for block construction. Conflicts: src/miner.cpp
* | | | | | | Expose FormatStateMessageAlex Morcos2015-12-012-1/+3
| | | | | | |
* | | | | | | Make accessing mempool parents and children publicAlex Morcos2015-12-011-2/+2
| | | | | | |
* | | | | | | Add TxPriority class and comparatorAlex Morcos2015-12-011-0/+13
| | | | | | |
* | | | | | | Add a score index to the mempool.Alex Morcos2015-12-014-12/+106
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The score index is meant to represent the order of priority for being included in a block for miners. Initially this is set to the transactions modified (by any feeDelta) fee rate. Index improvements and unit tests by sdaftuar.
* | | | | | | Store the total sig op count of a tx.Alex Morcos2015-12-015-8/+13
|/ / / / / / | | | | | | | | | | | | | | | | | | Store sum of legacy and P2SH sig op counts. This is calculated in AcceptToMemory pool and storing it saves redoing the expensive calculation in block template creation.
* | | | | | qt: periodic translations updateWladimir J. van der Laan2015-12-0113-163/+778
| | | | | |
* | | | | | Merge pull request #7141Wladimir J. van der Laan2015-12-013-10/+23
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | aabc897 rpc: Don't translate warning messages (Wladimir J. van der Laan)
| * | | | | | rpc: Don't translate warning messagesWladimir J. van der Laan2015-12-013-10/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | But keep translating them in the GUI. This - necessarily - requires duplication of a few messages. Alternative take on #7134, that keeps the translations from being wiped. Also document GetWarnings() input argument. Fixes #5895.
* | | | | | | Merge pull request #7143Wladimir J. van der Laan2015-12-011-1/+4
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 6da12df qt: use QMetaObject::invokeMethod for cross-thread signaling in clientmodel (Wladimir J. van der Laan)
| * | | | | | | qt: use QMetaObject::invokeMethod for cross-thread signaling in clientmodelWladimir J. van der Laan2015-12-011-1/+4
| | |_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's surprising to me that Q_EMIT even worked for this. But it doesn't build in Qt4, so switch back to `QMetaObject::invokeMethod`. Fixes #7138.
* | | | | | | Merge pull request #6915Wladimir J. van der Laan2015-12-017-70/+95
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2d8860e Fix removeForReorg to use MedianTimePast (Suhas Daftuar) b7fa4aa Don't call removeForReorg if DisconnectTip fails (Suhas Daftuar) 7e49f5f Track coinbase spends in CTxMemPoolEntry (Suhas Daftuar) bb8ea1f removeForReorg calls once-per-disconnect-> once-per-reorg (Matt Corallo) 474b84a Make indentation in ActivateBestChainStep readable (Matt Corallo) b0a064c Fix comment in removeForReorg (Matt Corallo) 9b060e5 Fix removal of time-locked transactions during reorg (Matt Corallo) 0c9959a Add failing test checking timelocked-txn removal during reorg (Matt Corallo)
| * | | | | | | Fix removeForReorg to use MedianTimePastSuhas Daftuar2015-11-303-6/+6
| | | | | | | |