englefly commented on code in PR #65805:
URL: https://github.com/apache/doris/pull/65805#discussion_r3643319434


##########
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/AccessPathExpressionCollector.java:
##########
@@ -164,17 +182,23 @@ public Void visitSlotReference(SlotReference 
slotReference, CollectorContext con
         // For any other nullable column type (e.g. INT, BIGINT) accessed via 
IS NULL / IS NOT NULL:
         // record the [col_name, NULL] path so NestedColumnPruning can emit 
null-only access paths.
         // Skip NestedColumnPrunable types (already handled above) and string 
types (handled above).
+        // Check getOriginalColumn() rather than slotReference.nullable(): the 
latter may be
+        // inflated by outer join, while the former reflects the physical 
column's null map.
+        // Only NULL paths need the null-map check; OFFSET paths don't depend 
on nullability.
         if (!(dataType instanceof NestedColumnPrunable) && 
!dataType.isStringLikeType()
-                && !context.accessPathBuilder.isEmpty() && 
slotReference.nullable()) {
+                && isUnderIsNull(context.accessPathBuilder.accessPath)

Review Comment:
   isUnderNull



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