ravikiranpagidi opened a new pull request, #57003:
URL: https://github.com/apache/spark/pull/57003

   ### What changes were proposed in this pull request?
   
   This PR maps Parquet `UUID` logical annotations on 
`FIXED_LEN_BYTE_ARRAY(16)` columns to Spark SQL `BinaryType`.
   
   It also adds schema conversion coverage and extends the fixed-length byte 
array IO test with a UUID-annotated column for both vectorized and 
non-vectorized readers.
   
   Closes #55684.
   
   ### Why are the changes needed?
   
   Spark currently rejects Parquet UUID columns with `PARQUET_TYPE_ILLEGAL`, 
even though their 16-byte physical representation can be preserved as binary 
data. Spark does not expose a UUID SQL type, so `BinaryType` retains the value 
without losing information and matches the handling of unannotated fixed-length 
byte arrays.
   
   ### Does this PR introduce _any_ user-facing change?
   
   Yes. Spark can read Parquet files containing UUID logical annotations. The 
UUID values are exposed as 16-byte binary values instead of failing during 
schema inference.
   
   ### How was this patch tested?
   
   - Added a Parquet-to-Catalyst schema conversion test for 
`FIXED_LEN_BYTE_ARRAY(16) (UUID)`; the test passed.
   - Extended `SPARK-41096: FIXED_LEN_BYTE_ARRAY support` to write and read a 
UUID-annotated field with vectorized and non-vectorized readers.
   - `build/sbt "sql/scalastyle"` passed with zero findings.
   - `git diff --check` passed.
   - On this Windows environment, the shared Spark SQL test harness reports 
that `HADOOP_HOME` / `winutils.exe` is unavailable. The schema test itself 
passed, while the IO suite aborted during shared setup before the targeted test 
could run.


-- 
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