Michael Smith created IMPALA-13505:
--------------------------------------

             Summary: NullPointerException in Analyzer.resolveActualPath with 
Calcite planner
                 Key: IMPALA-13505
                 URL: https://issues.apache.org/jira/browse/IMPALA-13505
             Project: IMPALA
          Issue Type: Bug
          Components: Frontend
            Reporter: Michael Smith


Encountered a NullPointerException when running some TPC-DS queries (such as 
q8) with the Calcite planner:
{code}
Stack Trace:java.lang.NullPointerException
        at 
org.apache.impala.analysis.Analyzer.lambda$resolveActualPath$18(Analyzer.java:4699)
        at java.util.Collections$2.tryAdvance(Collections.java:4719)
        at java.util.Collections$2.forEachRemaining(Collections.java:4727)
        at 
java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:647)
        at 
org.apache.impala.analysis.Analyzer.resolveActualPath(Analyzer.java:4690)
        at 
org.apache.impala.analysis.Analyzer.lambda$addColumnsTo$17(Analyzer.java:4655)
        at 
java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
        at 
java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
        at 
java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1384)
        at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482)
        at 
java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)
        at 
java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
        at 
java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
        at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at 
java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:485)
        at org.apache.impala.analysis.Analyzer.addColumnsTo(Analyzer.java:4655)
        at 
org.apache.impala.analysis.Analyzer.addJoinColumns(Analyzer.java:4732)
        at org.apache.impala.planner.JoinNode.init(JoinNode.java:293)
        at org.apache.impala.planner.HashJoinNode.init(HashJoinNode.java:82)
        at 
org.apache.impala.calcite.rel.phys.ImpalaHashJoinNode.<init>(ImpalaHashJoinNode.java:46)
...
{code}

{{SlotRef.getResolvedPath}} returns null at line 4699. Looking at the SlotRef, 
I don't see any way to determine an origin, so this may be part of incomplete 
implementation of the Calcite planner integration.

To reproduce
{code}
$ start-impala-cluster.py -s 1 --use_calcite_planner=true
$ impala-py.test 
tests/query_test/test_tpcds_queries.py::TestTpcdsDecimalV2Query::test_tpcds_q8
{code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to