Jorge Timón
7c00c26726
scripted-diff: Fully remove BOOST_FOREACH
...
-BEGIN VERIFY SCRIPT-
sed -i 's/BOOST_FOREACH *(\(.*\),/for (\1 :/' ./src/*.h ./src/*.cpp ./src/*/*.h ./src/*/*.cpp ./src/*/*/*.h ./src/*/*/*.cpp ;
-END VERIFY SCRIPT-
2017-06-05 20:10:50 +02:00
Wladimir J. van der Laan
ea6fde3f1d
Merge #8329 : Consensus: MOVEONLY: Move functions for tx verification
...
618d07f
MOVEONLY: tx functions to consensus/tx_verify.o (Jorge Timón)
Tree-SHA512: 63fa2777c070a344dbfe61974526a770d962e049881c6f371b0034b1682c1e6e24f47454f01ee35ded20ade34488e023d4467a05369662906b99a73bb5de8497
2017-05-18 21:01:49 +02:00
Jorge Timón
381a46e38f
Consensus: Policy: MOVEONLY: Move CFeeRate out of the consensus module
...
...from amount.o to policy/feerate.o
Policy, because it moves policy code to the policy directory (common module)
2017-05-03 18:00:13 +02:00
practicalswift
9a763d4f86
Remove excess logic.
2017-04-10 10:24:49 +02:00
Jorge Timón
618d07faa2
MOVEONLY: tx functions to consensus/tx_verify.o
...
Functions related to transaction verification.
2017-04-06 23:36:46 +02:00
Gregory Maxwell
6b3bb3d9ba
Change LogAcceptCategory to use uint32_t rather than sets of strings.
...
This changes the logging categories to boolean flags instead of strings.
This simplifies the acceptance testing by avoiding accessing a scoped
static thread local pointer to a thread local set of strings. It
eliminates the only use of boost::thread_specific_ptr outside of
lockorder debugging.
This change allows log entries to be directed to multiple categories
and makes it easy to change the logging flags at runtime (e.g. via
an RPC, though that isn't done by this commit.)
It also eliminates the fDebug global.
Configuration of unknown logging categories now produces a warning.
2017-04-01 18:53:29 +00:00
Wladimir J. van der Laan
cde9b1a864
Merge #9959 : Mining: Prevent slowdown in CreateNewBlock on large mempools
...
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 20:55:29 +02:00
Suhas Daftuar
011124a2b2
Update benchmarking with package statistics
2017-03-29 13:57:52 -04:00
Suhas Daftuar
42cd8c890f
Add benchmarking for CreateNewBlock
2017-03-29 13:57:52 -04:00
Suhas Daftuar
eed816af6c
Mining: return early when block is almost full
2017-03-29 13:57:52 -04:00
Thomas Snider
c59aedc1b0
[trivial] Dead code removal
2017-03-23 15:08:54 -07:00
Suhas Daftuar
abe7b3d3ab
Don't require segwit in getblocktemplate for segwit signalling or mining
...
Segwit's version bit will be signalled for all invocations of CreateNewBlock,
and not specifying segwit only will cause CreateNewBlock to skip transactions
with witness from being selected.
2017-03-14 06:43:37 -04:00
Wladimir J. van der Laan
30ff3a2fc9
Merge #9602 : Remove coin age priority and free transactions - implementation
...
b421e6d
Update example bitcoin.conf (Alex Morcos)
7d4e950
Allow setting minrelaytxfee to 0 (Alex Morcos)
359e8a0
[cleanup] Remove coin age priority completely. (Alex Morcos)
f9b9371
[rpc] Remove priorityDelta from prioritisetransaction (Alex Morcos)
49be7e1
[rpc] Remove priority information from mempool RPC calls (Alex Morcos)
0315888
[test] Remove priority from tests (Alex Morcos)
f838005
No longer allow "free" transactions (Alex Morcos)
ad727f4
[rpc] sendrawtransaction no longer bypasses minRelayTxFee (Alex Morcos)
fe282ac
[cleanup] Remove estimatePriority and estimateSmartPriority (Alex Morcos)
400b151
[debug] Change -printpriority option (Alex Morcos)
272b25a
[mining] Remove -blockprioritysize. (Alex Morcos)
12839cd
[rpc] Remove estimatepriority and estimatesmartpriority. (Alex Morcos)
ddf58c7
wallet: Remove sendfree (MarcoFalke)
Tree-SHA512: a9a4499405923ce794ef18f9e334dbbd59dfc73a3dc2df6f85cc9c62af6f353ec2eed9c2d5e58e904f918d0d7ab738f403dd4939d9bc2276136864fe63710782
2017-03-07 19:30:23 +01:00
Alex Morcos
400b15147c
[debug] Change -printpriority option
...
-printpriority output is now changed to only show the fee rate and hash of transactions included in a block by the mining code.
2017-02-27 11:23:50 -05:00
Alex Morcos
272b25a6a9
[mining] Remove -blockprioritysize.
...
Remove ability of mining code to fill part of a block with transactions sorted by coin age.
2017-02-27 11:23:50 -05:00
Pieter Wuille
48faf0bf63
Abstract out BlockAssembler options
2017-02-26 16:13:17 -08:00
Karl-Johan Alm
b7b48c8bbd
Refactor: Remove using namespace <xxx> from src/*.cpp.
2017-01-27 18:13:20 +09:00
Alex Morcos
daec955fd6
Introduce -blockmintxfee
2017-01-04 13:24:19 -05:00
isle2983
27765b6403
Increment MIT Licence copyright header year on files modified in 2016
...
Edited via:
$ contrib/devtools/copyright_header.py update .
2016-12-31 11:01:21 -07:00
Matt Corallo
0cf86a6678
Introduce (and use) an IsArgSet accessor method
2016-12-23 21:30:16 -05:00
Pieter Wuille
f6fb7acda4
Move CTxInWitness inside CTxIn
2016-12-04 23:47:12 -08:00
Matt Corallo
76faa3cdfe
Rename the remaining main.{h,cpp} to validation.{h,cpp}
2016-12-02 09:42:51 -08:00
Pieter Wuille
b4e4ba475a
Introduce convenience type CTransactionRef
2016-11-19 17:53:23 -08:00
Pieter Wuille
1662b437b3
Make CBlock::vtx a vector of shared_ptr<CTransaction>
2016-11-19 17:51:09 -08:00
Wladimir J. van der Laan
f6db48ad1c
Merge #8838 : Calculate size and weight of block correctly in CreateNewBlock()
...
5f274a1
log block size and weight correctly. (jnewbery)
2016-11-17 14:14:51 +01:00
Wladimir J. van der Laan
744d2652dd
Merge #8223 : [c++11] Use std::unique_ptr for block creation.
...
9fce062
[c++11] Use std::unique_ptr for block creation. (Daniel Kraft)
2016-10-18 21:16:08 +02:00
jnewbery
5f274a1749
log block size and weight correctly.
2016-10-03 13:55:26 -04:00
Wladimir J. van der Laan
517eee3e8f
Merge #8362 : Scale legacy sigop count in CreateNewBlock
...
682aa0f
Scale legacy sigop count in CreateNewBlock (Suhas Daftuar)
2016-07-25 18:08:09 +02:00
Suhas Daftuar
2c06bae39e
Rename "block cost" to "block weight"
2016-07-18 13:28:26 -04:00
Suhas Daftuar
682aa0f289
Scale legacy sigop count in CreateNewBlock
2016-07-18 12:42:41 -04:00
Suhas Daftuar
27362dda4d
Remove -blockminsize option
2016-06-30 11:41:13 -04:00
Suhas Daftuar
d2e46e1b5c
Remove addScoreTxs()
2016-06-30 11:37:38 -04:00
Suhas Daftuar
6dd4bc289c
Exclude witness transactions in addPackageTxs() pre-segwit activation
2016-06-30 11:24:32 -04:00
Suhas Daftuar
f15c2cde45
CreateNewBlock: add support for size-accounting to addPackageTxs
...
Includes a change to not continue to use size-accounting in addScoreTxs
or addPackageTxs just because addPriorityTxs() is used.
2016-06-27 10:58:58 -04:00
Pieter Wuille
2b1f6f9ccf
BIP141: Other consensus critical limits, and BIP145
...
Includes changes by Suhas Daftuar, Luke-jr, and mruddy.
2016-06-22 15:43:00 +02:00
Pieter Wuille
8b49040854
BIP141: Commitment structure and deployment
...
Includes a fix by Suhas Daftuar and LongShao007
2016-06-22 15:42:59 +02:00
Daniel Kraft
9fce0629b4
[c++11] Use std::unique_ptr for block creation.
...
CreateNewBlock returns a pointer for which the caller takes ownership.
Use std::unique_ptr to make this explicit and simplify handling of these
objects in getblocktemplate.
2016-06-18 19:38:28 +02:00
Suhas Daftuar
c82a4e9a63
Use ancestor-feerate based transaction selection for mining
...
Includes changes by Pieter Wuille
2016-06-16 12:35:37 -04:00
Alex Morcos
c2dd5a3c39
FIX: correctly measure size of priority block
2016-06-01 12:29:03 -04:00
Alex Morcos
a278764748
FIX: Account for txs already added to block in addPriorityTxs
2016-05-24 15:01:14 -04:00
Alex Morcos
4dc94d1036
Refactor CreateNewBlock to be a method of the BlockAssembler class
2016-05-18 14:11:12 -04:00
Wladimir J. van der Laan
07e4edb056
auto_ptr → unique_ptr
...
Change the few occurrences of the deprecated `auto_ptr` to c++11 `unique_ptr`.
Silences the deprecation warnings.
Also add a missing `std::` for consistency.
2016-04-28 13:43:32 +02:00
Pieter Wuille
6851107b3a
BIP9 Implementation
...
Inspired by former implementations by Eric Lombrozo and Rusty Russell, and
based on code by Jorge Timon.
2016-03-15 16:54:38 +01:00
Wladimir J. van der Laan
11c769966a
Merge #7507 : Remove internal miner
...
8d1de43
Remove internal miner (Leviathn)
2016-03-14 11:35:41 +01:00
Suhas Daftuar
086da92ea7
Add tags to mempool's mapTx indices
2016-02-16 12:35:16 -05:00
Leviathn
8d1de43f0c
Remove internal miner
...
This code removes the internal miner which is only useful on Testnet.
This leaves the internal miner that is useful on RegTest intact.
2016-02-10 18:29:13 -08:00
MarcoFalke
fa24439ff3
Bump copyright headers to 2015
2015-12-13 18:08:39 +01:00
antonio-fr
74f7341fec
Update miner.cpp: Fix typo in comment
2015-12-02 15:18:23 +01:00
Alex Morcos
553cad94e2
Rewrite CreateNewBlock
...
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
2015-12-01 12:09:37 -05:00
Pieter Wuille
61457c29d7
Merge pull request #6508
...
eece63f
Switch blocks to a constant-space Merkle root/branch algorithm. (Pieter Wuille)
ee60e56
Add merkle.{h,cpp}, generic merkle root/branch algorithm (Pieter Wuille)
2015-11-28 22:27:38 +01:00