jackylee-ch opened a new pull request, #985:
URL: https://github.com/apache/paimon-rust/pull/985

   The CHAR/VARCHAR arm of the partition-value computer folds a value to the 
default partition name when `str::trim` leaves it empty, but Rust's whitespace 
set differs from Java's `Character.isWhitespace`: `str::trim` strips a 
non-breaking space (U+00A0) and U+2007 / U+202F, which Java keeps, and keeps 
U+001C-U+001F, which Java strips.
   
   The partition value is recomputed on both the write and read paths 
(BinaryRow -> path), so such a value produces a different partition directory 
in Rust than in Java, and a cross-engine reader misses the data. The Binary arm 
already handles this correctly via `is_java_whitespace_only` (added in #958); 
the string arm was left on `str::trim`.
   
   Reuse `is_java_whitespace_only` in the string arm so it folds exactly what 
Java folds. Added a test covering both divergent directions (U+001C folds, 
U+00A0 does not).
   


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