File tree Expand file tree Collapse file tree 2 files changed +7
-2
lines changed
service/tests/it/pipelines/filter Expand file tree Collapse file tree 2 files changed +7
-2
lines changed Original file line number Diff line number Diff line change @@ -260,12 +260,17 @@ impl<'a> Selector<'a> {
260260 select_strategy,
261261 count,
262262 ) ?;
263+ let mut recomputed_count = false ;
263264 if ( true_count > 0 && select_strategy == SelectStrategy :: All )
264265 || select_strategy == SelectStrategy :: True
265266 {
266267 select_strategy = SelectStrategy :: False ;
268+ count = temp_mutable_false_idx - * mutable_false_idx;
269+ recomputed_count = true ;
270+ }
271+ if !recomputed_count {
272+ count -= true_count;
267273 }
268- count -= true_count;
269274 if count == 0 {
270275 * mutable_false_idx = temp_mutable_false_idx;
271276 break ;
Original file line number Diff line number Diff line change @@ -38,7 +38,7 @@ pub fn test_filter_executor() -> databend_common_exception::Result<()> {
3838 // Random number of rows, number of columns and random max depth of the filter expr.
3939 let num_rows = rng. gen_range ( 0 ..10000 ) ;
4040 let num_columns = rng. gen_range ( 1 ..10 ) ;
41- let max_depth = rng. gen_range ( 1 ..5 ) ;
41+ let max_depth = rng. gen_range ( 1 ..10 ) ;
4242
4343 // 1. Generate a random `DataBlock`.
4444 let columns = ( 0 ..num_columns)
You can’t perform that action at this time.
0 commit comments