Skip to content

test(delta-harness): add merge-on-read matrix - #705

Closed
mkuchenbecker wants to merge 7 commits into
linkedin:mkuchenbecker/delta-harness-rtasfrom
mkuchenbecker:mkuchenbecker/delta-harness-mor
Closed

test(delta-harness): add merge-on-read matrix#705
mkuchenbecker wants to merge 7 commits into
linkedin:mkuchenbecker/delta-harness-rtasfrom
mkuchenbecker:mkuchenbecker/delta-harness-mor

Conversation

@mkuchenbecker

@mkuchenbecker mkuchenbecker commented Sep 1, 2026

Copy link
Copy Markdown
Collaborator

Summary

This PR adds merge-on-read preparations, DML replay, and physical/maintenance
contracts on top of RTAS. It contributes 320 cases on top of the 394-case RTAS
catalog, producing 714 combined cases.

Stack

Layer Branch Parent Contribution Combined PR
RTAS delta-harness-rtas Standard DML 264 394 #704
Merge-on-read delta-harness-mor RTAS 320 714 this PR
Branch and write-audit-publish delta-harness-branch Merge-on-read 102 816 #706

Direct child: Branch and write-audit-publish, which routes writes through
merge-on-read tables and needs this contract first.

Scope

This layer owns merge-on-read preparations, row-level mutation replay under
merge-on-read, and merge-on-read-specific physical/maintenance behavior
(position-delete files, mode changes, live-delete interaction, metadata tables, time
travel, rollback, changelog limitations, compaction, snapshot expiration, manifest
rewriting, orphan removal). It excludes branch/WAP routing, which is the next layer's
scope.

Family Coverage Cases
DML replay Compatible row mutations replayed on merge-on-read preparations 268
Physical and maintenance contracts 52 focused families 52
Total 320

Known limitations

No new known-bug skips. The 4 combined-catalog skips are RTAS's inherited pair
(rtas.schema.incompatibleType.notSilentlyLossy, rtas.concurrency.replaceVersusAppend,
each on Parquet and ORC).

Validation

Check Result
git diff --check against the parent tip Clean, 4 files, +1312/-1.
Added lines ASCII only.
Embedded catalog 714 combined cases: 710 passed, 4 skipped, 0 failed.

Add the merge-on-read behavior matrix as a clean contribution on the
revised RTAS stack, with local ownership of its format assertions.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@mkuchenbecker
mkuchenbecker force-pushed the mkuchenbecker/delta-harness-mor branch from 689c707 to cd5b9e7 Compare September 4, 2026 21:09
@mkuchenbecker
mkuchenbecker changed the base branch from main to mkuchenbecker/delta-harness-rtas September 4, 2026 22:52
mkuchenbecker and others added 4 commits September 4, 2026 17:17
Keep the foundation fixture surface limited to table primitives used by
its 34 cases. Rename the DML scenario contributors so their scope and
rejection semantics are explicit.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Move partitioned and null-row preparations into the DML layer that uses
them. Rename the complete operation contribution to distinguish it from
the representative foundation slice.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Move partitioning, lineage, metadata, and rename helpers into the RTAS
layer and adopt the explicit DML operation naming from its parent.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Keep merge-on-read table construction and prepared states in a domain-specific fixture boundary while preserving the layer's 714-case catalog.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant