[ https://issues.apache.org/jira/browse/CALCITE-1500?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15855084#comment-15855084 ]
Maryann Xue commented on CALCITE-1500: -------------------------------------- Yes, I'll take a look right away. I verified all the tests a couple of times but with JDK8 only, so guess that's the reason why I didn't see the regression. > Decouple materialization and lattice substitution from VolcanoPlanner > --------------------------------------------------------------------- > > Key: CALCITE-1500 > URL: https://issues.apache.org/jira/browse/CALCITE-1500 > Project: Calcite > Issue Type: Improvement > Components: core > Affects Versions: 1.10.0 > Reporter: Maryann Xue > Assignee: Maryann Xue > Fix For: 1.12.0 > > > VolcanoPlanner now takes the "originalRoot" as the input for > materialized-view substitution, so the programs used in > {{Prepare.optimize()}} will not be applied to these substituted rels. For > example, a correlated subquery will be de-correlated but its equivalents with > materialization substitutions will not be de-correlated. So it would be nice > to have a way for the substituted rels to run specific programs too before > starting volcano planning. > The easiest solution might be using the new "root" for materialization > substitution instead, but it would be based on the assumption that those > "pre-processing" programs are simple ones like de-correlation and > field-trimming. In order to allow a more general pre-processing program set, > one that could have different optimization output for the original rel and > for the materialization substituted rels, we'd better have an interface or > some approach to run pre-processing programs for rels after materialization > substitution. -- This message was sent by Atlassian JIRA (v6.3.15#6346)