Skip to content

Commit

Permalink
Merge #20522: [test] Fix sync issue in disconnect_p2ps
Browse files Browse the repository at this point in the history
3ebde21 [test] Fix wait condition in disconnect_p2ps (Amiti Uttarwar)

Pull request description:

  #19315 currently has a [test failure](https://cirrus-ci.com/task/4545582645641216) because of a race. `disconnect_p2ps` is intended to have a `wait_until` clause that prevents this race, but the conditional doesn't match since its comparing two different object types. `MY_SUBVERSION` is defined in messages.py as a byte string, but is compared to the value returned by the RPC. This PR simply converts types to ensure they match, which should prevent the race from occurring.

  HUGE PROPS TO jnewbery for discovering the issue 🔎

ACKs for top commit:
  jnewbery:
    ACK 3ebde21
  glozow:
    Code review ACK bitcoin/bitcoin@3ebde21

Tree-SHA512: ca096b80a3e4d757a645f38846d6dc89d6a3d35c3435513a72d278e305faddd4aff9e75a767941b51b2abbf59c82679bac1e9a0140d6f285efe3053e51bcc2a8
  • Loading branch information
MarcoFalke committed Nov 28, 2020
2 parents 854b36c + 3ebde21 commit 7ae86b3
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion test/functional/test_framework/test_node.py
Original file line number Diff line number Diff line change
Expand Up @@ -544,7 +544,7 @@ def add_p2p_connection(self, p2p_conn, *, wait_for_verack=True, **kwargs):

def num_test_p2p_connections(self):
"""Return number of test framework p2p connections to the node."""
return len([peer for peer in self.getpeerinfo() if peer['subver'] == MY_SUBVERSION])
return len([peer for peer in self.getpeerinfo() if peer['subver'] == MY_SUBVERSION.decode("utf-8")])

def disconnect_p2ps(self):
"""Close all p2p connections to the node."""
Expand Down

0 comments on commit 7ae86b3

Please sign in to comment.