[
https://issues.apache.org/jira/browse/DRILL-1467?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jacques Nadeau updated DRILL-1467:
----------------------------------
Fix Version/s: Future
Priority: Minor (was: Major)
> HepPlanner causes optiq to throw exception with trace is turned on
> ------------------------------------------------------------------
>
> Key: DRILL-1467
> URL: https://issues.apache.org/jira/browse/DRILL-1467
> Project: Apache Drill
> Issue Type: Bug
> Components: Query Planning & Optimization
> Reporter: Hanifi Gunes
> Assignee: Chun Chang
> Priority: Minor
> Fix For: Future
>
>
> 1) Follow https://github.com/julianhyde/optiq/blob/retired/HOWTO.md to turn
> the trace on.
> 2) Running any query throws:
> {code}
> java.lang.AssertionError: Internal error: should never get here
> at org.eigenbase.util.Util.newInternal(Util.java:735)
> ~[optiq-core-0.9-drill-r2.jar:na]
> at
> org.eigenbase.relopt.hep.HepRelVertex.computeSelfCost(HepRelVertex.java:63)
> ~[optiq-core-0.9-drill-r2.jar:na]
> at
> org.eigenbase.rel.metadata.RelMdPercentageOriginalRows.getNonCumulativeCost(RelMdPercentageOriginalRows.java:159)
> ~[optiq-core-0.9-drill-r2.jar:na]
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> ~[na:1.7.0_65]
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> ~[na:1.7.0_65]
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> ~[na:1.7.0_65]
> at java.lang.reflect.Method.invoke(Method.java:606) ~[na:1.7.0_65]
> at
> org.eigenbase.rel.metadata.ReflectiveRelMetadataProvider$2$1.invoke(ReflectiveRelMetadataProvider.java:135)
> ~[optiq-core-0.9-drill-r2.jar:na]
> at com.sun.proxy.$Proxy75.getNonCumulativeCost(Unknown Source) ~[na:na]
> at
> org.eigenbase.rel.metadata.RelMetadataQuery.getNonCumulativeCost(RelMetadataQuery.java:125)
> ~[optiq-core-0.9-drill-r2.jar:na]
> at
> org.eigenbase.rel.metadata.RelMdPercentageOriginalRows.getCumulativeCost(RelMdPercentageOriginalRows.java:149)
> ~[optiq-core-0.9-drill-r2.jar:na]
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> ~[na:1.7.0_65]
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> ~[na:1.7.0_65]
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> ~[na:1.7.0_65]
> at java.lang.reflect.Method.invoke(Method.java:606) ~[na:1.7.0_65]
> at
> org.eigenbase.rel.metadata.ReflectiveRelMetadataProvider$2$1.invoke(ReflectiveRelMetadataProvider.java:135)
> ~[optiq-core-0.9-drill-r2.jar:na]
> at com.sun.proxy.$Proxy74.getCumulativeCost(Unknown Source) ~[na:na]
> at
> org.eigenbase.rel.metadata.RelMetadataQuery.getCumulativeCost(RelMetadataQuery.java:111)
> ~[optiq-core-0.9-drill-r2.jar:na]
> at
> org.eigenbase.rel.metadata.RelMdPercentageOriginalRows.getCumulativeCost(RelMdPercentageOriginalRows.java:152)
> ~[optiq-core-0.9-drill-r2.jar:na]
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> ~[na:1.7.0_65]
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> ~[na:1.7.0_65]
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> ~[na:1.7.0_65]
> at java.lang.reflect.Method.invoke(Method.java:606) ~[na:1.7.0_65]
> at
> org.eigenbase.rel.metadata.ReflectiveRelMetadataProvider$2$1.invoke(ReflectiveRelMetadataProvider.java:135)
> ~[optiq-core-0.9-drill-r2.jar:na]
> at com.sun.proxy.$Proxy74.getCumulativeCost(Unknown Source) ~[na:na]
> at
> org.eigenbase.rel.metadata.RelMetadataQuery.getCumulativeCost(RelMetadataQuery.java:111)
> ~[optiq-core-0.9-drill-r2.jar:na]
> at
> org.eigenbase.relopt.AbstractRelOptPlanner.getCost(AbstractRelOptPlanner.java:229)
> ~[optiq-core-0.9-drill-r2.jar:na]
> at org.eigenbase.relopt.hep.HepPlanner.dumpGraph(HepPlanner.java:946)
> ~[optiq-core-0.9-drill-r2.jar:na]
> at org.eigenbase.relopt.hep.HepPlanner.setRoot(HepPlanner.java:124)
> ~[optiq-core-0.9-drill-r2.jar:na]
> at
> org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.convertToRel(DefaultSqlHandler.java:148)
> ~[classes/:na]
> at
> org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.getPlan(DefaultSqlHandler.java:124)
> ~[classes/:na]
> at
> org.apache.drill.exec.planner.sql.DrillSqlWorker.getPlan(DrillSqlWorker.java:132)
> ~[classes/:na]
> at org.apache.drill.exec.work.foreman.Foreman.runSQL(Foreman.java:425)
> [classes/:na]
> at org.apache.drill.exec.work.foreman.Foreman.run(Foreman.java:219)
> [classes/:na]
> at
> org.apache.drill.exec.work.WorkManager$RunnableWrapper.run(WorkManager.java:250)
> [classes/:na]
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> [na:1.7.0_65]
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> [na:1.7.0_65]
> at java.lang.Thread.run(Thread.java:745) [na:1.7.0_65]
> {code}
> {panel:title=log.properties}
> handlers= java.util.logging.ConsoleHandler
> .level= INFO
> org.eigenbase.relopt.RelOptPlanner.level=FINER
> java.util.logging.ConsoleHandler.level=ALL
> {panel}
> ps: Removing HepPlanner from DefaultSqlHandler#convertToRel fixes the issue.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)