[
https://issues.apache.org/jira/browse/ASTERIXDB-2845?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Dmitry Lychagin resolved ASTERIXDB-2845.
----------------------------------------
Resolution: Fixed
> Compilation failure in SubplanFlatteningUtil
> --------------------------------------------
>
> Key: ASTERIXDB-2845
> URL: https://issues.apache.org/jira/browse/ASTERIXDB-2845
> Project: Apache AsterixDB
> Issue Type: Bug
> Components: COMP - Compiler
> Affects Versions: 0.9.6
> Reporter: Dmitry Lychagin
> Assignee: Dmitry Lychagin
> Priority: Major
> Fix For: 0.9.7
>
>
> The following query fails with NullPointerException in SubplanFlatteningUtil
> {noformat}
> create dataset jds(jid integer not unknown) open type primary key jid;
> create dataset mds(mid integer not unknown) open type primary key mid;
> SET `compiler.sort.parallel` "false";
> WITH j AS (SELECT jid, a FROM jds),
> m1 AS (SELECT jid, x, COUNT(1) c1 FROM mds GROUP BY jid, x),
> m2 AS (SELECT jid, y, COUNT(1) c2 FROM mds GROUP BY jid, y)
> SELECT j.jid AS j_jid, j.a AS j_a,
> m1.jid AS m1_jid, m1.x AS m1_x, m1.c1 AS m1_c1,
> m2.jid AS m2_jid, m2.y AS m2_y, m2.c2 AS m2_c2
> FROM j
> LEFT OUTER JOIN m1 ON j.jid=m1.jid
> LEFT OUTER JOIN m2 ON j.jid=m1.jid
> ORDER BY j_jid, m1_x, m2_y, m2_jid
> {noformat}
> Exception stack trace
> {noformat}
> INFO org.apache.asterix.app.translator.QueryTranslator - Cannot invoke
> "org.apache.commons.lang3.mutable.Mutable.getValue()" because the return
> value of
> "org.apache.asterix.optimizer.rules.subplan.SubplanFlatteningUtil.findLowestAggregate(org.apache.commons.lang3.mutable.Mutable)"
> is null
> java.lang.NullPointerException: Cannot invoke
> "org.apache.commons.lang3.mutable.Mutable.getValue()" because the return
> value of
> "org.apache.asterix.optimizer.rules.subplan.SubplanFlatteningUtil.findLowestAggregate(org.apache.commons.lang3.mutable.Mutable)"
> is null
> at
> org.apache.asterix.optimizer.rules.subplan.SubplanFlatteningUtil.inlineAllNestedTupleSource(SubplanFlatteningUtil.java:66)
> ~[classes/:?]
> at
> org.apache.asterix.optimizer.rules.subplan.InlineSubplanInputForNestedTupleSourceRule.applyGeneralFlattening(InlineSubplanInputForNestedTupleSourceRule.java:377)
> ~[classes/:?]
> at
> org.apache.asterix.optimizer.rules.subplan.InlineSubplanInputForNestedTupleSourceRule.rewriteSubplanOperator(InlineSubplanInputForNestedTupleSourceRule.java:308)
> ~[classes/:?]
> at
> org.apache.asterix.optimizer.rules.subplan.InlineSubplanInputForNestedTupleSourceRule.traverseNonSubplanOperator(InlineSubplanInputForNestedTupleSourceRule.java:336)
> ~[classes/:?]
> at
> org.apache.asterix.optimizer.rules.subplan.InlineSubplanInputForNestedTupleSourceRule.rewriteSubplanOperator(InlineSubplanInputForNestedTupleSourceRule.java:290)
> ~[classes/:?]
> at
> org.apache.asterix.optimizer.rules.subplan.InlineSubplanInputForNestedTupleSourceRule.traverseNonSubplanOperator(InlineSubplanInputForNestedTupleSourceRule.java:336)
> ~[classes/:?]
> {noformat}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)