zjw1111 opened a new issue, #296:
URL: https://github.com/apache/paimon-cpp/issues/296

   ### Problem
   
   Paimon tables written with Arrow-based Parquet writers can carry 
`ARROW:schema` metadata whose logical Arrow type differs from the physical type 
expected by the Paimon reader.
   
   For scalar BLOB columns, PyArrow may restore a physical Parquet `binary` 
column as Arrow `large_binary` before Paimon applies its binary-to-BLOB 
conversion. The strict type check then rejects compatible data. For nested 
`MAP<STRING, BLOB>` values, Rust Paimon writes Arrow `binary`, while the 
logical Paimon read type is `large_binary`; this currently fails during nested 
Parquet projection.
   
   ### Expected behavior
   
   The Parquet reader should distinguish representation-compatible fields from 
fields requiring conversion, preserve existing timestamp adaptation, and 
support both scalar and map BLOB compatibility without relaxing unrelated type 
validation.
   
   ### Test coverage
   
   Add Python, Rust, and Java append-table fixtures that validate all 
compatible values, read `MAP<STRING, BLOB>` successfully, and continue to 
report an explicit unsupported error for `ARRAY<BLOB>`.


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

Reply via email to