docs(parquet-design): correct DV applicability rule to inclusive

Deletion vectors are position-based (they encode row positions, just
in Puffin form), so they follow the same data_sequence_number rule as
v2 position-delete files: data_file.seq <= delete_file.seq. The
previous comment grouped DVs with equality deletes (strict <), which
would silently drop deletes recorded in the same snapshot as the
data file they target.
This commit is contained in:
Chris Lu
2026-04-25 01:52:54 -07:00
parent 08889b0f7b
commit 89833c07d3
+5 -4
View File
@@ -475,11 +475,12 @@ type DeleteFileRef struct {
// DataSequenceNumber is the delete file's data_sequence_number.
// The scope rule is: this delete file applies to a data file iff
// data_file.DataSequenceNumber < delete_file.DataSequenceNumber
// for equality deletes / DVs, and
// data_file.DataSequenceNumber <= delete_file.DataSequenceNumber
// for position deletes (a position delete may target a data file
// committed in the same snapshot).
// for position deletes and deletion vectors (both are
// position-based and may target data files committed in the same
// snapshot), and
// data_file.DataSequenceNumber < delete_file.DataSequenceNumber
// for equality deletes (predicate-based; only filters older data).
DataSequenceNumber int64
// Content type matches Iceberg manifest "content" field.