Jesus Camacho Rodriguez created CALCITE-726:
-----------------------------------------------

             Summary: HiveRelNode.CONVENTION not present in TraitSet
                 Key: CALCITE-726
                 URL: https://issues.apache.org/jira/browse/CALCITE-726
             Project: Calcite
          Issue Type: Bug
            Reporter: Jesus Camacho Rodriguez
            Assignee: Julian Hyde


I have tested the latest Calcite snapshot against Hive.

We get the following exception when we create a Project
operator copy, that we were not getting in 1.2:

{noformat}
junit.framework.AssertionFailedError: Unexpected exception
java.lang.AssertionError
        at
org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveProject.copy(H
iveProject.java:169)
        at org.apache.calcite.rel.core.Project.copy(Project.java:110)
        at
org.apache.calcite.plan.hep.HepPlanner.addRelToGraph(HepPlanner.java:770)
        at
org.apache.calcite.plan.hep.HepPlanner.addRelToGraph(HepPlanner.java:764)
        at
org.apache.calcite.plan.hep.HepPlanner.addRelToGraph(HepPlanner.java:764)
        at
org.apache.calcite.plan.hep.HepPlanner.addRelToGraph(HepPlanner.java:764)
        at org.apache.calcite.plan.hep.HepPlanner.setRoot(HepPlanner.java:150)
        at
org.apache.hadoop.hive.ql.parse.CalcitePlanner$CalcitePlannerAction.hepPlan
(CalcitePlanner.java:994)
        at
org.apache.hadoop.hive.ql.parse.CalcitePlanner$CalcitePlannerAction.applyPr
eJoinOrderingTransforms(CalcitePlanner.java:951)
        at
org.apache.hadoop.hive.ql.parse.CalcitePlanner$CalcitePlannerAction.apply(C
alcitePlanner.java:820)
        at
org.apache.hadoop.hive.ql.parse.CalcitePlanner$CalcitePlannerAction.apply(C
alcitePlanner.java:768)
        at org.apache.calcite.tools.Frameworks$1.apply(Frameworks.java:109)
        at
org.apache.calcite.prepare.CalcitePrepareImpl.perform(CalcitePrepareImpl.ja
va:741)
        at org.apache.calcite.tools.Frameworks.withPrepare(Frameworks.java:145)
        at org.apache.calcite.tools.Frameworks.withPlanner(Frameworks.java:105)
        at
org.apache.hadoop.hive.ql.parse.CalcitePlanner.getOptimizedAST(CalcitePlann
er.java:607)
        at
org.apache.hadoop.hive.ql.parse.CalcitePlanner.genOPTree(CalcitePlanner.jav
a:244)
        at
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeInternal(SemanticAn
alyzer.java:10051)
        at
org.apache.hadoop.hive.ql.parse.CalcitePlanner.analyzeInternal(CalcitePlann
er.java:207)
        at
org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer.analyze(BaseSemanticAn
alyzer.java:227)
        at
org.apache.hadoop.hive.ql.parse.ExplainSemanticAnalyzer.analyzeInternal(Exp
lainSemanticAnalyzer.java:74)
        at
org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer.analyze(BaseSemanticAn
alyzer.java:227)
...
{noformat}

The assertion that is not met is the following:

{code}
  @Override
  public Project copy(RelTraitSet traitSet, RelNode input, List<RexNode>
exps,
      RelDataType rowType) {
    assert traitSet.containsIfApplicable(HiveRelNode.CONVENTION);
    return new HiveProject(getCluster(), traitSet, input, exps, rowType,
getFlags());
  }
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to