From 59a99b9cc350fe4b950e4b0878a0145d6ee3fe45 Mon Sep 17 00:00:00 2001 From: Nikita-str Date: Thu, 6 Jun 2024 21:25:12 +0600 Subject: [PATCH] set limit to zero when filter is false --- rust/cubesql/cubesql/src/compile/mod.rs | 4 ++-- rust/cubesql/cubesql/src/compile/rewrite/rules/filters.rs | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/rust/cubesql/cubesql/src/compile/mod.rs b/rust/cubesql/cubesql/src/compile/mod.rs index 35a2b1f0e0b49..299d59fa9f1a2 100644 --- a/rust/cubesql/cubesql/src/compile/mod.rs +++ b/rust/cubesql/cubesql/src/compile/mod.rs @@ -2842,7 +2842,7 @@ mod tests { ]), time_dimensions: None, order: None, - limit: Some(1), + limit: Some(0), offset: None, filters: None, ungrouped: Some(true), @@ -13268,7 +13268,7 @@ ORDER BY segments: Some(vec![]), time_dimensions: None, order: None, - limit: Some(1), + limit: Some(0), offset: None, filters: None, ungrouped: Some(true), diff --git a/rust/cubesql/cubesql/src/compile/rewrite/rules/filters.rs b/rust/cubesql/cubesql/src/compile/rewrite/rules/filters.rs index 5ef284b695583..2f9a4b1317411 100644 --- a/rust/cubesql/cubesql/src/compile/rewrite/rules/filters.rs +++ b/rust/cubesql/cubesql/src/compile/rewrite/rules/filters.rs @@ -2522,7 +2522,7 @@ impl FilterRules { if let ScalarValue::Boolean(Some(false)) = literal_value { subst.insert( new_limit_var, - egraph.add(LogicalPlanLanguage::CubeScanLimit(CubeScanLimit(Some(1)))), + egraph.add(LogicalPlanLanguage::CubeScanLimit(CubeScanLimit(Some(0)))), ); subst.insert( new_limit_skip_var,