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

Commit 7a4bd76

Browse files
authored
Remove --legacy-network-protocol CLI flag (#6411)
1 parent caf9fbe commit 7a4bd76

File tree

4 files changed

+36
-139
lines changed

4 files changed

+36
-139
lines changed

client/cli/src/params/network_params.rs

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -102,11 +102,6 @@ pub struct NetworkParams {
102102
/// By default this option is true for `--dev` and false otherwise.
103103
#[structopt(long)]
104104
pub discover_local: bool,
105-
106-
/// Use the legacy "pre-mainnet-launch" networking protocol. Enable if things seem broken.
107-
/// This option will be removed in the future.
108-
#[structopt(long)]
109-
pub legacy_network_protocol: bool,
110105
}
111106

112107
impl NetworkParams {
@@ -165,7 +160,6 @@ impl NetworkParams {
165160
},
166161
max_parallel_downloads: self.max_parallel_downloads,
167162
allow_non_globals_in_dht: self.discover_local || is_dev,
168-
use_new_block_requests_protocol: !self.legacy_network_protocol,
169163
}
170164
}
171165
}

client/network/src/config.rs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -425,9 +425,6 @@ pub struct NetworkConfiguration {
425425
pub max_parallel_downloads: u32,
426426
/// Should we insert non-global addresses into the DHT?
427427
pub allow_non_globals_in_dht: bool,
428-
/// If true, uses the `/<chainid>/block-requests/<version>` experimental protocol rather than
429-
/// the legacy substream. This option is meant to be hard-wired to `true` in the future.
430-
pub use_new_block_requests_protocol: bool,
431428
}
432429

433430
impl NetworkConfiguration {
@@ -459,7 +456,6 @@ impl NetworkConfiguration {
459456
},
460457
max_parallel_downloads: 5,
461458
allow_non_globals_in_dht: false,
462-
use_new_block_requests_protocol: true,
463459
}
464460
}
465461
}

client/network/src/protocol.rs

Lines changed: 36 additions & 128 deletions
Original file line numberDiff line numberDiff line change
@@ -250,9 +250,6 @@ pub struct Protocol<B: BlockT, H: ExHashT> {
250250
metrics: Option<Metrics>,
251251
/// The `PeerId`'s of all boot nodes.
252252
boot_node_ids: Arc<HashSet<PeerId>>,
253-
/// If true, we send back requests as `CustomMessageOutcome` events. If false, we directly
254-
/// dispatch requests using the legacy substream.
255-
use_new_block_requests_protocol: bool,
256253
}
257254

258255
#[derive(Default)]
@@ -374,7 +371,6 @@ impl<B: BlockT, H: ExHashT> Protocol<B, H> {
374371
block_announce_validator: Box<dyn BlockAnnounceValidator<B> + Send>,
375372
metrics_registry: Option<&Registry>,
376373
boot_node_ids: Arc<HashSet<PeerId>>,
377-
use_new_block_requests_protocol: bool,
378374
queue_size_report: Option<HistogramVec>,
379375
) -> error::Result<(Protocol<B, H>, sc_peerset::PeersetHandle)> {
380376
let info = chain.info();
@@ -458,7 +454,6 @@ impl<B: BlockT, H: ExHashT> Protocol<B, H> {
458454
None
459455
},
460456
boot_node_ids,
461-
use_new_block_requests_protocol,
462457
};
463458

464459
Ok((protocol, peerset_handle))
@@ -655,16 +650,6 @@ impl<B: BlockT, H: ExHashT> Protocol<B, H> {
655650
CustomMessageOutcome::None
656651
}
657652

658-
fn send_request(&mut self, who: &PeerId, message: Message<B>) {
659-
send_request::<B, H>(
660-
&mut self.behaviour,
661-
&mut self.context_data.stats,
662-
&mut self.context_data.peers,
663-
who,
664-
message,
665-
);
666-
}
667-
668653
fn send_message(
669654
&mut self,
670655
who: &PeerId,
@@ -896,15 +881,10 @@ impl<B: BlockT, H: ExHashT> Protocol<B, H> {
896881
Ok(sync::OnBlockData::Import(origin, blocks)) =>
897882
CustomMessageOutcome::BlockImport(origin, blocks),
898883
Ok(sync::OnBlockData::Request(peer, mut req)) => {
899-
if self.use_new_block_requests_protocol {
900-
self.update_peer_request(&peer, &mut req);
901-
CustomMessageOutcome::BlockRequest {
902-
target: peer,
903-
request: req,
904-
}
905-
} else {
906-
self.send_request(&peer, GenericMessage::BlockRequest(req));
907-
CustomMessageOutcome::None
884+
self.update_peer_request(&peer, &mut req);
885+
CustomMessageOutcome::BlockRequest {
886+
target: peer,
887+
request: req,
908888
}
909889
}
910890
Err(sync::BadPeer(id, repu)) => {
@@ -1077,15 +1057,11 @@ impl<B: BlockT, H: ExHashT> Protocol<B, H> {
10771057
match self.sync.new_peer(who.clone(), info.best_hash, info.best_number) {
10781058
Ok(None) => (),
10791059
Ok(Some(mut req)) => {
1080-
if self.use_new_block_requests_protocol {
1081-
self.update_peer_request(&who, &mut req);
1082-
self.pending_messages.push_back(CustomMessageOutcome::BlockRequest {
1083-
target: who.clone(),
1084-
request: req,
1085-
});
1086-
} else {
1087-
self.send_request(&who, GenericMessage::BlockRequest(req))
1088-
}
1060+
self.update_peer_request(&who, &mut req);
1061+
self.pending_messages.push_back(CustomMessageOutcome::BlockRequest {
1062+
target: who.clone(),
1063+
request: req,
1064+
});
10891065
},
10901066
Err(sync::BadPeer(id, repu)) => {
10911067
self.behaviour.disconnect_peer(&id);
@@ -1415,15 +1391,10 @@ impl<B: BlockT, H: ExHashT> Protocol<B, H> {
14151391
CustomMessageOutcome::BlockImport(origin, blocks)
14161392
},
14171393
Ok(sync::OnBlockData::Request(peer, mut req)) => {
1418-
if self.use_new_block_requests_protocol {
1419-
self.update_peer_request(&peer, &mut req);
1420-
CustomMessageOutcome::BlockRequest {
1421-
target: peer,
1422-
request: req,
1423-
}
1424-
} else {
1425-
self.send_request(&peer, GenericMessage::BlockRequest(req));
1426-
CustomMessageOutcome::None
1394+
self.update_peer_request(&peer, &mut req);
1395+
CustomMessageOutcome::BlockRequest {
1396+
target: peer,
1397+
request: req,
14271398
}
14281399
}
14291400
Err(sync::BadPeer(id, repu)) => {
@@ -1523,22 +1494,11 @@ impl<B: BlockT, H: ExHashT> Protocol<B, H> {
15231494
for result in results {
15241495
match result {
15251496
Ok((id, mut req)) => {
1526-
if self.use_new_block_requests_protocol {
1527-
update_peer_request(&mut self.context_data.peers, &id, &mut req);
1528-
self.pending_messages.push_back(CustomMessageOutcome::BlockRequest {
1529-
target: id,
1530-
request: req,
1531-
});
1532-
} else {
1533-
let msg = GenericMessage::BlockRequest(req);
1534-
send_request(
1535-
&mut self.behaviour,
1536-
&mut self.context_data.stats,
1537-
&mut self.context_data.peers,
1538-
&id,
1539-
msg
1540-
)
1541-
}
1497+
update_peer_request(&mut self.context_data.peers, &id, &mut req);
1498+
self.pending_messages.push_back(CustomMessageOutcome::BlockRequest {
1499+
target: id,
1500+
request: req,
1501+
});
15421502
}
15431503
Err(sync::BadPeer(id, repu)) => {
15441504
self.behaviour.disconnect_peer(&id);
@@ -1917,27 +1877,6 @@ pub enum CustomMessageOutcome<B: BlockT> {
19171877
None,
19181878
}
19191879

1920-
fn send_request<B: BlockT, H: ExHashT>(
1921-
behaviour: &mut GenericProto,
1922-
stats: &mut HashMap<&'static str, PacketStats>,
1923-
peers: &mut HashMap<PeerId, Peer<B, H>>,
1924-
who: &PeerId,
1925-
mut message: Message<B>,
1926-
) {
1927-
if let GenericMessage::BlockRequest(ref mut r) = message {
1928-
if let Some(ref mut peer) = peers.get_mut(who) {
1929-
r.id = peer.next_request_id;
1930-
peer.next_request_id += 1;
1931-
if let Some((timestamp, request)) = peer.block_request.take() {
1932-
trace!(target: "sync", "Request {} for {} is now obsolete.", request.id, who);
1933-
peer.obsolete_requests.insert(request.id, timestamp);
1934-
}
1935-
peer.block_request = Some((Instant::now(), r.clone()));
1936-
}
1937-
}
1938-
send_message::<B>(behaviour, stats, who, None, message)
1939-
}
1940-
19411880
fn update_peer_request<B: BlockT, H: ExHashT>(
19421881
peers: &mut HashMap<PeerId, Peer<B, H>>,
19431882
who: &PeerId,
@@ -2032,58 +1971,28 @@ impl<B: BlockT, H: ExHashT> NetworkBehaviour for Protocol<B, H> {
20321971
}
20331972

20341973
for (id, mut r) in self.sync.block_requests() {
2035-
if self.use_new_block_requests_protocol {
2036-
update_peer_request(&mut self.context_data.peers, &id, &mut r);
2037-
let event = CustomMessageOutcome::BlockRequest {
2038-
target: id.clone(),
2039-
request: r,
2040-
};
2041-
self.pending_messages.push_back(event);
2042-
} else {
2043-
send_request(
2044-
&mut self.behaviour,
2045-
&mut self.context_data.stats,
2046-
&mut self.context_data.peers,
2047-
&id,
2048-
GenericMessage::BlockRequest(r),
2049-
)
2050-
}
1974+
update_peer_request(&mut self.context_data.peers, &id, &mut r);
1975+
let event = CustomMessageOutcome::BlockRequest {
1976+
target: id.clone(),
1977+
request: r,
1978+
};
1979+
self.pending_messages.push_back(event);
20511980
}
20521981
for (id, mut r) in self.sync.justification_requests() {
2053-
if self.use_new_block_requests_protocol {
2054-
update_peer_request(&mut self.context_data.peers, &id, &mut r);
2055-
let event = CustomMessageOutcome::BlockRequest {
2056-
target: id,
2057-
request: r,
2058-
};
2059-
self.pending_messages.push_back(event);
2060-
} else {
2061-
send_request(
2062-
&mut self.behaviour,
2063-
&mut self.context_data.stats,
2064-
&mut self.context_data.peers,
2065-
&id,
2066-
GenericMessage::BlockRequest(r),
2067-
)
2068-
}
1982+
update_peer_request(&mut self.context_data.peers, &id, &mut r);
1983+
let event = CustomMessageOutcome::BlockRequest {
1984+
target: id,
1985+
request: r,
1986+
};
1987+
self.pending_messages.push_back(event);
20691988
}
20701989
for (id, r) in self.sync.finality_proof_requests() {
2071-
if self.use_new_block_requests_protocol {
2072-
let event = CustomMessageOutcome::FinalityProofRequest {
2073-
target: id,
2074-
block_hash: r.block,
2075-
request: r.request,
2076-
};
2077-
self.pending_messages.push_back(event);
2078-
} else {
2079-
send_request(
2080-
&mut self.behaviour,
2081-
&mut self.context_data.stats,
2082-
&mut self.context_data.peers,
2083-
&id,
2084-
GenericMessage::FinalityProofRequest(r),
2085-
)
2086-
}
1990+
let event = CustomMessageOutcome::FinalityProofRequest {
1991+
target: id,
1992+
block_hash: r.block,
1993+
request: r.request,
1994+
};
1995+
self.pending_messages.push_back(event);
20871996
}
20881997
if let Poll::Ready(Some((peer_id, result))) = self.pending_transactions.poll_next_unpin(cx) {
20891998
self.on_handle_extrinsic_import(peer_id, result);
@@ -2237,7 +2146,6 @@ mod tests {
22372146
Box::new(DefaultBlockAnnounceValidator::new(client.clone())),
22382147
None,
22392148
Default::default(),
2240-
true,
22412149
None,
22422150
).unwrap();
22432151

client/network/src/service.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,6 @@ impl<B: BlockT + 'static, H: ExHashT> NetworkWorker<B, H> {
224224
params.block_announce_validator,
225225
params.metrics_registry.as_ref(),
226226
boot_node_ids.clone(),
227-
params.network_config.use_new_block_requests_protocol,
228227
metrics.as_ref().map(|m| m.notifications_queues_size.clone()),
229228
)?;
230229

0 commit comments

Comments
 (0)