[ https://issues.apache.org/jira/browse/CALCITE-4129?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ASF GitHub Bot updated CALCITE-4129: ------------------------------------ Labels: pull-request-available (was: ) > Support equality check for whole rel plan tree > ---------------------------------------------- > > Key: CALCITE-4129 > URL: https://issues.apache.org/jira/browse/CALCITE-4129 > Project: Calcite > Issue Type: Improvement > Components: core > Reporter: Haisheng Yuan > Priority: Major > Labels: pull-request-available > Time Spent: 10m > Remaining Estimate: 0h > > Currently the only way to check rel node tree deep equality is transforming > into String by {{RelOptUtil.toString(rel)}} with > {{SqlExplainLevel.EXPPLAN_ATTRIBUTES}}, which is inefficient. One example is > RexSubQuery. It has to do it this way, because the rel being reference by > RexSubQuery is possibly not yet registered to VolcanoPlanner, and the digest > {{equals}} checks the input RelNode by identity (not content). That is OK for > RelSubset and HepRelVertex, if the RelNode is already registered in planner, > but not for plain RelNode that is outside of planner. Due to this, we have to > implement another set of deep equals logic in our system. -- This message was sent by Atlassian Jira (v8.3.4#803005)