test: intermittent issue in p2p_1p1c_network.py #31721

issue maflcko openend this issue on January 23, 2025
  1. maflcko commented at 9:06 am on January 23, 2025: member

    Looks like this still happens: #31713 (comment)

    So this is likely a non-timeout issue. Note that the test has immediate tx-relay (self.noban_tx_relay) enabled, so trickle delay should not be an issue.

    Originally posted by @maflcko in #31701 (comment)

  2. maflcko added the label CI failed on Jan 23, 2025
  3. Sjors commented at 12:36 pm on January 27, 2025: member
    Seeing it as well on my fork, especially (only?) in the test-each-commit job: https://github.com/Sjors/bitcoin/actions/runs/12987091010/job/36215271575?pr=50#step:6:49348
  4. mzumsande commented at 10:17 pm on January 28, 2025: contributor

    I think that the following is happening:

    • Orphan is announced to node 1 by a python peer, but it doesn’t send the parent tx.
    • submitpackage is executed on node 0, which will sequentially schedule RelayTransaction, first for the parent, then for the child.
    • Usually parent and child are put together in one inv, but if the node sends out an inv in between these two RelayTransaction calls, the inv for the child may arrive after the tx for the parent was received - since we now only do orphan resolution with announcers after #31397, this means we can’t do it right away - we have to wait for the outstanding txrequest with the python peer to time out, ask node0 for the parent again. There is a 60s timeout for this - same as the sync_mempool timeout.

    The failure can be reproduced by adding a small sleep in submitpackage after BroadcastTransaction (e.g. 1s) to ensure the parent and child make it into different invs, and also reducing the sync_mempools timeout slightly (e.g. from 60s to 55s).

    I’ll open a fix.

  5. achow101 closed this on Jan 29, 2025

  6. achow101 referenced this in commit 809d7e763c on Jan 29, 2025

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2025-02-22 15:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me