HomePhabricator

zmq test: dedup message reception handling in ZMQSubscriber

Description

zmq test: dedup message reception handling in ZMQSubscriber

Summary:
PR description:

Fixes core#20934 by using the "sync up" method described in core#20538.

After improving robustness with this approach (commits 1-3), it turned out that there were still some fails, but those were unrelated to zmq: Out of 500 runs, 3 times sync_mempool() or sync_blocks() timed out, which can happen because the trickle relay time has no upper bound -- hence in rare cases, it takes longer than 60s. This is fixed by enabling immediate tx relay on node1 (commit 4), which as a nice side-effect also gives us a rough 2x speedup for the test.

For further details, also see the explanations in the commit messages.

Note that the changes in commit 4, the speedup from 45s to 14s runtime using noban permissions, were already applied in Bitcoin ABC in D10311.

This is a backport of core#21008 [1/3]
https://github.com/bitcoin/bitcoin/pull/21008/commits/6014d6e1b5a0dda6e20c2721f0bdb7e6a63ece81

Depends on D10588

Test Plan: ninja check-functional

Reviewers: #bitcoin_abc, Fabien

Reviewed By: #bitcoin_abc, Fabien

Differential Revision: https://reviews.bitcoinabc.org/D10589

Details

Provenance
Sebastian Falbesoner <sebastian.falbesoner@gmail.com>Authored on Jan 23 2021, 21:19
PiRKCommitted on Nov 30 2021, 17:27
PiRKPushed on Nov 30 2021, 17:27
Reviewer
Restricted Project
Differential Revision
D10589: zmq test: dedup message reception handling in ZMQSubscriber
Parents
rABCf6f7b13a51c5: zmq test: deduplicate test setup code (node restart, topics subscription)
Branches
Unknown
Tags
Unknown