github-actions[bot] commented on code in PR #66422:
URL: https://github.com/apache/doris/pull/66422#discussion_r3714649534


##########
be/src/storage/predicate/in_list_predicate.h:
##########
@@ -436,11 +442,11 @@ class InListPredicateBase final : public ColumnPredicate {
                             return true;
                         }
                     } else if constexpr (Type == PrimitiveType::TYPE_DOUBLE) {
-                        if (test_bytes(*value)) {
+                        if (bf->test_floating_point(*value)) {
                             return true;

Review Comment:
   [P2] Skip Bloom reads that a NaN probe cannot use
   
   `test_floating_point(NaN)` is now unconditionally conservative, so an EQ-NaN 
or FLOAT/DOUBLE IN set containing NaN can never reject a Row Group through this 
Bloom path. V1 still calls `get_bloom_filter_func` before reaching this loop 
(the new test expects one loader call), and V2 similarly reads/parses the Row 
Group Bloom before `eval_in_bloom_filter` returns may-match. A standalone 
predicate therefore adds Bloom header/payload reads, parsing/allocation, and, 
for IN, a set walk per eligible surviving Row Group with zero pruning benefit; 
on cold remote scans those become repeated small requests. Please mark these 
NaN predicate shapes Bloom-ineligible before I/O (while preserving useful 
same-slot/compound conjuncts and signed-zero probing).



-- 
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]

Reply via email to