Do not call longest chain by default (#6704)

* Do not call longest chain by default

We always called longest chain by default just for some potential
logging. This was probably some oversight for when this select chain
implementation was introduced.

* Fix tests
This commit is contained in:
Bastian Köcher
2023-02-17 08:55:14 +01:00
committed by GitHub
parent 2853f349bf
commit 5ca430b649
2 changed files with 4 additions and 13 deletions
@@ -203,19 +203,12 @@ where
target_hash: Hash,
maybe_max_number: Option<BlockNumber>,
) -> Result<Hash, ConsensusError> {
let longest_chain_best =
self.longest_chain.finality_target(target_hash, maybe_max_number).await?;
if let IsDisputesAwareWithOverseer::Yes(ref selection) = self.selection {
selection
.finality_target_with_longest_chain(
target_hash,
longest_chain_best,
maybe_max_number,
)
.finality_target_with_longest_chain(target_hash, maybe_max_number)
.await
} else {
Ok(longest_chain_best)
self.longest_chain.finality_target(target_hash, maybe_max_number).await
}
}
}
@@ -364,11 +357,9 @@ where
pub(crate) async fn finality_target_with_longest_chain(
&self,
target_hash: Hash,
best_leaf: Hash,
maybe_max_number: Option<BlockNumber>,
) -> Result<Hash, ConsensusError> {
let mut overseer = self.overseer.clone();
gum::trace!(target: LOG_TARGET, ?best_leaf, "Longest chain");
let subchain_head = {
let (tx, rx) = oneshot::channel();
@@ -414,7 +405,7 @@ where
let subchain_header = self.block_header(subchain_head)?;
if subchain_header.number <= max {
gum::trace!(target: LOG_TARGET, ?best_leaf, "Constrained sub-chain head",);
gum::trace!(target: LOG_TARGET, ?subchain_head, "Constrained sub-chain head",);
subchain_head
} else {
let (ancestor_hash, _) =
+1 -1
View File
@@ -88,7 +88,7 @@ fn test_harness<T: Future<Output = VirtualOverseer>>(
let target_hash = case_vars.target_block.clone();
let selection_process = async move {
let best = select_relay_chain
.finality_target_with_longest_chain(target_hash, target_hash, None)
.finality_target_with_longest_chain(target_hash, None)
.await
.unwrap();
finality_target_tx.send(Some(best)).unwrap();