[
https://issues.apache.org/jira/browse/DRILL-1707?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14211569#comment-14211569
]
Steven Phillips commented on DRILL-1707:
----------------------------------------
Thanks Chun.
I think the problem is here:
Thread 11643: (state = IN_JAVA)
-
com.google.common.collect.AbstractMapBasedMultimap$WrappedCollection$WrappedIterator.next()
@bci=1, line=483 (Compiled frame; information may be imprecise)
-
org.eigenbase.relopt.volcano.RuleQueue.updateImportance(org.eigenbase.relopt.volcano.RelSubset,
java.lang.Double) @bci=92, line=272 (Compiled frame)
-
org.eigenbase.relopt.volcano.RuleQueue.recompute(org.eigenbase.relopt.volcano.RelSubset,
boolean) @bci=55, line=180 (Compiled frame)
-
org.eigenbase.relopt.volcano.VolcanoPlanner.registerImpl(org.eigenbase.rel.RelNode,
org.eigenbase.relopt.volcano.RelSet) @bci=1137, line=1612 (Compiled frame)
-
org.eigenbase.relopt.volcano.VolcanoPlanner.register(org.eigenbase.rel.RelNode,
org.eigenbase.rel.RelNode) @bci=79, line=837 (Compiled frame)
-
org.eigenbase.relopt.volcano.VolcanoPlanner.ensureRegistered(org.eigenbase.rel.RelNode,
org.eigenbase.rel.RelNode) @bci=79, line=860 (Compiled frame)
-
org.eigenbase.relopt.volcano.VolcanoPlanner.ensureRegistered(org.eigenbase.rel.RelNode,
org.eigenbase.rel.RelNode, org.eigenbase.relopt.volcano.VolcanoRuleCall)
@bci=11, line=1750 (Compiled frame)
-
org.eigenbase.relopt.volcano.VolcanoRuleCall.transformTo(org.eigenbase.rel.RelNode,
java.util.Map) @bci=372, line=131 (Compiled frame)
- org.eigenbase.relopt.RelOptRuleCall.transformTo(org.eigenbase.rel.RelNode)
@bci=5, line=210 (Interpreted frame)
-
org.eigenbase.rel.rules.PushFilterPastProjectRule.onMatch(org.eigenbase.relopt.RelOptRuleCall)
@bci=65, line=67 (Interpreted frame)
- org.eigenbase.relopt.volcano.VolcanoRuleCall.onMatch() @bci=522, line=223
(Compiled frame)
- org.eigenbase.relopt.volcano.VolcanoPlanner.findBestExp() @bci=335, line=665
(Compiled frame)
-
net.hydromatic.optiq.tools.Programs$RuleSetProgram.run(org.eigenbase.relopt.RelOptPlanner,
org.eigenbase.rel.RelNode, org.eigenbase.relopt.RelTraitSet) @bci=81, line=165
(Interpreted frame)
- net.hydromatic.optiq.prepare.PlannerImpl.transform(int,
org.eigenbase.relopt.RelTraitSet, org.eigenbase.rel.RelNode) @bci=28, line=273
(Interpreted frame)
-
org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.convertToDrel(org.eigenbase.rel.RelNode)
@bci=18, line=155 (Interpreted frame)
-
org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.getPlan(org.eigenbase.sql.SqlNode)
@bci=62, line=134 (Interpreted frame)
- org.apache.drill.exec.planner.sql.DrillSqlWorker.getPlan(java.lang.String,
org.apache.drill.exec.util.Pointer) @bci=134, line=132 (Interpreted frame)
- org.apache.drill.exec.work.foreman.Foreman.runSQL(java.lang.String) @bci=23,
line=383 (Interpreted frame)
- org.apache.drill.exec.work.foreman.Foreman.run() @bci=128, line=202
(Interpreted frame)
- org.apache.drill.exec.work.WorkManager$RunnableWrapper.run() @bci=4,
line=249 (Interpreted frame)
-
java.util.concurrent.ThreadPoolExecutor.runWorker(java.util.concurrent.ThreadPoolExecutor$Worker)
@bci=95, line=1145 (Interpreted frame)
- java.util.concurrent.ThreadPoolExecutor$Worker.run() @bci=5, line=615
(Interpreted frame)
- java.lang.Thread.run() @bci=11, line=744 (Interpreted frame)
Looks like we might be stuck in a loop in the optimizer.
> Regression: Mondrian query5843.q hangs
> --------------------------------------
>
> Key: DRILL-1707
> URL: https://issues.apache.org/jira/browse/DRILL-1707
> Project: Apache Drill
> Issue Type: Bug
> Components: Query Planning & Optimization
> Affects Versions: 0.7.0
> Reporter: Chun Chang
> Priority: Blocker
> Attachments: drillstack.txt
>
>
> #Thu Nov 13 13:47:45 EST 2014
> git.commit.id.abbrev=fd54e71
> The following Mondrian query hangs. It was working with previous release.
> 0: jdbc:drill:schema=dfs>
> SELECT time_by_day.the_year AS c0,
> time_by_day.quarter AS c1,
> store.store_state AS c2,
> FACT.warehouse_id AS c3,
> Sum(FACT.warehouse_cost) AS m0
> FROM time_by_day AS time_by_day,
> (SELECT *
> FROM inventory_fact_1997 AS FOOBAR) AS FACT,
> store AS store
> WHERE FACT.time_id = time_by_day.time_id
> AND time_by_day.the_year = 1997
> AND time_by_day.quarter = 'Q3'
> AND FACT.store_id = store.store_id
> AND store.store_state = 'WA'
> AND FACT.warehouse_id = 2
> GROUP BY time_by_day.the_year,
> time_by_day.quarter,
> store.store_state,
> FACT.warehouse_id;
> The drillbit handles the query seems active with around 100% CPU usage but
> the query never returns. The only log message found in drill bit.log is
> following:
> 2014-11-13 15:07:14,426 [UserServer-1] WARN
> o.a.d.exec.work.foreman.QueryStatus - Update running or pending query state :
> PENDING
> Since this is a regression, marked as release blocker.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)