fallintoplace opened a new pull request, #2631:
URL: https://github.com/apache/iceberg-rust/pull/2631

   ## Summary
   
   - Reject negative row positions while parsing positional delete files.
   - Return `ErrorKind::DataInvalid` instead of casting negative `i64` values 
to huge `u64` positions.
   - Add a focused regression test for `pos = -1`.
   
   ## Root cause
   
   The positional-delete parser reads positions from an `Int64Array`, but 
inserted each value with `pos as u64`. That allowed malformed negative 
positions to wrap into very large row offsets instead of failing validation.
   
   ## Tests
   
   - `cargo fmt --check`
   - `CARGO_REGISTRIES_CRATES_IO_PROTOCOL=sparse cargo test -p iceberg 
test_parse_positional_deletes_rejects_negative_positions --locked`
   - `CARGO_REGISTRIES_CRATES_IO_PROTOCOL=sparse cargo test -p iceberg 
arrow::caching_delete_file_loader::tests --locked`
   


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


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to