feat: add table-aware position delete updates - #919
Draft
wirybeaver wants to merge 1 commit into
Draft
wirybeaver wants to merge 1 commit into
wirybeaver wants to merge 1 commit into
Conversation
wirybeaver
force-pushed
the
feature/v3-dv-write-pipeline
branch
from
September 5, 2026 21:59
e6db958 to
c11cea2
Compare
wirybeaver
force-pushed
the
feature/v3-dv-write-pipeline
branch
from
September 5, 2026 22:21
c11cea2 to
477a2ff
Compare
wirybeaver
force-pushed
the
feature/v3-dv-write-pipeline
branch
from
October 1, 2026 19:57
477a2ff to
658315c
Compare
wirybeaver
force-pushed
the
feature/v3-dv-write-pipeline
branch
from
October 1, 2026 21:45
658315c to
f256e78
Compare
This branch has not been deployed
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
Deliver table-aware end-to-end position deletion: write v3 Puffin DVs, preserve the v2 Parquet path, merge prior deletes, supersede old entries, and commit through
RowDelta.resolve each target's live partition/spec and keep minimal scan consistency checks with existing sequence-number fail-fast behavior
retain conflict validation, unknown-commit output preservation, and retry-safe cleanup; define missing-file deletion as idempotent at the shared FileIO seam
verify actual surviving Parquet rows after two commits and a fresh table load, including partition evolution
exercise a real concurrent data-file removal during commit/retry
resolve requested files lazily, reuse the existing delete-write result, and centralize commit-result handling with a small shared cleanup helper
consolidate duplicate routing/order tests and reuse the existing retry test harness without weakening conflict or unknown-commit coverage
DV-PR-1 in #916. Supersedes the standalone applicability work in #915. Based directly on
mainat3c5715c; no dependency on #913, #914, or #915. Full Puffin footer hardening and standalone fixtures are deliberately excluded.Test plan
GCC 14 focused checks on the four-feature integration tree based on
3c5715c; the final changed branch sources were verified to match the tested tree.data_test --gtest_filter='*PositionDeleteUpdateTest*:*PositionDeleteV3Test*': 16 passedIncludes actual Parquet row survival after two commits/reload, partition evolution, a persisted concurrent removal, cleanup/retry, unknown commit ownership, and v2 physical delete ordering.
git diff --check: passed