-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
swarm: flaky TestDialSimultaneousJoin #1421
Comments
Assigning myself. |
@vyzo Looking at the code related to go-libp2p/p2p/net/swarm/dial_worker.go Lines 256 to 258 in 5eaa48f
|
I don't recall targeting a specific line, just making sure we have a test for joined dials. |
@vyzo Ok, could you point me to 'joined dials' in the code to better understand what are we trying to test, please? |
And particularly how are we enforcing (or approaching) the "simultaneous" part of the test. |
It's the invariant that two concurrent dials to the same addresses are joined. |
Ok, but how do you define concurrent in practice? |
What I'm seeing here is the first dial timeouting before the second one has a chance to hit and I'm trying to figure out how to better guarantee that simultaneity. |
This extends to 'same peer' also right? (This might be implicit in what you just stated, just double checking because I'm new in libp2p.) |
yes, of course -- the dials are peer specific. |
Uhm, maybe somehow delay the first dial until the second one happens (with a channel probably). |
The text was updated successfully, but these errors were encountered: