You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "neoremind (Jira)" <ji...@apache.org> on 2020/03/24 14:15:00 UTC
[jira] [Commented] (CALCITE-3479) Stack overflow error thrown when
running join query
[ https://issues.apache.org/jira/browse/CALCITE-3479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17065804#comment-17065804 ]
neoremind commented on CALCITE-3479:
------------------------------------
Reverting this PR will cause the following unit tests failed in {{CsvTest}} when log level is set to {{DEBUG}}.
{quote}{{testFilterableWhereWithNot1()
testFilterableWhereWithNot2()
testFilterableWhere2()
testFilterableWhere3()
testFilterableWhere()}}
{quote}
After taking a look of some of the previous related issues, some unit tests failed as well per https://issues.apache.org/jira/browse/CALCITE-2166
{{ }}
{quote}{{ScannableTableTest.testPFPushDownProjectFilterAggregateNested:279 relSubset [rel#12950:Subset#5.ENUMERABLE.[]] has wrong best cost \{63.8 rows, 62.308 cpu, 0.0 io}. Correct cost is \{70.4 rows, 60.404 cpu, 0.0 io}
ScannableTableTest.testPFTableRefusesFilterCooperative:221 relSubset [rel#13382:Subset#2.ENUMERABLE.[]] has wrong best cost \{81.0 rows, 181.01 cpu, 0.0 io}. Correct cost is \{150.5 rows, 250.505 cpu, 0.0 io}
ScannableTableTest.testProjectableFilterableCooperative:148 relSubset [rel#13611:Subset#2.ENUMERABLE.[]] has wrong best cost \{81.0 rows, 181.01 cpu, 0.0 io}. Correct cost is \{150.5 rows, 250.505 cpu, 0.0 io}
ScannableTableTest.testProjectableFilterableNonCooperative:165 relSubset [rel#13754:Subset#2.ENUMERABLE.[]] has wrong best cost \{81.0 rows, 181.01 cpu, 0.0 io}. Correct cost is \{150.5 rows, 250.505 cpu, 0.0 io}}}
{quote}
Will this problem be solved ultimately? Or will it be left out there since it won't affect much?
> Stack overflow error thrown when running join query
> ---------------------------------------------------
>
> Key: CALCITE-3479
> URL: https://issues.apache.org/jira/browse/CALCITE-3479
> Project: Calcite
> Issue Type: Bug
> Reporter: Amit Chavan
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.22.0
>
> Attachments: IMG_5089.jpg, TestCalcite.java
>
> Time Spent: 1h 10m
> Remaining Estimate: 0h
>
> A unit test in our project is failing which is as below.
> The query in question is
> {code}SELECT * FROM tblspace1.t1 t10, tblspace1.t2 t20 WHERE t20.n1 = 3 AND t10.n1 = 3 AND t20.n1 = t10.n1{code}
> I get a stack overflow error-
> {noformat}
> -- Mid Plan-- Mid Plan
> LogicalProject(subset=[rel#19:Subset#4.ENUMERABLE.[]], k1=[$0], n1=[$1], s1=[$2], k2=[$3], n10=[$4], s2=[$5])
> LogicalFilter(subset=[rel#16:Subset#3.NONE.[]], condition=[AND(=($4, 3), =($1, 3), =($4, $1))])
> LogicalJoin(subset=[rel#14:Subset#2.NONE.[]], condition=[true], joinType=[inner])
> EnumerableTableScan(subset=[rel#11:Subset#0.ENUMERABLE.[]], table=[[tblspace1, t1]])
> EnumerableTableScan(subset=[rel#12:Subset#1.ENUMERABLE.[]], table=[[tblspace1, t2]])
> {noformat}
> {code}
> java.lang.StackOverflowError at
> org.apache.calcite.plan.volcano.RelSubset$CheapestPlanReplacer.visit(RelSubset.java:639) at org.apache.calcite.plan.volcano.RelSubset$CheapestPlanReplacer.visit(RelSubset.java:643) at org.apache.calcite.plan.volcano.RelSubset$CheapestPlanReplacer.visit(RelSubset.java:643) at org.apache.calcite.plan.volcano.RelSubset$CheapestPlanReplacer.visit(RelSubset.java:643) at org.apache.calcite.plan.volcano.RelSubset$CheapestPlanReplacer.visit(RelSubset.java:643) at org.apache.calcite.plan.volcano.RelSubset$CheapestPlanReplacer.visit(RelSubset.java:643)
> {code}
> Also attaching the UT code in the ticket
--
This message was sent by Atlassian Jira
(v8.3.4#803005)