Page MenuHomePhabricator

[tests] make pruning test faster
ClosedPublic

Authored by Fabien on Nov 27 2019, 11:16.

Details

Summary
This commit makes the pruning.py much faster.

Key insights to do this:

- pruning.py doesn't care what kind of transactions make up the big
blocks that are pruned in the test. Instead of making blocks with
several large, expensive to construct and validate transactions,
instead make the large blocks contain a single coinbase transaction with
a huge OP_RETURN txout.
- avoid stop-starting nodes where possible.

This test could probably be made even faster by using the P2P interface
for submitting blocks instead of the submitblock RPC.

Completes backport of core PR15686 (commit 03d6d23):
https://github.com/bitcoin/bitcoin/pull/15686/commits/03d6d238104d228acfae9f3e122879bddef8d27d

Depends on D4561.

Test Plan
./test/functional/test_runner.py feature_pruning

Diff Detail

Repository
rABC Bitcoin ABC
Lint
Lint Not Applicable
Unit
Tests Not Applicable