Skip to content

Conversation

@jtoomim
Copy link

@jtoomim jtoomim commented Jan 4, 2016

Merged by Jonathan Toomim. Almost working, but currently fails some unit
tests (tx_mempool_block_doublespend std::bad_alloc). Not yet safe for
actual use.

Unit test and code for a bigger-block hard fork.
Parameters are:
8MB cap
... doubling every two years (so 16MB in 2018)
... for twenty years
... earliest possible chain fork: 11 Jan 2016
... after miner supermajority
... and grace period once miner supermajority achieved

qa/rpc-tests/bigblocks.py mines a 50% upgraded -regtest chain,
generates 4MB of transactions, and then tests the upgrade and
mining code to make sure larger blocks are only created when
the fork conditions are met.

The activation state of the fork is stored in the block tree database;
it is written when the threshold is met (and unwritten if the
threshold block is re-orged out of the best chain), and read at startup.

Code review and bug fixes by Mike Hearn and Michael Ruddy.

Conflicts:
qa/pull-tester/rpc-tests.sh
qa/rpc-tests/bipdersig-p2p.py
src/chainparams.cpp
src/chainparams.h
src/main.cpp
src/main.h
src/miner.cpp
src/rpcmining.cpp
src/test/ReceiveMsgBytes_tests.cpp
src/test/pmt_tests.cpp

Merged by Jonathan Toomim. Almost working, but currently fails some unit
tests (tx_mempool_block_doublespend std::bad_alloc). Not yet safe for
actual use.

Unit test and code for a bigger-block hard fork.
Parameters are:
  8MB cap
  ... doubling every two years (so 16MB in 2018)
  ... for twenty years
  ... earliest possible chain fork: 11 Jan 2016
  ... after miner supermajority
  ... and grace period once miner supermajority achieved

qa/rpc-tests/bigblocks.py mines a 50% upgraded -regtest chain,
generates 4MB of transactions, and then tests the upgrade and
mining code to make sure larger blocks are only created when
the fork conditions are met.

The activation state of the fork is stored in the block tree database;
it is written when the threshold is met (and unwritten if the
threshold block is re-orged out of the best chain), and read at startup.

Code review and bug fixes by Mike Hearn and Michael Ruddy.

Conflicts:
	qa/pull-tester/rpc-tests.sh
	qa/rpc-tests/bipdersig-p2p.py
	src/chainparams.cpp
	src/chainparams.h
	src/main.cpp
	src/main.h
	src/miner.cpp
	src/rpcmining.cpp
	src/test/ReceiveMsgBytes_tests.cpp
	src/test/pmt_tests.cpp
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants