Skip to content

Commit 54dff5c

Browse files
committed
chore(batcher): remove block metadata member from block builder factory
1 parent bd62ab3 commit 54dff5c

File tree

3 files changed

+17
-17
lines changed

3 files changed

+17
-17
lines changed

crates/starknet_batcher/src/block_builder.rs

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -217,17 +217,13 @@ async fn collect_execution_results_and_stream_txs(
217217
Ok(false)
218218
}
219219

220-
pub struct BlockMetadata {
221-
pub height: BlockNumber,
222-
pub retrospective_block_hash: Option<BlockHashAndNumber>,
223-
}
224-
225220
/// The BlockBuilderFactoryTrait is responsible for creating a new block builder.
226221
#[cfg_attr(test, automock)]
227222
pub trait BlockBuilderFactoryTrait {
228223
fn create_block_builder(
229224
&self,
230-
block_metadata: BlockMetadata,
225+
height: BlockNumber,
226+
retrospective_block_hash: Option<BlockHashAndNumber>,
231227
execution_params: BlockBuilderExecutionParams,
232228
tx_provider: Box<dyn TransactionProvider>,
233229
output_content_sender: Option<tokio::sync::mpsc::UnboundedSender<Transaction>>,
@@ -302,11 +298,12 @@ pub struct BlockBuilderFactory {
302298
impl BlockBuilderFactory {
303299
fn preprocess_and_create_transaction_executor(
304300
&self,
305-
block_metadata: &BlockMetadata,
301+
height: BlockNumber,
302+
retrospective_block_hash: Option<BlockHashAndNumber>,
306303
) -> BlockBuilderResult<TransactionExecutor<PapyrusReader>> {
307304
let block_builder_config = self.block_builder_config.clone();
308305
let next_block_info = BlockInfo {
309-
block_number: block_metadata.height,
306+
block_number: height,
310307
block_timestamp: BlockTimestamp(chrono::Utc::now().timestamp().try_into()?),
311308
sequencer_address: block_builder_config.sequencer_address,
312309
// TODO (yael 7/10/2024): add logic to compute gas prices
@@ -332,7 +329,7 @@ impl BlockBuilderFactory {
332329
// cache.
333330
let state_reader = PapyrusReader::new(
334331
self.storage_reader.clone(),
335-
block_metadata.height,
332+
height,
336333
// TODO(Yael 18/9/2024): dont forget to flush the cached_state cache into the global
337334
// cache on decision_reached.
338335
self.global_class_hash_to_class.clone(),
@@ -341,7 +338,7 @@ impl BlockBuilderFactory {
341338
let executor = TransactionExecutor::pre_process_and_create(
342339
state_reader,
343340
block_context,
344-
block_metadata.retrospective_block_hash,
341+
retrospective_block_hash,
345342
block_builder_config.execute_config,
346343
)?;
347344

@@ -352,13 +349,15 @@ impl BlockBuilderFactory {
352349
impl BlockBuilderFactoryTrait for BlockBuilderFactory {
353350
fn create_block_builder(
354351
&self,
355-
block_metadata: BlockMetadata,
352+
height: BlockNumber,
353+
retrospective_block_hash: Option<BlockHashAndNumber>,
356354
execution_params: BlockBuilderExecutionParams,
357355
tx_provider: Box<dyn TransactionProvider>,
358356
output_content_sender: Option<tokio::sync::mpsc::UnboundedSender<Transaction>>,
359357
abort_signal_receiver: tokio::sync::oneshot::Receiver<()>,
360358
) -> BlockBuilderResult<Box<dyn BlockBuilderTrait>> {
361-
let executor = self.preprocess_and_create_transaction_executor(&block_metadata)?;
359+
let executor =
360+
self.preprocess_and_create_transaction_executor(height, retrospective_block_hash)?;
362361
Ok(Box::new(BlockBuilder::new(
363362
Box::new(executor),
364363
tx_provider,

crates/starknet_batcher/src/proposal_manager.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ use crate::block_builder::{
2020
BlockBuilderFactoryTrait,
2121
BlockBuilderTrait,
2222
BlockExecutionArtifacts,
23-
BlockMetadata,
2423
};
2524
use crate::transaction_provider::{ProposeTransactionProvider, ValidateTransactionProvider};
2625

@@ -156,7 +155,8 @@ impl ProposalManagerTrait for ProposalManager {
156155
let (abort_signal_sender, abort_signal_receiver) = tokio::sync::oneshot::channel();
157156

158157
let block_builder = self.block_builder_factory.create_block_builder(
159-
BlockMetadata { height, retrospective_block_hash },
158+
height,
159+
retrospective_block_hash,
160160
BlockBuilderExecutionParams { deadline, fail_on_err: false },
161161
Box::new(tx_provider),
162162
Some(tx_sender.clone()),
@@ -188,7 +188,8 @@ impl ProposalManagerTrait for ProposalManager {
188188
let (abort_signal_sender, abort_signal_receiver) = tokio::sync::oneshot::channel();
189189

190190
let block_builder = self.block_builder_factory.create_block_builder(
191-
BlockMetadata { height, retrospective_block_hash },
191+
height,
192+
retrospective_block_hash,
192193
BlockBuilderExecutionParams { deadline, fail_on_err: true },
193194
Box::new(tx_provider),
194195
None,

crates/starknet_batcher/src/proposal_manager_test.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ impl MockDependencies {
5858
self.block_builder_factory
5959
.expect_create_block_builder()
6060
.times(times)
61-
.returning(move |_, _, _, _, _| simulate_build_block());
61+
.returning(move |_, _, _, _, _, _| simulate_build_block());
6262
}
6363

6464
// This function simulates a long build block operation. This is required for a test that
@@ -76,7 +76,7 @@ impl MockDependencies {
7676
self.block_builder_factory
7777
.expect_create_block_builder()
7878
.times(times)
79-
.returning(move |_, _, _, _, _| simulate_long_build_block());
79+
.returning(move |_, _, _, _, _, _| simulate_long_build_block());
8080
}
8181
}
8282

0 commit comments

Comments
 (0)