-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Upgrade to libp2p 0.51.3 #13587
Upgrade to libp2p 0.51.3 #13587
Conversation
) | ||
} | ||
FromSwarm::DialFailure(e) => | ||
for (p, _) in self.protocols.values_mut() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this assumes that for every connection we register all protocols. not sure why handler.into_iter()
was used before since the logic seems equal in both cases to me
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this assumes that for every connection we register all protocols.
Sounds correct
not sure why handler.into_iter() was used before since the logic seems equal in both cases to me
I don't know either but it looks right what has changed here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
At least we don't have ConnectionHandler
passed as an argument of DialFailure
in libp2p-0.51.2, so I would presume this means the connection failed completely.
} | ||
|
||
{ | ||
let mut list_to_filter = self.kademlia.addresses_of_peer(peer_id); | ||
let mut list_to_filter = self.kademlia.handle_pending_outbound_connection( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should we attempt to get more addresses from kademlia and mdns for a peer if there's no ID (maybe_peer
is None
)?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there easy way to do it? I'd probably not bother with it and just let the next random walk find new peers.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there easy way to do it?
the code already does this. no need to do anything.
I was asking if it even makes sense to probe kademlia / mdns if peerID is empty. I guess it won't hurt. Otherwise we can just return empty Vec
if maybe_peer.is_none()
in the beginning of this function.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would err on the side of caution and keep the old behavior for now at least.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Addressed in a02f891
This comment was marked as outdated.
This comment was marked as outdated.
paritytech#13587 (comment) fyi: I don't really know what the old behaviour was.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
Don't understand why
|
}; | ||
|
||
let (transport, bandwidth) = bandwidth::BandwidthLogging::new(transport); | ||
|
||
let authentication_config = |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is the biggest change in 0.51.3 along with deprecating mplex
the import for |
It looks like it worked because now it fails in |
Yes 🙌 Thanks for your help 🙏 |
bot merge |
* client/network: upgrade to libp2p 0.51.0 * make discovery.rs compile * make peer_info.rs compile * changes to notifications and request-response proto * make service.rs compile * towards making request_responses.rs compile * make request_responses.rs compile * make request_responses.rs compile * fix notifications/behaviour.rs tests * fix warnings * remove old code * allow deprecated code (temporary) * upgrade to libp2p 0.51.1 * add TODO for behaviour tests * return empty vec if peer_id is absent #13587 (comment) fyi: I don't really know what the old behaviour was. * update comment to reflect new defaults Closes #13338 * Revert "update comment to reflect new defaults" This reverts commit 7a981ab. * remove config.rs (from wrong merge) * upgrade to libp2p 0.51.2 * fix formatting * use handle_pending_outbound_connection in networt_state RPC * update deps * use re-exports when we use other libp2p packages * Apply suggestions from code review Co-authored-by: Dmitry Markin <[email protected]> * format code * handle potential errors in network_state RPC * only update libp2p crate * update libp2p-core * fix docs * use libp2p-identity instead of libp2p where it's possible. libp2p-identity is much smaller, hence makes sense to use it instead of larger libp2p crate. * Update client/network/src/discovery.rs Co-authored-by: Aaro Altonen <[email protected]> * update Cargo.lock * add comment for per_connection_event_buffer_size current value is somewhat arbitrary and needs to be tweaked depending on memory usage and network worker sleep stats. * fix link format * update Cargo.lock * upgrade to libp2p 0.51.3 * deprecate mplex * Revert "deprecate mplex" This reverts commit 9e25820. * Revert "upgrade to libp2p 0.51.3" This reverts commit 6544dd4. * use new libp2p version in `statement` crate * pin version temporarily * libp2p 0.51.3 * deprecate mplex * deprecate legacy noise handshake * fix build error * update libp2p-identity * enable libp2p-identity:ed25519 feature in sc-consensus * enable ed25519 for peerset as well --------- Co-authored-by: Dmitry Markin <[email protected]> Co-authored-by: Aaro Altonen <[email protected]> Co-authored-by: parity-processbot <>
* client/network: upgrade to libp2p 0.51.0 * make discovery.rs compile * make peer_info.rs compile * changes to notifications and request-response proto * make service.rs compile * towards making request_responses.rs compile * make request_responses.rs compile * make request_responses.rs compile * fix notifications/behaviour.rs tests * fix warnings * remove old code * allow deprecated code (temporary) * upgrade to libp2p 0.51.1 * add TODO for behaviour tests * return empty vec if peer_id is absent paritytech#13587 (comment) fyi: I don't really know what the old behaviour was. * update comment to reflect new defaults Closes paritytech#13338 * Revert "update comment to reflect new defaults" This reverts commit 7a981ab. * remove config.rs (from wrong merge) * upgrade to libp2p 0.51.2 * fix formatting * use handle_pending_outbound_connection in networt_state RPC * update deps * use re-exports when we use other libp2p packages * Apply suggestions from code review Co-authored-by: Dmitry Markin <[email protected]> * format code * handle potential errors in network_state RPC * only update libp2p crate * update libp2p-core * fix docs * use libp2p-identity instead of libp2p where it's possible. libp2p-identity is much smaller, hence makes sense to use it instead of larger libp2p crate. * Update client/network/src/discovery.rs Co-authored-by: Aaro Altonen <[email protected]> * update Cargo.lock * add comment for per_connection_event_buffer_size current value is somewhat arbitrary and needs to be tweaked depending on memory usage and network worker sleep stats. * fix link format * update Cargo.lock * upgrade to libp2p 0.51.3 * deprecate mplex * Revert "deprecate mplex" This reverts commit 9e25820. * Revert "upgrade to libp2p 0.51.3" This reverts commit 6544dd4. * use new libp2p version in `statement` crate * pin version temporarily * libp2p 0.51.3 * deprecate mplex * deprecate legacy noise handshake * fix build error * update libp2p-identity * enable libp2p-identity:ed25519 feature in sc-consensus * enable ed25519 for peerset as well --------- Co-authored-by: Dmitry Markin <[email protected]> Co-authored-by: Aaro Altonen <[email protected]> Co-authored-by: parity-processbot <>
Polkadot companion: paritytech/polkadot#7000
Cumulus companion: paritytech/cumulus#2429
Closes #13537