[ https://issues.apache.org/jira/browse/CALCITE-2970?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16970925#comment-16970925 ]
Haisheng Yuan commented on CALCITE-2970: ---------------------------------------- Here is what we have done in MaxCompute. We have a EnforcerRule to match AbstractConverter. When the distribution doesn't match/satisfy, we create an Exchange node with our convention, Sort node when collation doesn't match/satisfy. All the enforcing work is done inside EnforcerRule. Calcite can just provide an abstract enforcing rule, Enumerable convention can extend it and add it to the rule set. Adding encoring operator through rule is not ideal, but might be good enough for VolcanoPlanner considering its current design architecture of extensive usage of AbstractConverter. > Performance issue when enabling abstract converter for EnumerableConvention > --------------------------------------------------------------------------- > > Key: CALCITE-2970 > URL: https://issues.apache.org/jira/browse/CALCITE-2970 > Project: Calcite > Issue Type: Bug > Components: core > Reporter: Haisheng Yuan > Priority: Major > Labels: pull-request-available > Time Spent: 1h 20m > Remaining Estimate: 0h > > If we enable the use of abstract converter for {{EnumerableConvention}}, by > making {{useAbstractConvertersForConversion}} return true, > {{JDBCTest.testJoinManyWay}} will not complete. -- This message was sent by Atlassian Jira (v8.3.4#803005)