aboutsummaryrefslogtreecommitdiff
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 #7152Wladimir J. van der Laan2015-12-031-1/+1
|\ | | | | | | b440409 Add missing automake package to deb-based UNIX install instructions. (Matt Bogosian)
| * Add missing automake package to deb-based UNIX install instructions.Matt Bogosian2015-12-011-1/+1
| |
* | 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-038-166/+16
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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)
| * | | When not filtering blocks, getdata sends more in one testPieter Wuille2015-11-301-1/+1
| | | |
| * | | 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-039-273/+11
| | | | | | | | | | | | | | | | ... 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`
* | | | | Merge pull request #7157Wladimir J. van der Laan2015-12-0210-56/+44
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fabd10a Fix typo in wallet.cpp (MarcoFalke) fad2460 Update contrib/devtools/README.md (MarcoFalke) 5e151a8 PartitionCheck: remove useless spaces (paveljanik) fad0088 TRIVIAL: Chainparams: Remove unused CBaseUnitTestParams (Jorge Timón) 74f7341 Update miner.cpp: Fix typo in comment (antonio-fr) e69bad1 [trivial] Fix typo in peertablemodel.cpp (MarcoFalke) 8a03727 Fix various typos (paveljanik)
| * | | | Fix typo in wallet.cppMarcoFalke2015-12-021-1/+1
| | | | |
| * | | | Update contrib/devtools/README.mdMarcoFalke2015-12-021-30/+31
| | | | | | | | | | | | | | | | | | | | | | | | | * Fix order * Update subtree check
| * | | | 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-025-7/+7
|/ / / /
* | | | 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-0265-1480/+8930
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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
| |\ \ \ \ \ \
| | * | | | | | Squashed 'src/univalue/' changes from 5839ac3..2740c4fMarcoFalke2015-12-0216-83/+205
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2740c4f Merge branch '2015_11_escape_plan' into bitcoin 7482163 Add new testcase to Makefile.am 46098ee Version 1.0.1. ccf3575 parser: Ensure multiple values cannot follow each other eb6cd64 Omit Obj/Arr open token from jsonTokenIsValue() test bfef9e2 Makefile.am: list recently added test data, fail{35,36}.json 3e319f3 parser: Tighten array, object syntax checks. c74185c parser: transform C++ variables into bitmask f2568bc Prefer C++ STL vector .at() for accessing object values. 8eafa26 travis: run parallel 'make distcheck' fd448da test: Improve tester diagnostics. Add failing test case from #15 2158205 Use internal, locale-independent isspace(), isdigit() implementations. 2ab9ad4 travis: Make 'make distcheck' for more comprehensive checks. 3339191 Escape all control characters git-subtree-dir: src/univalue git-subtree-split: 2740c4f71242086a7eb3dc32f812546ba9fad913
* | | | | | | | 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 #7155Wladimir J. van der Laan2015-12-023-374/+0
|\ \ \ \ \ \ \ \ \ \ | |_|_|/ / / / / / / |/| | | | | | | | | | | | | | | | | | | 092e9ad Remove old replace-by-fee tests (Peter Todd)
| * | | | | | | | | Remove old replace-by-fee testsPeter Todd2015-12-023-374/+0
|/ / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | Made redundant by tests in qa/rpc-tests/replace-by-fee.py
* | | | | | | | | 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.
* | | | | | | | | Merge pull request #6872Wladimir J. van der Laan2015-12-025-15/+90
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dd5862c Flush coins cache also after transaction processing (Pieter Wuille) bde953e Uncache input txn in utxo cache if a tx is not accepted to mempool (Matt Corallo) 97bf377 Add CCoinsViewCache::HaveCoinsInCache to check if a tx is cached (Matt Corallo) 677aa3d Discard txn cache entries that were loaded for removed mempool txn (Matt Corallo) b2e74bd Get the set of now-uncacheable-txn from CTxMemPool::TrimToSize (Matt Corallo) 74d0f90 Add method to remove a tx from CCoinsViewCache if it is unchanged (Matt Corallo)
| * | | | | | | | | 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
| | |_|_|_|_|_|_|/ | |/| | | | | | |
* | | | | | | | | Merge pull request #7040Jonas Schnelli2015-12-021-9/+11
|\ \ \ \ \ \ \ \ \ | |/ / / / / / / / |/| | | | | | | | | | | | | | | | | b171c69 [doc] Update OS X build notes for new qt5 configure (Michael Ford)
| * | | | | | | | [doc] Update OS X build notes for new qt5 configureMichael Ford2015-11-201-9/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | You no longer need to explicitly pass qt5 to configure, as it will now choose qt5 over qt4 if both are installed. [skip-ci]
* | | | | | | | | Merge pull request #6898Pieter Wuille2015-12-0110-228/+293
|\ \ \ \ \ \ \ \ \ | |_|/ / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 553cad9 Rewrite CreateNewBlock (Alex Morcos) 5f12263 Expose FormatStateMessage (Alex Morcos) 1f09287 Make accessing mempool parents and children public (Alex Morcos) 7230187 Add TxPriority class and comparator (Alex Morcos) f3fe836 Add a score index to the mempool. (Alex Morcos) c49d5bc Store the total sig op count of a tx. (Alex Morcos)
| * | | | | | | | 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