Page MenuHomePhabricator

[avalanche] Fix potential failure in abc_p2p_avalanche_proof_voting
ClosedPublic

Authored by Fabien on Feb 22 2022, 08:36.

Details

Summary

On rare occasion (about 1/1000 run on my machine), the test will fail to find the vote finalization message in the log, because we don't keep sending the vote over the timeout period. This diff uses a retry mechanism to work around this.

Because the default timeout for assert_debug_log is 2s and there are 5 retries, the total timeout is slightly bumped to 12s which is not significant.

Test Plan
for i in {1..10000}; do echo "Trial number $i" && ./test/functional/test_runner.py abc_p2p_avalanche_proof_voting || break; done

Diff Detail

Repository
rABC Bitcoin ABC
Branch
avalanche_fix_finalization_test
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 18330
Build 36465: Build Diffbuild-clang-tidy · build-debug · build-without-wallet · build-clang · build-diff
Build 36464: arc lint + arc unit