[
https://issues.apache.org/jira/browse/CALCITE-4003?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17109081#comment-17109081
]
Jin Xing commented on CALCITE-4003:
-----------------------------------
Hi, [~hyuan] , thanks for ping me ~
In my project, all optimizations are done during logical stage, including view
matching optimization and common RelOptRule matching. In addition, RelNode
transformations are totally independent between conventions.
Before coming to Calcite world ~ I worked on Spark Sql for some time.
LogicalPlan transformations and PhysicalPlan transformations are also seperated.
"In case of multiple conventions, there will be a converter between different
conventions.", I'm with you by this point. In our data lake scenario, we do
federated query between several physical engines. We have a primary engine for
distributed computation (in our case Spark). And converters will be transformed
to data source, which ingest data into Spark from other engines. Common
optimizing rules don't work across the converter. Cross convention rules are
only needed for some special cases.
I agree to keep the ability for cross convention rules for special cases, but
for built-in transformation rules, I think we will gain a lot if we limit them
in single convention, thus to save tons of unnecessary matching.
> In MaterializationTest, FilterProjectTransposeRule matches with logical and
> physical convention
> -----------------------------------------------------------------------------------------------
>
> Key: CALCITE-4003
> URL: https://issues.apache.org/jira/browse/CALCITE-4003
> Project: Calcite
> Issue Type: Improvement
> Components: core
> Reporter: Haisheng Yuan
> Priority: Major
>
> In MaterializationTest.testMaterializationSubstitution2,
> FilterProjectTransposeRule matches with logical and physical convention at
> the same time, that means, LogicalFilter and EnumerableProject. We should
> check and prevent this from happening.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)