apache / apache/pinot

Aggregation Function with '=' Operator Fails for Multivalued Columns in Apache Pinot

Closed
#12,374 3 comments 2 reactions 1 assignee Claimed by @abhioncbr View on GitHub
feature stale
Dominant language
Java
Stars
6.1k
Forks
1.5k
Avg merge
1d 21h
Merged PRs (30d)
189

Description

`=` sign doesn't work as an operator inside aggregation functions for multivalued columns. For instance, following query fails with error

```
select
SUM(case when DayOfWeek = 3 AND DivTailNums = 'N7713A' then 1 else 0 end) as res
from airlineStats
Group BY Carrier
```

Error:
```
Error Code: 200

QueryExecutionError:
java.lang.UnsupportedOperationException
at org.apache.pinot.segment.spi.index.reader.ForwardIndexReader.readDictIds(ForwardIndexReader.java:118)
at org.apache.pinot.core.common.DataFetcher$ColumnValueReader.readStringValues(DataFetcher.java:570)
at org.apache.pinot.core.common.DataFetcher.fetchStringValues(DataFetcher.java:239)
at org.apache.pinot.core.common.DataBlockCache.getStringValuesForSVColumn(DataBlockCache.java:277)
```

Same query works with `=` in where statement

```
select
SUM(case when DayOfWeek = 3 then 1 else 0 end) as res
from airlineStats
WHERE DivTailNums = 'N7713A'
Group BY Carrier
```
Result:

`{"columns":["res"],"records":[[2]]}`

Version info

```
{
"pinot-protobuf": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-kafka-2.0": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-avro": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-distribution": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-csv": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-s3": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-yammer": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-segment-uploader-default": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-confluent-avro": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-thrift": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-batch-ingestion-standalone": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-orc": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-pulsar": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-clp-log": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-dropwizard": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-azure": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-gcs": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-hdfs": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-kinesis": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-adls": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-json": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-minion-builtin-tasks": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-parquet": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187",
"pinot-segment-writer-file-based": "1.1.0-SNAPSHOT-f22de0a4be910af09556666df3aa44ae78d59187"
}
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.