[
https://issues.apache.org/jira/browse/CALCITE-3676?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Haisheng Yuan resolved CALCITE-3676.
------------------------------------
Fix Version/s: 1.22.0
Resolution: Fixed
Fixed in
https://github.com/apache/calcite/commit/0f09ef99f4ffe66c209afcfa87e57d4db409d834.
> VolcanoPlanner. dumpGraphviz should handle exception gracefully
> ---------------------------------------------------------------
>
> Key: CALCITE-3676
> URL: https://issues.apache.org/jira/browse/CALCITE-3676
> Project: Calcite
> Issue Type: Bug
> Components: core
> Reporter: Haisheng Yuan
> Assignee: Forward Xu
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.22.0
>
> Time Spent: 1h 20m
> Remaining Estimate: 0h
>
> In case VolcanoPlanner can't generate plan due to some RelSubset doesn't have
> best rel, it will dump the sets and Graphviz. Since there is error during
> planning, we want to see the sets in the exception message, but when dumping
> Graphviz, it might encounter another exception (we can't guarantee all the
> sets and subsets are correctly generated for Graphviz), causing failure to
> dump Sets info, which is rather helpful in production system.
> {code:java}
> Caused by: java.lang.AssertionError
> at
> org.apache.calcite.util.PartiallyOrderedSet.findParentsChildren(PartiallyOrderedSet.java:318)
> at
> org.apache.calcite.util.PartiallyOrderedSet.findParents(PartiallyOrderedSet.java:308)
> at
> org.apache.calcite.util.PartiallyOrderedSet.add(PartiallyOrderedSet.java:226)
> at
> org.apache.calcite.plan.volcano.VolcanoPlanner.dumpGraphviz(VolcanoPlanner.java:1320)
> at
> org.apache.calcite.plan.volcano.VolcanoPlanner.dump(VolcanoPlanner.java:1194)
> at
> org.apache.calcite.plan.volcano.RelSubset$CheapestPlanReplacer.visit(RelSubset.java:606)
> at
> org.apache.calcite.plan.volcano.RelSubset.buildCheapestPlan(RelSubset.java:307)
> at
> org.apache.calcite.plan.volcano.VolcanoPlanner.findBestExp(VolcanoPlanner.java:649)
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)