Page MenuHomePhabricator

[cmake] Fetch Corrosion
ClosedPublic

Authored by Fabien on Feb 21 2024, 16:40.

Details

Reviewers
bytesofman
PiRK
Group Reviewers
Restricted Project
Commits
rABCf780df208b78: [cmake] Fetch Corrosion
Summary

Fetching from CMake removes the need for installing Corrosion entirely.
Not only this makes it easier to build with chronik, but it also makes it easier
to maintain and bump the versions as it is now all in a single place.

Note that the Rust_CARGO_TARGET variable needs to be recomputed from the various
variables set by corrosion using this method:
https://corrosion-rs.github.io/corrosion/v0.4/usage.html#information-provided-by-corrosion

While I'm touching the file, I also fixed the dependency name for generating the bridge c++ files: chronik-lib-static is a name that is set internally by Corrosion and is not documented, but the property is actually documented and retrieving the name from here will be more reliable.

Depends on D15506.

Test Plan
ninja

Run the Gitian Linux build.
Run the CI chronik-enabled builds.

Diff Detail

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

Event Timeline

Fabien requested review of this revision.Feb 21 2024, 16:40

@bot build-linux32 build-linux64 build-linux-aarch64 build-linux-arm build-win64

Failed tests logs:

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

------- Stdout: -------
2024-02-21T17:32:28.501000Z TestFramework (INFO): Initializing test directory /work/abc-ci-builds/build-linux-arm/test/tmp/test_runner_₿₵_  _20240221_173109/abc_p2p_getavaaddr_9
2024-02-21T17:32:36.320000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20577 due to [Errno 32] Broken pipe
2024-02-21T17:32:36.321000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20577 due to [Errno 32] Broken pipe
2024-02-21T17:32:36.321000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20577 due to [Errno 32] Broken pipe
2024-02-21T17:32:36.321000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20577 due to [Errno 32] Broken pipe
2024-02-21T17:32:36.321000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20577 due to [Errno 32] Broken pipe
2024-02-21T17:32:36.321000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20577 due to [Errno 32] Broken pipe
2024-02-21T17:33:00.994000Z TestFramework (INFO): Check we send a getavaaddr message to our avalanche outbound peers
2024-02-21T17:33:03.635000Z TestFramework (INFO): Check we send a getavaaddr message to our manually connected peers that support avalanche
2024-02-21T17:33:05.893000Z TestFramework (INFO): Check we send a getavaaddr message while our quorum is not established
2024-02-21T17:33:34.435000Z TestFramework (INFO): Check we also request the inbounds until the quorum is established
2024-02-21T17:35:41.049000Z TestFramework.utils (ERROR): wait_until() failed. Predicate: ''''
        def test_function():
            if check_connected:
                assert self.is_connected
            return test_function_in()
'''
2024-02-21T17:35:41.049000Z 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 537, in run_test
    self.test_addr_requests_order()
  File "/work/test/functional/abc_p2p_getavaaddr.py", line 517, in test_addr_requests_order
    check_addr_requests(requester1)
  File "/work/test/functional/abc_p2p_getavaaddr.py", line 509, in check_addr_requests
    p.wait_until(lambda: p.message_count.get("getavaaddr", 0) == 1)
  File "/work/test/functional/test_framework/p2p.py", line 565, in wait_until
    wait_until_helper(
  File "/work/test/functional/test_framework/util.py", line 297, in wait_until_helper
    raise AssertionError(
AssertionError: Predicate ''''
        def test_function():
            if check_connected:
                assert self.is_connected
            return test_function_in()
''' not true after 120.0 seconds
2024-02-21T17:35:41.100000Z TestFramework (INFO): Stopping nodes
2024-02-21T17:35:41.304000Z TestFramework (WARNING): Not cleaning up dir /work/abc-ci-builds/build-linux-arm/test/tmp/test_runner_₿₵_  _20240221_173109/abc_p2p_getavaaddr_9
2024-02-21T17:35:41.304000Z TestFramework (ERROR): Test failed. Test logging available at /work/abc-ci-builds/build-linux-arm/test/tmp/test_runner_₿₵_  _20240221_173109/abc_p2p_getavaaddr_9/test_framework.log
2024-02-21T17:35:41.304000Z TestFramework (ERROR): 
2024-02-21T17:35:41.304000Z TestFramework (ERROR): Hint: Call /work/test/functional/combine_logs.py '/work/abc-ci-builds/build-linux-arm/test/tmp/test_runner_₿₵_  _20240221_173109/abc_p2p_getavaaddr_9' to consolidate all logs
2024-02-21T17:35:41.304000Z TestFramework (ERROR): 
2024-02-21T17:35:41.304000Z TestFramework (ERROR): If this failure happened unexpectedly or intermittently, please file a bug and provide a link or upload of the combined log.
2024-02-21T17:35:41.304000Z TestFramework (ERROR): https://github.com/Bitcoin-ABC/bitcoin-abc/issues
2024-02-21T17:35:41.304000Z TestFramework (ERROR):

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

bytesofman added a subscriber: bytesofman.

Failed tests logs:

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

------- Stdout: -------
2024-02-21T17:32:28.501000Z TestFramework (INFO): Initializing test directory /work/abc-ci-builds/build-linux-arm/test/tmp/test_runner_₿₵_  _20240221_173109/abc_p2p_getavaaddr_9
2024-02-21T17:32:36.320000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20577 due to [Errno 32] Broken pipe
2024-02-21T17:32:36.321000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20577 due to [Errno 32] Broken pipe
2024-02-21T17:32:36.321000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20577 due to [Errno 32] Broken pipe
2024-02-21T17:32:36.321000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20577 due to [Errno 32] Broken pipe
2024-02-21T17:32:36.321000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20577 due to [Errno 32] Broken pipe
2024-02-21T17:32:36.321000Z TestFramework.p2p (WARNING): Connection lost to 127.0.0.1:20577 due to [Errno 32] Broken pipe
2024-02-21T17:33:00.994000Z TestFramework (INFO): Check we send a getavaaddr message to our avalanche outbound peers
2024-02-21T17:33:03.635000Z TestFramework (INFO): Check we send a getavaaddr message to our manually connected peers that support avalanche
2024-02-21T17:33:05.893000Z TestFramework (INFO): Check we send a getavaaddr message while our quorum is not established
2024-02-21T17:33:34.435000Z TestFramework (INFO): Check we also request the inbounds until the quorum is established
2024-02-21T17:35:41.049000Z TestFramework.utils (ERROR): wait_until() failed. Predicate: ''''
        def test_function():
            if check_connected:
                assert self.is_connected
            return test_function_in()
'''
2024-02-21T17:35:41.049000Z 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 537, in run_test
    self.test_addr_requests_order()
  File "/work/test/functional/abc_p2p_getavaaddr.py", line 517, in test_addr_requests_order
    check_addr_requests(requester1)
  File "/work/test/functional/abc_p2p_getavaaddr.py", line 509, in check_addr_requests
    p.wait_until(lambda: p.message_count.get("getavaaddr", 0) == 1)
  File "/work/test/functional/test_framework/p2p.py", line 565, in wait_until
    wait_until_helper(
  File "/work/test/functional/test_framework/util.py", line 297, in wait_until_helper
    raise AssertionError(
AssertionError: Predicate ''''
        def test_function():
            if check_connected:
                assert self.is_connected
            return test_function_in()
''' not true after 120.0 seconds
2024-02-21T17:35:41.100000Z TestFramework (INFO): Stopping nodes
2024-02-21T17:35:41.304000Z TestFramework (WARNING): Not cleaning up dir /work/abc-ci-builds/build-linux-arm/test/tmp/test_runner_₿₵_  _20240221_173109/abc_p2p_getavaaddr_9
2024-02-21T17:35:41.304000Z TestFramework (ERROR): Test failed. Test logging available at /work/abc-ci-builds/build-linux-arm/test/tmp/test_runner_₿₵_  _20240221_173109/abc_p2p_getavaaddr_9/test_framework.log
2024-02-21T17:35:41.304000Z TestFramework (ERROR): 
2024-02-21T17:35:41.304000Z TestFramework (ERROR): Hint: Call /work/test/functional/combine_logs.py '/work/abc-ci-builds/build-linux-arm/test/tmp/test_runner_₿₵_  _20240221_173109/abc_p2p_getavaaddr_9' to consolidate all logs
2024-02-21T17:35:41.304000Z TestFramework (ERROR): 
2024-02-21T17:35:41.304000Z TestFramework (ERROR): If this failure happened unexpectedly or intermittently, please file a bug and provide a link or upload of the combined log.
2024-02-21T17:35:41.304000Z TestFramework (ERROR): https://github.com/Bitcoin-ABC/bitcoin-abc/issues
2024-02-21T17:35:41.304000Z TestFramework (ERROR):

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

failure seems unrelated. looks like CI builds passed, i am able to build locally

This revision is now accepted and ready to land.Feb 21 2024, 18:40
PiRK added a subscriber: PiRK.

@bot build-linux-arm

Fabien requested review of this revision.Feb 21 2024, 19:30

For some reason the gitian build is no longer deterministic, I need to investigate

Fabien planned changes to this revision.Feb 21 2024, 19:33
Fabien requested review of this revision.Feb 22 2024, 07:09

PEBCAK issue

This revision is now accepted and ready to land.Feb 22 2024, 07:12
This revision was automatically updated to reflect the committed changes.