From 1d8bcd5248e660d10836fa9688bd4a6adb50249b Mon Sep 17 00:00:00 2001 From: discord9 <55937128+discord9@users.noreply.github.com> Date: Wed, 9 Sep 2026 16:21:06 +0800 Subject: [PATCH] refactor: show LastRow merge mode directly in diagnostics Signed-off-by: discord9 <55937128+discord9@users.noreply.github.com> --- src/store-api/src/storage/requests.rs | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/src/store-api/src/storage/requests.rs b/src/store-api/src/storage/requests.rs index 0ef76e8c6ad..b35a1907d43 100644 --- a/src/store-api/src/storage/requests.rs +++ b/src/store-api/src/storage/requests.rs @@ -82,7 +82,7 @@ pub trait VectorIndexEngine: Send + Sync { #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Display)] pub enum TimeSeriesRowSelector { /// Only keep the last row of each time-series. - #[strum(to_string = "LastRow")] + #[strum(to_string = "LastRow {{ after_merge: {after_merge} }}")] LastRow { /// Whether selection runs after cross-source merge and deduplication. after_merge: bool, @@ -209,16 +209,6 @@ impl Display for ScanRequest { series_row_selector )?; } - if matches!( - self.series_row_selector, - Some(TimeSeriesRowSelector::LastRow { after_merge: true }) - ) { - write!( - f, - "{}series_row_selector_after_merge: true", - delimiter.as_str() - )?; - } if let Some(sequence) = &self.memtable_max_sequence { write!(f, "{}sequence: {}", delimiter.as_str(), sequence)?; } @@ -344,7 +334,12 @@ mod tests { }; assert_eq!( request.to_string(), - "ScanRequest { series_row_selector: LastRow, series_row_selector_after_merge: true, snapshot_on_scan: true, exact_sequence_range: true }" + "ScanRequest { series_row_selector: LastRow { after_merge: true }, snapshot_on_scan: true, exact_sequence_range: true }" + ); + + assert_eq!( + TimeSeriesRowSelector::LastRow { after_merge: false }.to_string(), + "LastRow { after_merge: false }" ); let request = ScanRequest {