#23058·OpenSearch

[BUG][Sandbox] list()/values() aggregates reject multi_value keyword input as ARRAY

Author: linuxpiCreated Sep 17, 2026Updated Sep 17, 2026
Labelsbuguntriaged

Describe the bug stats list(tags) and stats values(tags) over a multi_value: true keyword field are rejected by the PPL frontend type check:

Aggregation function LIST expects field type {[BYTE]|[SHORT]|[INTEGER]|...|[BINARY]}, but got [ARRAY]  (ExpressionEvaluationException)

Same for VALUES. The DataFusion backend already carries LIST merging state for these aggregates (#22914); the frontend signature is the only blocker.

To Reproduce Composite parquet index with tags: {type: keyword, multi_value: true}; run source = idx | stats list(tags) as all_tags (or values(tags), or ... by region). Reproduced by MultiValueAggregationIT in sandbox/qa/analytics-engine-rest (tests @AwaitsFix on this issue).

Expected behavior list(tags) flattens all elements across documents; values(tags) returns the distinct flattened elements.

Source: opensearch-project/OpenSearch