[ https://issues.apache.org/jira/browse/CALCITE-5521?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17698695#comment-17698695 ]
asdfgh19 commented on CALCITE-5521: ----------------------------------- Hey [~zabetak] xinqiu.hu is fine! Thanks! > Remove redundant rowtype check in RelSubset#add > ----------------------------------------------- > > Key: CALCITE-5521 > URL: https://issues.apache.org/jira/browse/CALCITE-5521 > Project: Calcite > Issue Type: Improvement > Components: core > Reporter: asdfgh19 > Assignee: asdfgh19 > Priority: Minor > Labels: pull-request-available > Fix For: 1.34.0 > > Attachments: 未命名文件 (4).png > > Time Spent: 40m > Remaining Estimate: 0h > > {code:java} > void add(RelNode rel) { > if (set.rels.contains(rel)) { > return; > } > VolcanoPlanner planner = (VolcanoPlanner) rel.getCluster().getPlanner(); > if (planner.getListener() != null) { > RelOptListener.RelEquivalenceEvent event = > new RelOptListener.RelEquivalenceEvent( > planner, > rel, > this, > true); > planner.getListener().relEquivalenceFound(event); > } > // If this isn't the first rel in the set, it must have compatible > // row type. > if (set.rel != null) { > RelOptUtil.equal("rowtype of new rel", rel.getRowType(), > "rowtype of set", getRowType(), Litmus.THROW); > } > set.addInternal(rel); > if (false) { > Set<CorrelationId> variablesSet = RelOptUtil.getVariablesSet(rel); > Set<CorrelationId> variablesStopped = rel.getVariablesSet(); > Set<CorrelationId> variablesPropagated = > Util.minus(variablesSet, variablesStopped); > assert set.variablesPropagated.containsAll(variablesPropagated); > Set<CorrelationId> variablesUsed = RelOptUtil.getVariablesUsed(rel); > assert set.variablesUsed.containsAll(variablesUsed); > } > } {code} > !未命名文件 (4).png|width=741,height=451! > Double checking relset rowtype and input parameter relNode rowtype may be > unnecessary -- This message was sent by Atlassian Jira (v8.20.10#820010)