Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix streaming when the same file occurs with different DVs in the same batch #1899

Closed

Conversation

larsk-db
Copy link
Contributor

Description

There was an edge case in streaming with deletion vectors in the source, where in ignoreChanges-mode it could happen that if the same file occurred with different DVs in the same batch (or both with a DV and without a DV), then we would read the file with the wrong DV, since we broadcast the DVs to the scans by data file path.

This PR fixes this issue, by reading files from different versions in different scans and then taking the union of the result to build the final DataFrame for the batch.

How was this patch tested?

Added new tests for having 2 DML commands (DELETE->DELETE and DELETE->INSERT) in the same batch for all change modi.

Does this PR introduce any user-facing changes?

No.

@larsk-db
Copy link
Contributor Author

The Delta Connectors test failure is unrelated to my PR, it also fails on other current PRs.

@felipepessoto
Copy link
Contributor

@larsk-db do you know if this affects 2.4?

@larsk-db
Copy link
Contributor Author

@larsk-db do you know if this affects 2.4?

It does, PR to fix is here: #1897

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.

3 participants