Page MenuHomePhabricator

[avalanche] Return addresses of nodes we did not poll yet
ClosedPublic

Authored by Fabien on Mar 30 2022, 13:11.

Details

Reviewers
tyler-smith
Group Reviewers
Restricted Project
Maniphest Tasks
Restricted Maniphest Task
Commits
rABCfe70c6273e09: [avalanche] Return addresses of nodes we did not poll yet
Summary

We should not refrain from sharing addresses of nodes we did not poll, especially since we might simply not be ready for polling yet.

Ref T1696.

Depends on D11276.

Test Plan
ninja all check-all

Diff Detail

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

Event Timeline

Fabien requested review of this revision.Mar 30 2022, 13:11

Failed tests logs:

====== Bitcoin ABC functional tests: abc_p2p_getavaaddr.py ======

------- Stdout: -------
2022-03-30T13:16:18.405000Z TestFramework (INFO): Initializing test directory /work/abc-ci-builds/build-debug/test/tmp/test_runner_₿₵_  _20220330_131327/abc_p2p_getavaaddr_27
2022-03-30T13:16:21.775000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:21728 due to [Errno 104] Connection reset by peer
2022-03-30T13:16:26.008000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:21728 due to [Errno 104] Connection reset by peer
2022-03-30T13:16:26.008000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:21728 due to [Errno 104] Connection reset by peer
2022-03-30T13:16:29.977000Z TestFramework (INFO): Check we send a getavaaddr message to our avalanche outbound peers
2022-03-30T13:16:32.564000Z TestFramework (INFO): Check we send a getavaaddr message while our quorum is not established
2022-03-30T13:16:35.241000Z TestFramework (ERROR): Key error
Traceback (most recent call last):
  File "/work/test/functional/test_framework/test_framework.py", line 136, in main
    self.run_test()
  File "/work/test/functional/abc_p2p_getavaaddr.py", line 326, in run_test
    self.getavaaddr_noquorum()
  File "/work/test/functional/abc_p2p_getavaaddr.py", line 303, in getavaaddr_noquorum
    assert all([p['availability_score'] == Decimal(0) for p in peerinfo])
  File "/work/test/functional/abc_p2p_getavaaddr.py", line 303, in <listcomp>
    assert all([p['availability_score'] == Decimal(0) for p in peerinfo])
KeyError: 'availability_score'
2022-03-30T13:16:35.292000Z TestFramework (INFO): Stopping nodes
2022-03-30T13:16:35.594000Z TestFramework (WARNING): Not cleaning up dir /work/abc-ci-builds/build-debug/test/tmp/test_runner_₿₵_  _20220330_131327/abc_p2p_getavaaddr_27
2022-03-30T13:16:35.594000Z TestFramework (ERROR): Test failed. Test logging available at /work/abc-ci-builds/build-debug/test/tmp/test_runner_₿₵_  _20220330_131327/abc_p2p_getavaaddr_27/test_framework.log
2022-03-30T13:16:35.594000Z TestFramework (ERROR): 
2022-03-30T13:16:35.594000Z TestFramework (ERROR): Hint: Call /work/test/functional/combine_logs.py '/work/abc-ci-builds/build-debug/test/tmp/test_runner_₿₵_  _20220330_131327/abc_p2p_getavaaddr_27' to consolidate all logs
2022-03-30T13:16:35.594000Z TestFramework (ERROR): 
2022-03-30T13:16:35.594000Z TestFramework (ERROR): If this failure happened unexpectedly or intermittently, please file a bug and provide a link or upload of the combined log.
2022-03-30T13:16:35.594000Z TestFramework (ERROR): https://github.com/Bitcoin-ABC/bitcoin-abc/issues
2022-03-30T13:16:35.594000Z TestFramework (ERROR):

Each failure log is accessible here:
Bitcoin ABC functional tests: abc_p2p_getavaaddr.py

Fabien planned changes to this revision.Mar 30 2022, 13:23

Fix debug (and other slow systems) potential failure

tyler-smith added a subscriber: tyler-smith.

The concept and implementation look correct and well-tested.

This revision is now accepted and ready to land.Mar 30 2022, 22:19