venkata91 commented on code in PR #23313:
URL: https://github.com/apache/flink/pull/23313#discussion_r1324893510


##########
flink-table/flink-table-planner/src/main/scala/org/apache/flink/table/planner/plan/utils/RexNodeExtractor.scala:
##########
@@ -538,8 +550,34 @@ class RexNodeToExpressionConverter(
     }
   }
 
-  override def visitFieldAccess(fieldAccess: RexFieldAccess): 
Option[ResolvedExpression] = None
+  override def visitFieldAccess(fieldAccess: RexFieldAccess): 
Option[ResolvedExpression] = {
+    fieldAccess.getReferenceExpr match {
+      // push down on nested field inside a composite type like map or array 
is not supported
+      case _: RexCall => return None

Review Comment:
   Do you mean make it clear in the comment that `lower(a.b.c) = "foo"` is not 
supported? The above addresses cases like:
   
   ```
   "SELECT * FROM NestedItemTable WHERE `Result`.`Mid`.data_arr[2].`value` = 3"
   ```
   where `data_arr` is an Array and `data_arr[2]` is expressed as 
`RexCall(ITEM, data_arr, 2)` which won't be supported.



-- 
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: issues-unsubscr...@flink.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to