Skip to content
This repository has been archived by the owner on Nov 15, 2023. It is now read-only.

Call NetworkService::add_known_address before sending a request #2726

Merged
8 commits merged into from
Mar 28, 2021

Conversation

tomaka
Copy link
Contributor

@tomaka tomaka commented Mar 26, 2021

Requires paritytech/substrate#8467 to be merged first. As is, this PR doesn't compile because of the missing function.

See the comment I added to OutgoingRequest.

Basically, you can't just call send_request(OutgoingRequest::Peer(some_peer_id)) and expect it to magically work, as sc-network might have to establish a TCP connection but might not be aware of any address for that peer.

This PR changes Recipient::Authority to pass the addresses from sc-authority-discovery to sc-network.

I've also removed the peer_id_from_multiaddr function, because it does the same as sc-network::config::parse_addr.

@tomaka tomaka added A0-please_review Pull request needs code review. B0-silent Changes should not be mentioned in any release notes C1-low PR touches the given topic and has a low impact on builders. labels Mar 26, 2021
@tomaka tomaka requested review from eskimor and rphmeier March 26, 2021 16:04
Ok(v) => v,
Err(_) => continue,
};
NetworkService::add_known_address(
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Two questions:

  1. Why do we only need this when we want to connect to authorities?
  2. Don't we keep a DHT to resolve PeerIds to addresses? I mean if we have them cached locally, it would be stupid to not use them, but it should still work if we did not - right?

@rphmeier rphmeier added the D2-notlive 💤 PR contains changes in a runtime directory that is not deployed to a chain that requires an audit. label Mar 28, 2021
@rphmeier
Copy link
Contributor

bot merge

@ghost
Copy link

ghost commented Mar 28, 2021

Waiting for commit status.

@ghost ghost merged commit 43a2638 into paritytech:master Mar 28, 2021
ordian added a commit that referenced this pull request Mar 28, 2021
* master:
  Call NetworkService::add_known_address before sending a request (#2726)
  Overseer: subsystems communicate directly (#2227)
  Request based PoV distribution (#2640)
rphmeier added a commit that referenced this pull request Mar 28, 2021
* Call NetworkService::add_known_address before sending a request

* Better doc

* Update Substrate

* Update Substrate

* Restore the import 🤷‍♀️ I don't know why it compiles locally

* imports correctly

Co-authored-by: Robert Habermeier <[email protected]>
@tomaka tomaka deleted the addresses-on-request branch March 29, 2021 06:32
This pull request was closed.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
A0-please_review Pull request needs code review. B0-silent Changes should not be mentioned in any release notes C1-low PR touches the given topic and has a low impact on builders. D2-notlive 💤 PR contains changes in a runtime directory that is not deployed to a chain that requires an audit.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants