diff --git a/src/flow/src/batching_mode/state.rs b/src/flow/src/batching_mode/state.rs
index ca3d78e710..90575e8804 100644
--- a/src/flow/src/batching_mode/state.rs
+++ b/src/flow/src/batching_mode/state.rs
@@ -192,6 +192,12 @@ impl DirtyTimeWindows {
self.windows.insert(start, end);
}
+ pub fn add_windows(&mut self, time_ranges: Vec<(Timestamp, Timestamp)>) {
+ for (start, end) in time_ranges {
+ self.windows.insert(start, Some(end));
+ }
+ }
+
/// Clean all dirty time windows, useful when can't found time window expr
pub fn clean(&mut self) {
self.windows.clear();
@@ -242,7 +248,7 @@ impl DirtyTimeWindows {
window_cnt: usize,
flow_id: FlowId,
task_ctx: Option<&BatchingTask>,
- ) -> Result