Details
Description
Reproducer:
CREATE TABLE integers(i INTEGER) INSERT INTO integers VALUES (1), (2), (3), (NULL) SELECT i=ALL(SELECT i FROM integers WHERE i<>i1.i) FROM integers i1 ORDER BY i;
Result:
Caused by: java.lang.AssertionError: idx=0; arglist=[] at org.apache.ignite.internal.processors.query.calcite.exec.exp.agg.Accumulators$AbstractAccumulator.get(Accumulators.java:272) at org.apache.ignite.internal.processors.query.calcite.exec.exp.agg.Accumulators$DistinctAccumulator.add(Accumulators.java:1352) at org.apache.ignite.internal.processors.query.calcite.exec.exp.agg.AccumulatorsFactory$AccumulatorWrapperImpl.add(AccumulatorsFactory.java:326) at org.apache.ignite.internal.processors.query.calcite.exec.rel.HashAggregateNode$Grouping.addOnMapper(HashAggregateNode.java:306) at org.apache.ignite.internal.processors.query.calcite.exec.rel.HashAggregateNode$Grouping.add(HashAggregateNode.java:277) at org.apache.ignite.internal.processors.query.calcite.exec.rel.HashAggregateNode.push(HashAggregateNode.java:130) at org.apache.ignite.internal.processors.query.calcite.exec.rel.FilterNode.filter(FilterNode.java:127) at org.apache.ignite.internal.processors.query.calcite.exec.rel.FilterNode.push(FilterNode.java:82) at org.apache.ignite.internal.processors.query.calcite.exec.rel.TableSpoolNode.doPush(TableSpoolNode.java:111) at org.apache.ignite.internal.processors.query.calcite.exec.rel.TableSpoolNode.push(TableSpoolNode.java:146) at org.apache.ignite.internal.processors.query.calcite.exec.rel.Inbox.pushUnordered(Inbox.java:304) at org.apache.ignite.internal.processors.query.calcite.exec.rel.Inbox.push(Inbox.java:203) at org.apache.ignite.internal.processors.query.calcite.exec.rel.Inbox.doPush(Inbox.java:184)
Calcite can create `AggregateCall` with empty `getArgList()`.
Adoption of #IGNITE-19401
Attachments
Issue Links
- relates to
-
IGNITE-19401 Sql. ArrayIndexOutOfBoundsException for ANY/ALL with subselect
- Resolved
- links to