xiangfu0 opened a new pull request, #17155:
URL: https://github.com/apache/pinot/pull/17155

   Summary\n- Introduces ArrayAggMv and ListAggMv to aggregate multi-value 
columns.\n- ArrayAggMv flattens MV arrays into a single result array; optional 
distinct removes duplicates.\n- ListAggMv concatenates MV string values using a 
separator; optional distinct deduplicates while preserving order.\n\nSQL 
Syntax\n- ArrayAggMv(col, 'TYPE'[, true]) with TYPE one of: BOOLEAN, INT, LONG, 
FLOAT, DOUBLE, STRING, TIMESTAMP.\n- listAggMv(expression, 'separator'[, 
true])\n\nImplementation\n- Enum registration: ARRAYAGGMV, LISTAGGMV.\n- 
Factory wiring for both functions with optional distinct argument.\n- New 
classes: ListAggMvFunction, ListAggMvDistinctFunction; MV ArrayAgg implemented 
earlier.\n- Serialization via ObjectSerDeUtils for intermediate 
results.\n\nTests\n- Unit: ArrayAggMvFunctionTest, ListAggMvFunctionTest.\n- 
Query: ArrayAggMvQueriesTest, ListAggMvQueriesTest.\n- Integration: extended 
ArrayTest for ArrayAggMv usage.\n\nNotes\n- Boolean handled via int variant for 
ArrayAggMv, co
 nsistent with ArrayAgg.\n- Distinct ListAggMv uses ObjectLinkedOpenHashSet to 
preserve order.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to