beyond1920 opened a new pull request #9162: [FLINK-13321][table-planner-blink] 
Fix bug in Blink Planner, Join a udf with constant arguments or without 
argument in TableAPI query does not work now
URL: https://github.com/apache/flink/pull/9162
 
 
   ## What is the purpose of the change
   
   In blink planner, Join a udf with constant arguments or without argument in 
TableAPI query does not work now. The root cause is the 
`FlinkLogicalTableFunctionScan`.CONVERTER translates a `TableFunctionScan` to a 
`Correlate`, it will translate the original `RelNode` tree to a `RelNode` with 
two Cascaded ·Correlate` (could be found in the above thrown message), which 
could not translate to Physical `RelNode`. The detail information could be get 
in https://issues.apache.org/jira/browse/FLINK-13321.
   
   `FlinkLogicalTableFunctionScan`.CONVERTER is to deal with a special sql like 
'SELECT * FROM LATERAL TABLE(FUNC()) as T(C1)'. The pr aims to fix above bug by 
updating `FlinkLogicalTableFunctionScan`.CONVERTER, and process the sql like 
'SELECT * FROM LATERAL TABLE(FUNC()) as T(C1)' in the other solution.
   
   ## Brief change log
   
     - Update `FlinkLogicalTableFunctionScan`.CONVERTER to avoid rewrite 
`FlinkLogicalTableFunctionScan` node 
     - Add `BatchExecConstantTableFunctionScanRule` and 
`StreamExecConstantTableFunctionScanRule` to deal with sql like 'SELECT * FROM 
LATERAL TABLE(FUNC()) as T(C1)'.
   
   ## Verifying this change
   ITCase
   
   ## Does this pull request potentially affect one of the following parts:
   
     - Dependencies (does it add or upgrade a dependency): (no)
     - The public API, i.e., is any changed class annotated with 
`@Public(Evolving)`: (no)
     - The serializers: (no)
     - The runtime per-record code paths (performance sensitive): (no)
     - Anything that affects deployment or recovery: JobManager (and its 
components), Checkpointing, Yarn/Mesos, ZooKeeper: (no)
     - The S3 file system connector: (no)
   
   ## Documentation
   
     - Does this pull request introduce a new feature? (no)
     - If yes, how is the feature documented? (not applicable)
   

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to