mirror of
https://github.com/hl-archive-node/nanoreth.git
synced 2025-12-06 10:59:55 +00:00
Revert "refactor(stages): input target reached & output done checks" (#3114)
This commit is contained in:
committed by
GitHub
parent
9a8c680e0f
commit
7ec4b0a5cf
@ -1370,7 +1370,6 @@ mod tests {
|
||||
chain_spec: Arc<ChainSpec>,
|
||||
pipeline_exec_outputs: VecDeque<Result<ExecOutput, StageError>>,
|
||||
executor_results: Vec<PostState>,
|
||||
max_block: Option<BlockNumber>,
|
||||
) -> (TestBeaconConsensusEngine, TestEnv<Arc<Env<WriteMap>>>) {
|
||||
reth_tracing::init_test_tracing();
|
||||
let db = create_test_rw_db();
|
||||
@ -1382,13 +1381,10 @@ mod tests {
|
||||
|
||||
// Setup pipeline
|
||||
let (tip_tx, tip_rx) = watch::channel(H256::default());
|
||||
let mut pipeline_builder = Pipeline::builder()
|
||||
let pipeline = Pipeline::builder()
|
||||
.add_stages(TestStages::new(pipeline_exec_outputs, Default::default()))
|
||||
.with_tip_sender(tip_tx);
|
||||
if let Some(max_block) = max_block {
|
||||
pipeline_builder = pipeline_builder.with_max_block(max_block);
|
||||
}
|
||||
let pipeline = pipeline_builder.build(db.clone());
|
||||
.with_tip_sender(tip_tx)
|
||||
.build(db.clone());
|
||||
|
||||
// Setup blockchain tree
|
||||
let externals =
|
||||
@ -1408,7 +1404,7 @@ mod tests {
|
||||
blockchain_provider,
|
||||
Box::<TokioTaskExecutor>::default(),
|
||||
Box::<NoopSyncStateUpdater>::default(),
|
||||
max_block,
|
||||
None,
|
||||
false,
|
||||
payload_builder,
|
||||
None,
|
||||
@ -1443,7 +1439,6 @@ mod tests {
|
||||
chain_spec,
|
||||
VecDeque::from([Err(StageError::ChannelClosed)]),
|
||||
Vec::default(),
|
||||
Some(1),
|
||||
);
|
||||
let res = spawn_consensus_engine(consensus_engine);
|
||||
|
||||
@ -1473,7 +1468,6 @@ mod tests {
|
||||
chain_spec,
|
||||
VecDeque::from([Err(StageError::ChannelClosed)]),
|
||||
Vec::default(),
|
||||
Some(1),
|
||||
);
|
||||
let mut rx = spawn_consensus_engine(consensus_engine);
|
||||
|
||||
@ -1513,11 +1507,10 @@ mod tests {
|
||||
let (consensus_engine, env) = setup_consensus_engine(
|
||||
chain_spec,
|
||||
VecDeque::from([
|
||||
Ok(ExecOutput { checkpoint: StageCheckpoint::new(1) }),
|
||||
Ok(ExecOutput { checkpoint: StageCheckpoint::new(1), done: true }),
|
||||
Err(StageError::ChannelClosed),
|
||||
]),
|
||||
Vec::default(),
|
||||
Some(2),
|
||||
);
|
||||
let rx = spawn_consensus_engine(consensus_engine);
|
||||
|
||||
@ -1530,9 +1523,7 @@ mod tests {
|
||||
|
||||
assert_matches!(
|
||||
rx.await,
|
||||
Ok(
|
||||
Err(BeaconConsensusEngineError::Pipeline(n))
|
||||
) if matches!(*n.as_ref(),PipelineError::Stage(StageError::ChannelClosed))
|
||||
Ok(Err(BeaconConsensusEngineError::Pipeline(n))) if matches!(*n.as_ref(),PipelineError::Stage(StageError::ChannelClosed))
|
||||
);
|
||||
}
|
||||
|
||||
@ -1546,12 +1537,15 @@ mod tests {
|
||||
.paris_activated()
|
||||
.build(),
|
||||
);
|
||||
let (consensus_engine, env) = setup_consensus_engine(
|
||||
let (mut consensus_engine, env) = setup_consensus_engine(
|
||||
chain_spec,
|
||||
VecDeque::from([Ok(ExecOutput { checkpoint: StageCheckpoint::new(max_block) })]),
|
||||
VecDeque::from([Ok(ExecOutput {
|
||||
checkpoint: StageCheckpoint::new(max_block),
|
||||
done: true,
|
||||
})]),
|
||||
Vec::default(),
|
||||
Some(max_block),
|
||||
);
|
||||
consensus_engine.sync.set_max_block(max_block);
|
||||
let rx = spawn_consensus_engine(consensus_engine);
|
||||
|
||||
let _ = env
|
||||
@ -1588,9 +1582,11 @@ mod tests {
|
||||
);
|
||||
let (consensus_engine, env) = setup_consensus_engine(
|
||||
chain_spec,
|
||||
VecDeque::from([Ok(ExecOutput { checkpoint: StageCheckpoint::new(0) })]),
|
||||
VecDeque::from([Ok(ExecOutput {
|
||||
done: true,
|
||||
checkpoint: StageCheckpoint::new(0),
|
||||
})]),
|
||||
Vec::default(),
|
||||
None,
|
||||
);
|
||||
|
||||
let mut engine_rx = spawn_consensus_engine(consensus_engine);
|
||||
@ -1617,9 +1613,11 @@ mod tests {
|
||||
);
|
||||
let (consensus_engine, env) = setup_consensus_engine(
|
||||
chain_spec,
|
||||
VecDeque::from([Ok(ExecOutput { checkpoint: StageCheckpoint::new(0) })]),
|
||||
VecDeque::from([Ok(ExecOutput {
|
||||
done: true,
|
||||
checkpoint: StageCheckpoint::new(0),
|
||||
})]),
|
||||
Vec::default(),
|
||||
None,
|
||||
);
|
||||
|
||||
let genesis = random_block(0, None, None, Some(0));
|
||||
@ -1664,11 +1662,10 @@ mod tests {
|
||||
let (consensus_engine, env) = setup_consensus_engine(
|
||||
chain_spec,
|
||||
VecDeque::from([
|
||||
Ok(ExecOutput { checkpoint: StageCheckpoint::new(0) }),
|
||||
Ok(ExecOutput { checkpoint: StageCheckpoint::new(0) }),
|
||||
Ok(ExecOutput { done: true, checkpoint: StageCheckpoint::new(0) }),
|
||||
Ok(ExecOutput { done: true, checkpoint: StageCheckpoint::new(0) }),
|
||||
]),
|
||||
Vec::default(),
|
||||
None,
|
||||
);
|
||||
|
||||
let genesis = random_block(0, None, None, Some(0));
|
||||
@ -1713,9 +1710,11 @@ mod tests {
|
||||
);
|
||||
let (consensus_engine, env) = setup_consensus_engine(
|
||||
chain_spec,
|
||||
VecDeque::from([Ok(ExecOutput { checkpoint: StageCheckpoint::new(0) })]),
|
||||
VecDeque::from([Ok(ExecOutput {
|
||||
done: true,
|
||||
checkpoint: StageCheckpoint::new(0),
|
||||
})]),
|
||||
Vec::default(),
|
||||
None,
|
||||
);
|
||||
|
||||
let genesis = random_block(0, None, None, Some(0));
|
||||
@ -1749,11 +1748,10 @@ mod tests {
|
||||
let (consensus_engine, env) = setup_consensus_engine(
|
||||
chain_spec,
|
||||
VecDeque::from([
|
||||
Ok(ExecOutput { checkpoint: StageCheckpoint::new(0) }),
|
||||
Ok(ExecOutput { checkpoint: StageCheckpoint::new(0) }),
|
||||
Ok(ExecOutput { done: true, checkpoint: StageCheckpoint::new(0) }),
|
||||
Ok(ExecOutput { done: true, checkpoint: StageCheckpoint::new(0) }),
|
||||
]),
|
||||
Vec::default(),
|
||||
None,
|
||||
);
|
||||
|
||||
let genesis = random_block(0, None, None, Some(0));
|
||||
@ -1799,11 +1797,10 @@ mod tests {
|
||||
let (consensus_engine, env) = setup_consensus_engine(
|
||||
chain_spec,
|
||||
VecDeque::from([
|
||||
Ok(ExecOutput { checkpoint: StageCheckpoint::new(0) }),
|
||||
Ok(ExecOutput { checkpoint: StageCheckpoint::new(0) }),
|
||||
Ok(ExecOutput { done: true, checkpoint: StageCheckpoint::new(0) }),
|
||||
Ok(ExecOutput { done: true, checkpoint: StageCheckpoint::new(0) }),
|
||||
]),
|
||||
Vec::default(),
|
||||
None,
|
||||
);
|
||||
|
||||
let genesis = random_block(0, None, None, Some(0));
|
||||
@ -1846,9 +1843,11 @@ mod tests {
|
||||
);
|
||||
let (consensus_engine, env) = setup_consensus_engine(
|
||||
chain_spec,
|
||||
VecDeque::from([Ok(ExecOutput { checkpoint: StageCheckpoint::new(0) })]),
|
||||
VecDeque::from([Ok(ExecOutput {
|
||||
done: true,
|
||||
checkpoint: StageCheckpoint::new(0),
|
||||
})]),
|
||||
Vec::default(),
|
||||
None,
|
||||
);
|
||||
|
||||
let mut engine_rx = spawn_consensus_engine(consensus_engine);
|
||||
@ -1877,9 +1876,11 @@ mod tests {
|
||||
);
|
||||
let (consensus_engine, env) = setup_consensus_engine(
|
||||
chain_spec,
|
||||
VecDeque::from([Ok(ExecOutput { checkpoint: StageCheckpoint::new(0) })]),
|
||||
VecDeque::from([Ok(ExecOutput {
|
||||
done: true,
|
||||
checkpoint: StageCheckpoint::new(0),
|
||||
})]),
|
||||
Vec::default(),
|
||||
None,
|
||||
);
|
||||
|
||||
let genesis = random_block(0, None, None, Some(0));
|
||||
@ -1921,9 +1922,11 @@ mod tests {
|
||||
);
|
||||
let (consensus_engine, env) = setup_consensus_engine(
|
||||
chain_spec,
|
||||
VecDeque::from([Ok(ExecOutput { checkpoint: StageCheckpoint::new(0) })]),
|
||||
VecDeque::from([Ok(ExecOutput {
|
||||
done: true,
|
||||
checkpoint: StageCheckpoint::new(0),
|
||||
})]),
|
||||
Vec::default(),
|
||||
None,
|
||||
);
|
||||
|
||||
let genesis = random_block(0, None, None, Some(0));
|
||||
@ -1976,9 +1979,11 @@ mod tests {
|
||||
);
|
||||
let (consensus_engine, env) = setup_consensus_engine(
|
||||
chain_spec,
|
||||
VecDeque::from([Ok(ExecOutput { checkpoint: StageCheckpoint::new(0) })]),
|
||||
VecDeque::from([Ok(ExecOutput {
|
||||
done: true,
|
||||
checkpoint: StageCheckpoint::new(0),
|
||||
})]),
|
||||
Vec::from([exec_result2]),
|
||||
None,
|
||||
);
|
||||
|
||||
insert_blocks(env.db.as_ref(), [&data.genesis, &block1].into_iter());
|
||||
|
||||
@ -83,6 +83,12 @@ where
|
||||
self.metrics.active_block_downloads.set(self.inflight_full_block_requests.len() as f64);
|
||||
}
|
||||
|
||||
/// Sets the max block value for testing
|
||||
#[cfg(test)]
|
||||
pub(crate) fn set_max_block(&mut self, block: BlockNumber) {
|
||||
self.max_block = Some(block);
|
||||
}
|
||||
|
||||
/// Cancels all full block requests that are in progress.
|
||||
pub(crate) fn clear_full_block_requests(&mut self) {
|
||||
self.inflight_full_block_requests.clear();
|
||||
|
||||
Reference in New Issue
Block a user