* Introduce classes to wrap JSON config instead of accessing it directly in multiple places.
* Fix discrepancy in how CliqueProtocolSchedule and CliquePantheonController loaded the block period configuration.
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
* Introduce createInMemoryBlockchain test utility and use it everywhere appropriate.
* Inject BlockchainStorage into DefaultMutableBlockchain.
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
Replace explicit usages of RocksDbKeyValueStorage with the more generic but now just as capable KeyValueStorage.
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
Includes a reusable OperationBenchmarkHelper to make writing EVM opcode benchmarks easier in future.
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
* EthGetWork Added with Unit and acceptance tests
* EthGetWork Added with Unit and acceptance tests
* EthGetWork Added with Unit and acceptance tests
* EthGetWork Added with Unit and acceptance tests
Debugged
* EthGetWork Added with Unit and acceptance tests
Debugged
Change Requests Actioned
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
* Take peer status messages down from info to debug
* Take P2P messages down from debug to trace
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
* [NC-1752] Delegate calls to getOriginalAccount all the way to the actual store. Ensures we get the actual original value even when updaters are nested due to nested calls.
* Upgrade ethereum reference tests to include the new sstore tests.
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
* Update to latest ethereum reference tests to pull and enable a bunch of Constantinople tests they fix.
* Blacklist test that consumes a huge amount of memory on Constantinople as well.
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
* Upgrade ethereum reference tests
* Add support for sealEngine: NoProof by skipping PoW validation for ommer headers as well. Production code continues to always use full validation for ommers.
* Add Constantinople to reference test schedules ready for when we enable Constantinople tests.
* Blacklist the new reference tests that are failing while we investigate them.
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
* Introduce MessageFrameTestFixture to make it easier to test EVM operations.
* Add unit tests for BlockHashOperation.
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
On the transition to the EthHash/Clique Mining Coordinator a change
was lost whereby the EthHashMiningCoordinator is to capture the
current Hashrate on cancellation of a mining operation.
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
* [NC-1685] Fix BlockHashOperation so it handles blocks being added on forks and gets the hash of the block at the requested number on that fork rather than on the current canonical chain.
* [NC-1644] Cache block hashes across all transactions in a block.
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>