mbutrovich commented on code in PR #2868:
URL: https://github.com/apache/iceberg-rust/pull/2868#discussion_r3866883503
##########
crates/iceberg/src/scan/task.rs:
##########
@@ -239,6 +242,27 @@ pub struct FileScanTaskDeleteFile {
#[builder(default)]
pub equality_ids: Option<Vec<i32>>,
+ /// For a deletion vector, the location of the data file whose rows it
deletes. Required for
+ /// deletion vectors, and may also be set on a position delete file scoped
to one data file.
+ #[serde(default)]
+ #[serde(skip_serializing_if = "Option::is_none")]
+ #[builder(default)]
+ pub referenced_data_file: Option<String>,
+
+ /// For a deletion vector, the offset of the blob within its Puffin file.
Set only for
+ /// deletion vectors, where it locates the blob for direct access.
+ #[serde(default)]
+ #[serde(skip_serializing_if = "Option::is_none")]
+ #[builder(default)]
+ pub content_offset: Option<i64>,
+
+ /// For a deletion vector, the length in bytes of the blob within its
Puffin file. Set
+ /// whenever `content_offset` is.
+ #[serde(default)]
+ #[serde(skip_serializing_if = "Option::is_none")]
+ #[builder(default)]
+ pub content_size_in_bytes: Option<i64>,
+
Review Comment:
Added `record_count` here, populated from the manifest entry, which leaves
#3035 as pure behavior.
It stays `Option<u64>` because a task isn't always built from a manifest
entry. A deletion vector always is, so #3035 errors on a missing record count
instead of skipping the cardinality check.
--
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]