Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
For a plan that contains only group-by keys and no aggregate functions, we encounter a NPE, which is coming during code generation. See below. The physical plan to reproduce is also given below.
{
head : {
version : 1,
generator :
,
type : "APACHE_DRILL_PHYSICAL"
},
graph : [ {
"pop" : "parquet-scan",
"@id" : 1,
"entries" : [
],
"storage" :
,
"format" :
}, {
pop : "project",
@id : 2,
exprs : [
,
{ ref : "output.$f1", expr : "N_NATIONKEY" },
{ ref : "output.$f2", expr : "N_NAME" } ],
child : 1
}, {
pop : "hash-aggregate",
@id : 3,
child : 2,
keys : [
,
{ ref : "$f1", expr : "$f1" },
{ ref : "$f2", expr : "$f2 " } ]
},
]
}
java.lang.NullPointerException
org.apache.drill.exec.physical.impl.aggregate.HashAggBatch.createAggregatorInternal(HashAggBatch.java:184) ~[classes/:na]
org.apache.drill.exec.physical.impl.aggregate.HashAggBatch.createAggregator(HashAggBatch.java:165) ~[classes/:na]
org.apache.drill.exec.physical.impl.aggregate.HashAggBatch.next(HashAggBatch.java:112) ~[classes/:na]
org.apache.drill.exec.physical.impl.validate.IteratorValidatorBatchIterator.next(IteratorValidatorBatchIterator.java:107) ~[classes/:na]
org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.next(ScreenCreator.java:85) ~[classes/:na]
org.apache.drill.exec.work.fragment.FragmentExecutor.run(FragmentExecutor.java:83) ~[classes/:na]