Page MenuHomePhabricator

fuzz: Avoid running over all inputs after merging them
ClosedPublic

Authored by Fabien on Nov 5 2020, 09:04.

Details

Reviewers
PiRK
Group Reviewers
Restricted Project
Commits
rABC5596cffb0d50: fuzz: Avoid running over all inputs after merging them
Summary
This cuts the time it takes to merge inputs by half

Backport of core PR18509.

Depends on D8271.

Test Plan
ninja bitcoin-fuzzers
./test/fuzz/test_runner.py <path_to_corpus>

git clone https://github.com/Bitcoin-ABC/qa-assets.git ~/seeds
./test/fuzz/test_runner.py ~/seeds/fuzz_seed_corpus \
  --m_dir=<path_to_corpus> \
  -l DEBUG

Event Timeline

Fabien requested review of this revision.Nov 5 2020, 09:04

Failed tests logs:

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

------- Stdout: -------
2020-11-05T09:06:49.237000Z TestFramework (INFO): Initializing test directory /work/abc-ci-builds/build-debug/test/tmp/test_runner_₿₵_  _20201105_090647/rpc_bind_271
2020-11-05T09:06:49.238000Z TestFramework (INFO): Check for linux
2020-11-05T09:06:49.279000Z TestFramework (INFO): Check for ipv6
2020-11-05T09:06:49.280000Z TestFramework (INFO): Check for non-loopback interface
2020-11-05T09:06:49.280000Z TestFramework (INFO): Bind test for []
2020-11-05T09:06:49.893000Z TestFramework (INFO): Bind test for []
2020-11-05T09:06:50.364000Z TestFramework (ERROR): Unexpected exception caught during testing
Traceback (most recent call last):
  File "/work/test/functional/test_framework/test_framework.py", line 120, in main
    self.run_test()
  File "/work/test/functional/rpc_bind.py", line 133, in run_test
    self._run_loopback_tests()
  File "/work/test/functional/rpc_bind.py", line 156, in _run_loopback_tests
    ('127.0.0.1', self.defaultport), ('::1', self.defaultport)])
  File "/work/test/functional/rpc_bind.py", line 71, 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/5416/fd/17'
2020-11-05T09:06:50.415000Z TestFramework (INFO): Stopping nodes
2020-11-05T09:06:51.048000Z TestFramework (WARNING): Not cleaning up dir /work/abc-ci-builds/build-debug/test/tmp/test_runner_₿₵_  _20201105_090647/rpc_bind_271
2020-11-05T09:06:51.048000Z TestFramework (ERROR): Test failed. Test logging available at /work/abc-ci-builds/build-debug/test/tmp/test_runner_₿₵_  _20201105_090647/rpc_bind_271/test_framework.log
2020-11-05T09:06:51.048000Z TestFramework (ERROR): Hint: Call /work/test/functional/combine_logs.py '/work/abc-ci-builds/build-debug/test/tmp/test_runner_₿₵_  _20201105_090647/rpc_bind_271' to consolidate all logs

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

PiRK requested changes to this revision.EditedNov 5 2020, 10:15
PiRK added a subscriber: PiRK.

The description is missing the PR number 18509

This revision now requires changes to proceed.Nov 5 2020, 10:15
Fabien requested review of this revision.Nov 5 2020, 10:17
Fabien edited the summary of this revision. (Show Details)
Fabien edited the summary of this revision. (Show Details)

Updated summary with PR number

This revision is now accepted and ready to land.Nov 5 2020, 10:27
This revision was landed with ongoing or failed builds.Nov 5 2020, 16:49
This revision was automatically updated to reflect the committed changes.