Reduce functional test runtime:
- set noban_tx_relay = True for tests that can benefit from it.
- wake P2PInterface.wait_until as soon as a message is delivered or the connection state changes, instead of polling every 50ms.
Tested on my x86-64 machine:
Wall time (-j=18): 110.8s to 99.1s (-11%) Accumulated: 1715s to 1411s (-17.5%)
Tests that were most affected:
| test | before | after |
|---|---|---|
| feature_maxuploadtarget | 57.9s | 6.2s |
| wallet_conflicts | 49.2s | 7.0s |
| p2p_sendheaders | 31.1s | 6.8s |
| p2p_compactblocks | 11.1s | 1.7s |
| wallet_orphanedreward | 9.3s | 5.2s |
| wallet_importprunedfunds | 4.9s | 2.9s |