thswlsqls opened a new pull request, #9152: URL: https://github.com/apache/paimon/pull/9152
### Purpose fix #9151 - Committing a batch whose partition values are all NULL threw NPE: `IcebergManifestEntryWriter.result()` passed the unknown (null) partition min/max straight to `IcebergConversions.toByteBuffer()`. - Omit unknown bounds instead. The Iceberg spec makes `lower_bound` (510) / `upper_bound` (511) optional, and `IcebergPartitionSummary.schema()` already declares both nullable. - Guard the reading side too, or the next non add-only commit hits the same null in `toPaimonObject()`. - The sibling `IcebergDataFileMeta.create()` has omitted unknown bounds since #4090; this path never got the equivalent guard. ### Tests - Added `IcebergCompatibilityTest#testNullPartitionValue`: commits `pt='a'`, a NULL-only batch, `pt='b'`, then `truncatePartitions(pt='a')`; asserts the omitted bounds and reads every row via `IcebergGenerics`. - Reverting either source alone fails that test: `toByteBuffer:83` without the writer guard, `toPaimonObject:167` without the reader guard. - `mvn -pl paimon-core -Dtest='Iceberg*Test' test` — 159 tests passed (41 in `IcebergCompatibilityTest`), checkstyle and spotless clean. -- 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]
