REST: Support data sequence numbers in scan tasks#841
Draft
u70b3 wants to merge 1 commit into
Draft
Conversation
wgtmac
reviewed
Jul 24, 2026
| // but not the manifest-entry data sequence number. Until the REST API exposes | ||
| // it, REST-planned tasks cannot inherit _last_updated_sequence_number. | ||
| // See https://github.com/apache/iceberg-cpp/issues/834. | ||
| if (task_json.contains(kDataSequenceNumber) && |
Member
There was a problem hiding this comment.
Unfortunately we can't do this until the rest spec has adopted data sequence number to the FileScanTask object.
Author
There was a problem hiding this comment.
Understood — I'll keep this as a draft blocked on the upstream REST spec adopting the field. I don't plan to file the spec proposal right now; happy to revisit once the protocol supports it. Feel free to close this PR if you'd rather not keep it open in the meantime.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
data-sequence-numberin REST file scan tasksMotivation
REST-planned scans can carry
first-row-id, but C++ currently cannot receive themanifest-entry data sequence number needed to inherit
_last_updated_sequence_numberfor v3 tables.Closes #834
Compatibility and dependency
This is the C++ side only. The task-level
data-sequence-numberfield is not yetpresent in the upstream REST OpenAPI, so this PR remains draft pending agreement
and publication of that protocol field. Older servers that omit the field, and
explicit
null, continue to produce an unset data sequence number.Testing
pre-commit run --all-filesrest_catalog_test(317/317 passed)AI assistance
This change was implemented with assistance from OpenAI Codex. I reviewed the
implementation and tests, verified the JSON compatibility behavior, and ran the
full lint/build/test checks above. The remaining uncertainty is the final
upstream REST OpenAPI field definition; this draft intentionally does not modify
the Java SDK or specification.