LuciferYang commented on code in PR #67774:
URL: https://github.com/apache/doris/pull/67774#discussion_r4102845813
##########
be/src/exprs/function/functions_comparison.h:
##########
@@ -734,8 +844,11 @@ class FunctionComparison : public IFunction {
}
bool can_evaluate_zonemap_filter(const VExprSPtrs& arguments) const
override {
- return comparison_zonemap_detail::op_from_name(name).has_value() &&
- comparison_zonemap_detail::can_evaluate(arguments);
+ if (!comparison_zonemap_detail::op_from_name(name).has_value()) {
+ return false;
+ }
+ return comparison_zonemap_detail::can_evaluate(arguments) ||
+ comparison_zonemap_detail::can_evaluate_slot_slot(arguments);
Review Comment:
Update on this: #68148 is closed, since the v1 reader is being removed (per
@yiguolei). Rather than lean on it, I've gated v1 slot-vs-slot pruning off
directly in a2bd23fe4a2. `_process_expr_zonemap_filter` now evaluates only
single-slot conjuncts, so a two-slot shape no longer routes v1 statistics
through `parse_min_max_value` on this PR's behalf, and the newly reachable path
this finding describes is gone. The pre-existing single-slot v1 exposure is
unchanged and goes away with the v1 reader; native and v2 keep slot-vs-slot
pruning.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]