You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is incorrect, since ma.Multiaddr is (until we fix multiformats/go-multiaddr#198) an interface, and equality only checks equality of the pointer, not of the actual multiaddress. This has bitten us before, for example in #2247.
The text was updated successfully, but these errors were encountered:
The impact of this is that we dial the same multiaddr multiple times. On TCP, due to reuseport, this should lead to failed dial right away, whereas on QUIC, we'd actually dial twice. I instrumented my Kubo node, and this happens from time to time.
This probably doesn't warrant another patch release, but we should include a fix in the next release.
In the dial worker loop, we use maps of
ma.Multiaddr
s:go-libp2p/p2p/net/swarm/dial_worker.go
Line 32 in 8a3fafd
and
go-libp2p/p2p/net/swarm/dial_worker.go
Line 49 in 8a3fafd
This is incorrect, since
ma.Multiaddr
is (until we fix multiformats/go-multiaddr#198) an interface, and equality only checks equality of the pointer, not of the actual multiaddress. This has bitten us before, for example in #2247.The text was updated successfully, but these errors were encountered: