leaves12138 commented on PR #543:
URL: https://github.com/apache/paimon-rust/pull/543#issuecomment-5013870901

   I found two blockers in the current revision (`94d76ed`):
   
   1. **`Utf8View` leaks through the Python API and breaks common PyArrow 
operations.**
   
      `datafusion_arrow_schema` now advertises Paimon string columns as 
`Utf8View`, and `bindings/python/src/context.rs` exports the resulting batches 
to PyArrow without conversion. With the CI version of PyArrow (23.0.1), both 
write round-trip tests fail because `Table.sort_by()` uses `take`, for which 
PyArrow has no `string_view` kernel:
   
      ```text
      ArrowNotImplementedError: Function 'array_take' has no kernel matching 
input types (string_view, uint64)
      ```
   
      This is not only a test expectation issue: existing Python consumers can 
receive batches on which common PyArrow operations fail. Please preserve `Utf8` 
at the Python boundary (or provide another explicit compatibility strategy). 
Merely changing the tests to avoid `sort_by()` would leave the user-facing 
regression in place.
   
   2. **The DataFusion integration suite was not migrated to the new string 
array type.**
   
      The `integration (datafusion)` job currently reports 25 failures in 
`append_merge_into`. Helpers such as `collect_int_int_str` and 
`collect_int_str` in `crates/integrations/datafusion/tests/common/mod.rs` still 
unconditionally downcast query results to `StringArray`, so they panic after 
the schema change. There are additional direct `StringArray` downcasts in 
`pk_tables.rs`, `read_tables.rs`, and other integration tests.
   
      Please update the full integration suite. A shared helper that reads 
`Utf8`, `LargeUtf8`, and `Utf8View` would be preferable to coupling every test 
to one physical representation.
   
   The focused residual-filter, DataFusion schema, zero-column projection, and 
TPC-DS tests pass locally; I did not find another wrong-read in those 
implementation paths.
   


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