You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@iceberg.apache.org by "laskoviymishka (via GitHub)" <gi...@apache.org> on 2026/05/10 20:03:20 UTC

[PR] feat(puffin): validate deletion-vector blob header invariants on read [iceberg-go]

laskoviymishka opened a new pull request, #1055:
URL: https://github.com/apache/iceberg-go/pull/1055

   Closes #1048. Spec requires `deletion-vector-v1` blobs to carry snapshot-id and sequence-number set to -1. The writer enforces this on the way out; validateBlobs now mirrors the check on the way in, so a malformed DV puffin written by a third-party tool is rejected before its bytes reach dv.DeserializeDV.
   
   Test byte-patches a non-DV blob to claim it's a deletion-vector and asserts the reader rejects both invariant violations; uses a same- length placeholder type so the footer-payload-size trailer stays accurate.


-- 
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: issues-unsubscribe@iceberg.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org


Re: [PR] feat(puffin): validate deletion-vector blob header invariants on read [iceberg-go]

Posted by "laskoviymishka (via GitHub)" <gi...@apache.org>.
laskoviymishka commented on PR #1055:
URL: https://github.com/apache/iceberg-go/pull/1055#issuecomment-4444721153

   Yep, spec mandates -1 for `deletion-vector-v1`. A DV is bound to a data file (via `referenced-data-file`), not to a snapshot — its applicable seq number comes from the v3 manifest entry, not the blob. Other blob types like theta sketches do use those fields (they're per-snapshot stats), but for DVs Java's `BaseDVFileWriter` writes -1/-1 and `DeleteFileIndex` reads the seq number off the manifest. Forcing -1 keeps readers from accidentally picking up the wrong field.


-- 
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: issues-unsubscribe@iceberg.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org


Re: [PR] feat(puffin): validate deletion-vector blob header invariants on read [iceberg-go]

Posted by "laskoviymishka (via GitHub)" <gi...@apache.org>.
laskoviymishka merged PR #1055:
URL: https://github.com/apache/iceberg-go/pull/1055


-- 
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: issues-unsubscribe@iceberg.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org


Re: [PR] feat(puffin): validate deletion-vector blob header invariants on read [iceberg-go]

Posted by "zeroshade (via GitHub)" <gi...@apache.org>.
zeroshade commented on PR #1055:
URL: https://github.com/apache/iceberg-go/pull/1055#issuecomment-4432625844

   The spec requires them to be -1? Is this because the puffin file itself has the snapshot id and sequence number at that level instead?


-- 
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: issues-unsubscribe@iceberg.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org