andygrove opened a new pull request, #3887:
URL: https://github.com/apache/datafusion-comet/pull/3887
## Which issue does this PR close?
Closes #3174.
## Rationale for this change
The existing `array_distinct` SQL file tests only covered `array<int>` with
2 queries. The `Incompatible` support level had no description, making it
unclear to users why the expression is marked incompatible.
## What changes are included in this PR?
1. **Expanded SQL file tests** for `array_distinct` from 2 queries to
comprehensive coverage across 7 element types:
- **INT**: duplicates, empty array, NULL input, NULL elements, all-NULLs,
boundary values (INT_MIN/MAX), negative values
- **BIGINT**: duplicates, NULL elements, boundary values (Long.MIN/MAX)
- **STRING**: duplicates, empty strings, NULL elements,
empty-string-vs-NULL distinction
- **BOOLEAN**: all combinations of true/false with NULLs
- **DOUBLE**: duplicates, NaN deduplication, NaN+NULL,
Infinity/-Infinity, negative zero
- **FLOAT**: duplicates, NaN deduplication
- **DECIMAL(10,2)**: duplicates, NULL elements
- **Nested arrays**: `array<array<int>>` with duplicates and NULLs
2. **Added descriptive reason** to `Incompatible` support level: `"Output
elements are sorted rather than preserving insertion order"`.
## How are these changes tested?
All new tests are SQL file tests that run via `CometSqlFileTestSuite` with
the `ConfigMatrix` for both dictionary-encoded and plain parquet. Tests use
`spark_answer_only` mode since the expression is `Incompatible` (DataFusion
sorts output elements while Spark preserves insertion order). Verified passing
locally with both dictionary configurations.
--
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]