beyond1920 opened a new pull request #8697: [FLINK-12810][table-planner-blink]
Support to run a TableAPI query like 'table.select('a, 'b, 'c)'
URL: https://github.com/apache/flink/pull/8697
## What is the purpose of the change
The pr aims to support to run a TableAPI query like 'table.select('a, 'b,
'c)'
## Brief change log
1. add RexNodeConverter to convert Expression to RexNode
2. Introduce RexPlannerExpression to wraps a RexNode, which is similar to
RexPlannerExpression in flink-planner module.
3. add QueryOperationConverter to convert QueryOperation tree to RelNode
4. Introduce PlannerQueryOperation to wraps a RelNode in QueryOperation,
which is similar to PlannerQueryOperation in flink-planner module.
5. add OperationTreeBuilder and relative classes(ExpressionResolver,
TableReferenceLookup, FieldReferenceLoopup, ExpandColumnFunctionsRule,
LookupCallByNameRule, ResolverRule, StarReferenceFlattingRule,
VerifyNoUnresolvedExpressionRule), which is almost copy from flink-planner
module to blink-planner module, except that we remove dependency on
PlannerExpression. *Note: This is temporal solution, since OperationTreeBuilder
will be moved to api module finally.*
6. add implicit conversion in expressionDsl
## 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