You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Jacques Nadeau (JIRA)" <ji...@apache.org> on 2014/07/15 23:45:05 UTC

[jira] [Resolved] (DRILL-517) AssertionError between aggCall type and inferred type

     [ https://issues.apache.org/jira/browse/DRILL-517?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jacques Nadeau resolved DRILL-517.
----------------------------------

    Resolution: Fixed

Believe presolved

> AssertionError between aggCall type and inferred type
> -----------------------------------------------------
>
>                 Key: DRILL-517
>                 URL: https://issues.apache.org/jira/browse/DRILL-517
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Query Planning & Optimization
>            Reporter: Jacques Nadeau
>            Assignee: Jinfeng Ni
>             Fix For: 1.0.0-BETA1
>
>
> TPCH 17 and TPCH20 fail with this error.  
> java.lang.AssertionError: type mismatch:
> aggCall type:
> ANY
> inferred type:
> ANY NOT NULL
> 	at org.eigenbase.relopt.RelOptUtil.eq(RelOptUtil.java:1460)
> 	at org.eigenbase.rel.AggregateRelBase.typeMatchesInferred(AggregateRelBase.java:222)
> 	at org.eigenbase.rel.AggregateRelBase.access$000(AggregateRelBase.java:41)
> 	at org.eigenbase.rel.AggregateRelBase$2.get(AggregateRelBase.java:200)
> 	at org.eigenbase.rel.AggregateRelBase$2.get(AggregateRelBase.java:187)
> 	at org.eigenbase.util.CompositeList.get(CompositeList.java:114)
> 	at org.eigenbase.reltype.RelDataTypeFactoryImpl$4.getFieldName(RelDataTypeFactoryImpl.java:174)
> 	at org.eigenbase.reltype.RelDataTypeFactoryImpl$2.get(RelDataTypeFactoryImpl.java:143)
> 	at org.eigenbase.reltype.RelDataTypeFactoryImpl$2.get(RelDataTypeFactoryImpl.java:140)
> 	at java.util.AbstractList$Itr.next(AbstractList.java:358)
> 	at java.util.AbstractList.hashCode(AbstractList.java:540)
> 	at org.eigenbase.util.Util.hash(Util.java:225)
> 	at org.eigenbase.util.Pair.hashCode(Pair.java:79)
> 	at com.google.common.base.Equivalence$Equals.doHash(Equivalence.java:331)
> 	at com.google.common.base.Equivalence.hash(Equivalence.java:104)
> 	at com.google.common.cache.LocalCache.hash(LocalCache.java:1899)
> 	at com.google.common.cache.LocalCache.getIfPresent(LocalCache.java:3988)
> 	at com.google.common.cache.LocalCache$LocalManualCache.getIfPresent(LocalCache.java:4783)
> 	at org.eigenbase.reltype.RelDataTypeFactoryImpl.canonize(RelDataTypeFactoryImpl.java:347)
> 	at org.eigenbase.reltype.RelDataTypeFactoryImpl.createStructType(RelDataTypeFactoryImpl.java:139)
> 	at org.eigenbase.reltype.RelDataTypeFactoryImpl.createStructType(RelDataTypeFactoryImpl.java:167)
> 	at org.eigenbase.rel.AggregateRelBase.deriveRowType(AggregateRelBase.java:172)
> 	at org.eigenbase.rel.AbstractRelNode.getRowType(AbstractRelNode.java:210)
> 	at org.eigenbase.sql2rel.RelDecorrelator.decorrelateRel(RelDecorrelator.java:918)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at java.lang.reflect.Method.invoke(Method.java:606)
> 	at org.eigenbase.util.ReflectUtil.invokeVisitorInternal(ReflectUtil.java:252)
> 	at org.eigenbase.util.ReflectUtil.invokeVisitor(ReflectUtil.java:209)
> 	at org.eigenbase.util.ReflectUtil$1.invokeVisitor(ReflectUtil.java:473)
> 	at org.eigenbase.sql2rel.RelDecorrelator$DecorrelateRelVisitor.visit(RelDecorrelator.java:1373)
> 	at org.eigenbase.rel.SingleRel.childrenAccept(SingleRel.java:69)
> 	at org.eigenbase.rel.RelVisitor.visit(RelVisitor.java:45)
> 	at org.eigenbase.sql2rel.RelDecorrelator$DecorrelateRelVisitor.visit(RelDecorrelator.java:1368)
> 	at org.eigenbase.rel.SingleRel.childrenAccept(SingleRel.java:69)
> 	at org.eigenbase.rel.RelVisitor.visit(RelVisitor.java:45)
> 	at org.eigenbase.sql2rel.RelDecorrelator$DecorrelateRelVisitor.visit(RelDecorrelator.java:1368)
> 	at org.eigenbase.rel.SingleRel.childrenAccept(SingleRel.java:69)
> 	at org.eigenbase.rel.RelVisitor.visit(RelVisitor.java:45)
> 	at org.eigenbase.sql2rel.RelDecorrelator$DecorrelateRelVisitor.visit(RelDecorrelator.java:1368)
> 	at org.eigenbase.rel.SingleRel.childrenAccept(SingleRel.java:69)
> 	at org.eigenbase.rel.RelVisitor.visit(RelVisitor.java:45)
> 	at org.eigenbase.sql2rel.RelDecorrelator$DecorrelateRelVisitor.visit(RelDecorrelator.java:1368)
> 	at org.eigenbase.rel.JoinRelBase.childrenAccept(JoinRelBase.java:182)
> 	at org.eigenbase.rel.RelVisitor.visit(RelVisitor.java:45)
> 	at org.eigenbase.sql2rel.RelDecorrelator$DecorrelateRelVisitor.visit(RelDecorrelator.java:1368)
> 	at org.eigenbase.rel.SingleRel.childrenAccept(SingleRel.java:69)
> 	at org.eigenbase.rel.RelVisitor.visit(RelVisitor.java:45)
> 	at org.eigenbase.sql2rel.RelDecorrelator$DecorrelateRelVisitor.visit(RelDecorrelator.java:1368)
> 	at org.eigenbase.rel.SingleRel.childrenAccept(SingleRel.java:69)
> 	at org.eigenbase.rel.RelVisitor.visit(RelVisitor.java:45)
> 	at org.eigenbase.sql2rel.RelDecorrelator$DecorrelateRelVisitor.visit(RelDecorrelator.java:1368)
> 	at org.eigenbase.sql2rel.RelDecorrelator.decorrelate(RelDecorrelator.java:131)
> 	at org.eigenbase.sql2rel.SqlToRelConverter.decorrelateQuery(SqlToRelConverter.java:2747)
> 	at org.eigenbase.sql2rel.SqlToRelConverter.decorrelate(SqlToRelConverter.java:363)
> 	at net.hydromatic.optiq.prepare.PlannerImpl.convert(PlannerImpl.java:189)
> 	at org.apache.drill.exec.planner.sql.DrillSqlWorker.getLogicalRel(DrillSqlWorker.java:127)
> 	at org.apache.drill.exec.planner.sql.DrillSqlWorker.getPhysicalPlan(DrillSqlWorker.java:216)
> 	at org.apache.drill.BaseTestQuery.testSqlPlan(BaseTestQuery.java:148)
> 	at org.apache.drill.BaseTestQuery.testSqlPlanFromFile(BaseTestQuery.java:107)
> 	at org.apache.drill.TestTpchPlanning.tpch20(TestTpchPlanning.java:128)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at java.lang.reflect.Method.invoke(Method.java:606)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at java.lang.reflect.Method.invoke(Method.java:606)



--
This message was sent by Atlassian JIRA
(v6.2#6252)