diff --git a/zk/stages/stage_sequence_execute.go b/zk/stages/stage_sequence_execute.go index 24e2aad0050..ceb5209a3b3 100644 --- a/zk/stages/stage_sequence_execute.go +++ b/zk/stages/stage_sequence_execute.go @@ -58,10 +58,11 @@ func SpawnSequencingStage( } if lastBatch < highestBatchInDs { - if err = cfg.dataStreamServer.UnwindToBatchStart(lastBatch + 1); err != nil { - return err - } - if !cfg.zk.IsL1Recovery() { + if !cfg.zk.SequencerResequence { + if err = cfg.dataStreamServer.UnwindToBatchStart(lastBatch + 1); err != nil { + return err + } + } else { return resequence(s, u, ctx, cfg, historyCfg, lastBatch, highestBatchInDs) } } diff --git a/zk/stages/stage_sequence_execute_resequence.go b/zk/stages/stage_sequence_execute_resequence.go index 69e97d5a4b3..d7fa2e18ab7 100644 --- a/zk/stages/stage_sequence_execute_resequence.go +++ b/zk/stages/stage_sequence_execute_resequence.go @@ -28,6 +28,10 @@ func resequence( return err } + if err = cfg.dataStreamServer.UnwindToBatchStart(lastBatch + 1); err != nil { + return err + } + log.Info(fmt.Sprintf("[%s] Resequence from batch %d to %d in data stream", s.LogPrefix(), lastBatch+1, highestBatchInDs)) for _, batch := range batches { batchJob := NewResequenceBatchJob(batch)