Page MenuHomePhabricator

[avalanche] Remote proofs: account for our local proof if we are a staker
ClosedPublic

Authored by Fabien on Dec 11 2023, 14:15.

Details

Summary

I we are staking, we are taking part of the decision about a proof so it makes sense to weight also on the remote proof decision, proportionally to our stake.

Depends on D14961.

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.Dec 11 2023, 14:15

Failed tests logs:

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

------- Stdout: -------
2023-12-11T14:25:58.122000Z TestFramework (INFO): Initializing test directory /work/abc-ci-builds/build-debug/test/tmp/test_runner_₿₵_  _20231211_142440/abc_p2p_getavaaddr_10
2023-12-11T14:26:11.367000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:26:11.367000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:26:11.367000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:26:11.368000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:26:11.368000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:26:11.368000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:26:11.368000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:26:11.368000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:26:11.369000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:26:11.369000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:26:11.369000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:26:11.369000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:26:11.370000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:26:11.370000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:26:11.370000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:26:11.370000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:26:16.391000Z TestFramework (INFO): Check we send a getavaaddr message to our avalanche outbound peers
2023-12-11T14:26:18.882000Z TestFramework (INFO): Check we send a getavaaddr message to our manually connected peers that support avalanche
2023-12-11T14:26:20.123000Z TestFramework (INFO): Check we send a getavaaddr message while our quorum is not established
2023-12-11T14:27:28.250000Z TestFramework.utils (ERROR): wait_until() failed. Predicate: ''''
            self.wait_until(lambda: total_getavaaddr_msg() >= total_getavaaddr + 1)
'''
2023-12-11T14:27:28.250000Z TestFramework (ERROR): Assertion failed
Traceback (most recent call last):
  File "/work/test/functional/test_framework/test_framework.py", line 147, in main
    self._run_test_internal()
  File "/work/test/functional/test_framework/test_framework.py", line 137, in _run_test_internal
    self.run_test()
  File "/work/test/functional/abc_p2p_getavaaddr.py", line 536, in run_test
    self.getavaaddr_noquorum()
  File "/work/test/functional/abc_p2p_getavaaddr.py", line 443, in getavaaddr_noquorum
    self.wait_until(sent_single_getavaaddr)
  File "/work/test/functional/test_framework/test_framework.py", line 820, in wait_until
    return wait_until_helper(
  File "/work/test/functional/test_framework/util.py", line 285, in wait_until_helper
    if predicate():
  File "/work/test/functional/abc_p2p_getavaaddr.py", line 438, in sent_single_getavaaddr
    self.wait_until(lambda: total_getavaaddr_msg() >= total_getavaaddr + 1)
  File "/work/test/functional/test_framework/test_framework.py", line 820, in wait_until
    return wait_until_helper(
  File "/work/test/functional/test_framework/util.py", line 298, in wait_until_helper
    raise AssertionError(
AssertionError: Predicate ''''
            self.wait_until(lambda: total_getavaaddr_msg() >= total_getavaaddr + 1)
''' not true after 60.0 seconds
2023-12-11T14:27:28.300000Z TestFramework (INFO): Stopping nodes
2023-12-11T14:27:28.452000Z TestFramework (WARNING): Not cleaning up dir /work/abc-ci-builds/build-debug/test/tmp/test_runner_₿₵_  _20231211_142440/abc_p2p_getavaaddr_10
2023-12-11T14:27:28.452000Z TestFramework (ERROR): Test failed. Test logging available at /work/abc-ci-builds/build-debug/test/tmp/test_runner_₿₵_  _20231211_142440/abc_p2p_getavaaddr_10/test_framework.log
2023-12-11T14:27:28.452000Z TestFramework (ERROR): 
2023-12-11T14:27:28.452000Z TestFramework (ERROR): Hint: Call /work/test/functional/combine_logs.py '/work/abc-ci-builds/build-debug/test/tmp/test_runner_₿₵_  _20231211_142440/abc_p2p_getavaaddr_10' to consolidate all logs
2023-12-11T14:27:28.452000Z TestFramework (ERROR): 
2023-12-11T14:27:28.452000Z TestFramework (ERROR): If this failure happened unexpectedly or intermittently, please file a bug and provide a link or upload of the combined log.
2023-12-11T14:27:28.452000Z TestFramework (ERROR): https://github.com/Bitcoin-ABC/bitcoin-abc/issues
2023-12-11T14:27:28.452000Z TestFramework (ERROR):

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

Failed tests logs:

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

------- Stdout: -------
2023-12-11T14:57:42.371000Z TestFramework (INFO): Initializing test directory /work/abc-ci-builds/build-debug/test/tmp/test_runner_₿₵_  _20231211_145624/abc_p2p_getavaaddr_10
2023-12-11T14:57:47.465000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 32] Broken pipe
2023-12-11T14:57:47.466000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:57:47.466000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 32] Broken pipe
2023-12-11T14:57:47.466000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 32] Broken pipe
2023-12-11T14:57:47.466000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 32] Broken pipe
2023-12-11T14:57:47.467000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:57:47.467000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:57:47.467000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:57:47.467000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:57:47.468000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:57:54.860000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:57:54.861000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:57:54.861000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:57:54.862000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:57:54.862000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:57:54.863000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:57:54.864000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:57:54.864000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20641 due to [Errno 104] Connection reset by peer
2023-12-11T14:58:00.131000Z TestFramework (INFO): Check we send a getavaaddr message to our avalanche outbound peers
2023-12-11T14:58:02.634000Z TestFramework (INFO): Check we send a getavaaddr message to our manually connected peers that support avalanche
2023-12-11T14:58:03.471000Z TestFramework (INFO): Check we send a getavaaddr message while our quorum is not established
2023-12-11T14:59:11.399000Z TestFramework.utils (ERROR): wait_until() failed. Predicate: ''''
            self.wait_until(lambda: total_getavaaddr_msg() >= total_getavaaddr + 1)
'''
2023-12-11T14:59:11.399000Z TestFramework (ERROR): Assertion failed
Traceback (most recent call last):
  File "/work/test/functional/test_framework/test_framework.py", line 147, in main
    self._run_test_internal()
  File "/work/test/functional/test_framework/test_framework.py", line 137, in _run_test_internal
    self.run_test()
  File "/work/test/functional/abc_p2p_getavaaddr.py", line 536, in run_test
    self.getavaaddr_noquorum()
  File "/work/test/functional/abc_p2p_getavaaddr.py", line 443, in getavaaddr_noquorum
    self.wait_until(sent_single_getavaaddr)
  File "/work/test/functional/test_framework/test_framework.py", line 820, in wait_until
    return wait_until_helper(
  File "/work/test/functional/test_framework/util.py", line 285, in wait_until_helper
    if predicate():
  File "/work/test/functional/abc_p2p_getavaaddr.py", line 438, in sent_single_getavaaddr
    self.wait_until(lambda: total_getavaaddr_msg() >= total_getavaaddr + 1)
  File "/work/test/functional/test_framework/test_framework.py", line 820, in wait_until
    return wait_until_helper(
  File "/work/test/functional/test_framework/util.py", line 298, in wait_until_helper
    raise AssertionError(
AssertionError: Predicate ''''
            self.wait_until(lambda: total_getavaaddr_msg() >= total_getavaaddr + 1)
''' not true after 60.0 seconds
2023-12-11T14:59:11.450000Z TestFramework (INFO): Stopping nodes
2023-12-11T14:59:11.501000Z TestFramework (WARNING): Not cleaning up dir /work/abc-ci-builds/build-debug/test/tmp/test_runner_₿₵_  _20231211_145624/abc_p2p_getavaaddr_10
2023-12-11T14:59:11.501000Z TestFramework (ERROR): Test failed. Test logging available at /work/abc-ci-builds/build-debug/test/tmp/test_runner_₿₵_  _20231211_145624/abc_p2p_getavaaddr_10/test_framework.log
2023-12-11T14:59:11.501000Z TestFramework (ERROR): 
2023-12-11T14:59:11.502000Z TestFramework (ERROR): Hint: Call /work/test/functional/combine_logs.py '/work/abc-ci-builds/build-debug/test/tmp/test_runner_₿₵_  _20231211_145624/abc_p2p_getavaaddr_10' to consolidate all logs
2023-12-11T14:59:11.502000Z TestFramework (ERROR): 
2023-12-11T14:59:11.502000Z TestFramework (ERROR): If this failure happened unexpectedly or intermittently, please file a bug and provide a link or upload of the combined log.
2023-12-11T14:59:11.502000Z TestFramework (ERROR): https://github.com/Bitcoin-ABC/bitcoin-abc/issues
2023-12-11T14:59:11.502000Z TestFramework (ERROR):

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

Fabien planned changes to this revision.Dec 11 2023, 15:04

Rebase to fix the failure

Fix the test not using the proper nodeid, fix the node count for the local proof

This revision is now accepted and ready to land.Dec 12 2023, 07:00