JingsongLi commented on code in PR #8399:
URL: https://github.com/apache/paimon/pull/8399#discussion_r3519321571


##########
paimon-core/src/main/java/org/apache/paimon/catalog/TableQueryAuthResult.java:
##########
@@ -229,8 +228,7 @@ public Predicate visit(LeafPredicate predicate) {
                                         "Unable to read data without column %s 
when row filter enabled.",
                                         fieldName));
                     }
-                    DataType type = outputRowType.getTypeAt(newIndex);
-                    newInputs.add(new FieldRef(newIndex, fieldName, type));
+                    newInputs.add(ref.withIndex(newIndex));

Review Comment:
   This still derives `newIndex` from `ref.name()` above, but `ref.name()` is 
now the full nested path for Spark nested predicates, for example `a.b`, while 
`outputRowType` only contains top-level fields. As a result, a valid nested row 
filter is rejected unless there happens to be a top-level column literally 
named `a.b`; the same lookup pattern appears in the masking remap above. Please 
remap by the top-level field (or carry the top-level name/index separately) and 
preserve the nested metadata when creating the new `FieldRef`.



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

Reply via email to