Page MenuHomePhabricator

Revert "Revert recent coin selection changes"
ClosedPublic

Authored by jasonbcox on Oct 21 2020, 00:12.

Details

Reviewers
deadalnix
Group Reviewers
Restricted Project
Commits
rABC54fef78d5b20: Revert "Revert recent coin selection changes"
Summary

This reverts the revert commit 85f266319f586634df631a7438ffa6892aabeb9a

This patch re-applies D7674 and D7691 which were reverted in D7729 due to breakages on master (TSAN + flakiness across all builds).
Now that we've backported a number of changes that fix the instability issues, it's time to try applying these patches again.

This patch also includes a one-line addition to accommodate D7848.

Test Plan
ninja check check-functional

Run TSAN in CI

Diff Detail

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

Event Timeline

@bot build-tsan

jasonbcox added inline comments.
src/wallet/test/coinselector_tests.cpp
321 ↗(On Diff #24872)

This line was added since the revert to accommodate D7848

Failed tests logs:

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

------- Stdout: -------
2020-10-21T00:17:03.191000Z TestFramework (INFO): Initializing test directory /work/abc-ci-builds/build-without-wallet/test/tmp/test_runner_₿₵_  _20201021_001701/rpc_bind_417
2020-10-21T00:17:03.228000Z TestFramework (INFO): Using interface 172.17.0.2 for testing
2020-10-21T00:17:03.229000Z TestFramework (INFO): Bind test for []
2020-10-21T00:17:04.256000Z TestFramework (INFO): Bind test for []
2020-10-21T00:17:04.776000Z TestFramework (INFO): Bind test for ['127.0.0.1']
2020-10-21T00:17:05.349000Z TestFramework (INFO): Bind test for ['127.0.0.1:32171']
2020-10-21T00:17:06.079000Z TestFramework (INFO): Bind test for ['127.0.0.1:32171', '127.0.0.1:32172']
2020-10-21T00:17:06.340000Z TestFramework (ERROR): Unexpected exception caught during testing
Traceback (most recent call last):
  File "/work/test/functional/test_framework/test_framework.py", line 209, in main
    self.run_test()
  File "/work/test/functional/rpc_bind.py", line 127, in run_test
    [('127.0.0.1', 32171), ('127.0.0.1', 32172)])
  File "/work/test/functional/rpc_bind.py", line 52, in run_bind_test
    assert_equal(set(get_bind_addrs(pid)), set(expected))
  File "/work/test/functional/test_framework/netutil.py", line 87, in get_bind_addrs
    inodes = get_socket_inodes(pid)
  File "/work/test/functional/test_framework/netutil.py", line 37, in get_socket_inodes
    target = os.readlink(os.path.join(base, item))
FileNotFoundError: [Errno 2] No such file or directory: '/proc/6392/fd/16'
2020-10-21T00:17:06.391000Z TestFramework (INFO): Stopping nodes
2020-10-21T00:17:06.593000Z TestFramework (WARNING): Not cleaning up dir /work/abc-ci-builds/build-without-wallet/test/tmp/test_runner_₿₵_  _20201021_001701/rpc_bind_417
2020-10-21T00:17:06.593000Z TestFramework (ERROR): Test failed. Test logging available at /work/abc-ci-builds/build-without-wallet/test/tmp/test_runner_₿₵_  _20201021_001701/rpc_bind_417/test_framework.log
2020-10-21T00:17:06.593000Z TestFramework (ERROR): Hint: Call /work/test/functional/combine_logs.py '/work/abc-ci-builds/build-without-wallet/test/tmp/test_runner_₿₵_  _20201021_001701/rpc_bind_417' to consolidate all logs

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

deadalnix requested changes to this revision.Oct 21 2020, 00:38
deadalnix added a subscriber: deadalnix.

Why?

This revision now requires changes to proceed.Oct 21 2020, 00:38
  • Rebase
  • Updated summary to better reflect the "why"
This revision is now accepted and ready to land.Oct 21 2020, 17:33