Page MenuHomePhabricator

[avalanche] Verify that polling has started on an item before verifying that it has stopped
ClosedPublic

Authored by sdulfari on Jul 25 2022, 23:54.

Details

Summary

If the node registers the proof too slowly, it's possible for the stale check to complete
all 5 retries before polling has even started. This is rarity, but may be one of the root
causes of flakiness that we're seeing on CI.

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

Diff Detail

Repository
rABC Bitcoin ABC
Branch
apv-flaky-stall-check-start
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 19720
Build 39159: Build Diffbuild-without-wallet · build-debug · build-diff · build-clang · build-clang-tidy
Build 39158: arc lint + arc unit

Event Timeline

Fabien requested changes to this revision.Jul 26 2022, 09:24
Fabien added a subscriber: Fabien.
Fabien added inline comments.
test/functional/abc_p2p_avalanche_proof_voting.py
252

Please apply the same fix here as the same issue might occur

This revision now requires changes to proceed.Jul 26 2022, 09:24
sdulfari added inline comments.
test/functional/abc_p2p_avalanche_proof_voting.py
252

This doesn't have the same issue because the test already waits until the proof is accepted before getting here.

Fabien requested changes to this revision.Jul 26 2022, 14:56
Fabien added inline comments.
test/functional/abc_p2p_avalanche_proof_voting.py
252

You're right, and also via the above send_and_check_for_polling which can be leverage for the other case (see suggested diff)

465–470
This revision now requires changes to proceed.Jul 26 2022, 14:56
This revision is now accepted and ready to land.Jul 27 2022, 07:47