Skip to content

Commit 031e889

Browse files
committed
feat: update sequencer L1 message index based on BlockImportOutcome
1 parent e4f4657 commit 031e889

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

crates/manager/src/manager/mod.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -454,6 +454,9 @@ where
454454
match event {
455455
EngineDriverEvent::BlockImportOutcome(outcome) => {
456456
if let Some(block) = outcome.block() {
457+
if let Some(sequencer) = self.sequencer.as_mut() {
458+
sequencer.handle_new_payload(&block);
459+
}
457460
if let Some(event_sender) = self.event_sender.as_ref() {
458461
event_sender.notify(RollupManagerEvent::BlockImported(block.clone()));
459462
}

crates/sequencer/src/lib.rs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,11 @@ where
193193
pub fn handle_new_payload(&mut self, block: &ScrollBlock) {
194194
let queue_index = block.body.transactions.iter().filter_map(|tx| tx.queue_index()).max();
195195
if let Some(queue_index) = queue_index {
196-
self.l1_messages_queue_index = queue_index + 1;
196+
// only update the queue index if it has advanced
197+
if queue_index + 1 > self.l1_messages_queue_index {
198+
tracing::trace!(target: "rollup_node::sequencer", "Advancing L1 messages queue index from {} to {}", self.l1_messages_queue_index, queue_index + 1);
199+
self.l1_messages_queue_index = queue_index + 1;
200+
}
197201
}
198202
}
199203
}

0 commit comments

Comments
 (0)