thswlsqls opened a new issue, #9151:
URL: https://github.com/apache/paimon/issues/9151

   **Search before asking**
   - [x] I searched in the [issues](https://github.com/apache/paimon/issues) 
and found nothing similar.
   
   **Paimon version**
   master @ 158d83cb5 (2.1-SNAPSHOT)
   
   **Compute Engine**
   Engine-agnostic (core)
   
   **Minimal reproduce step**
   1. Create `pt VARCHAR(10), v INT` partitioned by `pt`, bucket `-1`, with 
`metadata.iceberg.storage = table-location`.
   2. Commit a row with `pt = 'a'`.
   3. Commit a batch in which **every** row has `pt = NULL` — this fails:
   
   ```
   java.lang.NullPointerException
     at IcebergConversions.toByteBuffer(IcebergConversions.java:83)
     at 
IcebergManifestFile$IcebergManifestEntryWriter.result(IcebergManifestFile.java:273)
     at IcebergCommitCallback.call(IcebergCommitCallback.java:256)
   ```
   
   **What doesn't meet your expectations?**
   The commit should succeed. Paimon supports null partition values, and the 
Iceberg spec declares `field_summary.lower_bound` (510) and `upper_bound` (511) 
optional — "or null if all values are null or NaN". 
`IcebergPartitionSummary.schema()` already declares both nullable.
   
   **Anything else?**
   When every entry of a manifest holds a null partition value, the collected 
`SimpleColStats` min/max stay null and reach `toByteBuffer` unguarded. The 
sibling `IcebergDataFileMeta.create()` has omitted unknown column bounds since 
#4090; the partition summary path never got the equivalent guard. Reading is 
affected too: `IcebergCommitCallback.createWithDeleteManifestFileMetas` hits 
the same null in `toPaimonObject` on the next non add-only commit.
   
   **Are you willing to submit a PR?**
   - [x] I'm willing to submit a PR!
   
   


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