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

[cherry-pick](branch-2.1) Pick "[Fix](delete command) Mark delete sign when do delete command in MoW table (#35917)" #37594

Merged
merged 3 commits into from
Jul 15, 2024

Conversation

Yukang-Lian
Copy link
Collaborator

Proposed changes

Issue Number: close #xxx

Pick #35917 and #37151

@doris-robot
Copy link

Thank you for your contribution to Apache Doris.
Don't know what should be done next? See How to process your PR

Since 2024-03-18, the Document has been moved to doris-website.
See Doris Document.

@Yukang-Lian
Copy link
Collaborator Author

run buildall

Copy link
Contributor

@zhannngchen zhannngchen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Copy link
Contributor

PR approved by at least one committer and no changes requested.

@github-actions github-actions bot added the approved Indicates a PR has been approved by one committer. label Jul 15, 2024
Copy link
Contributor

PR approved by anyone and no changes requested.

…table (apache#35917)

close apache#34551

Problem: As shown in the issue above, if a key deleted by a delete
statement is written to by updating only certain columns, the data will
not display correctly.

Reason: The delete statement deletes the data by writing a delete
predicate, which is stored in the rowset meta and applied during data
retrieval to filter the data. However, partial column updates do not
consider the effect of the delete predicate when reading the original
data. The imported key should be considered as a new key (since it has
already been deleted), but it is actually treated as an old key.
Therefore, only some columns are updated, leading to incorrect results.

Solution: Consider the delete predicate during partial column updates,
but this method will result in reading more columns, as shown in apache#35766.
Thus, in this PR, we change the delete operation in the mow table from
writing a delete predicate to writing a delete sign, which effectively
resolves the issue.
…d mode (apache#37151)

Problem: The `test_new_partial_update` case fails to run in cloud mode,
but it passes in local mode.

Reason: In PR apache#35917, we introduced a new table attribute
`enable_light_delete`. When executing schema changes with `alter table
set xxx` statements, the local and cloud modes process the logic
differently. The cloud mode has its unique processing logic, which was
not addressed in the mentioned PR, leading to failures in the cloud
environment.

Solution: To resolve the issue, we need to complete the missing schema
change logic for the cloud mode. Once this is implemented, the problem
should be resolved.
@Yukang-Lian
Copy link
Collaborator Author

run buildall

Copy link
Contributor

clang-tidy review says "All clean, LGTM! 👍"

@Yukang-Lian
Copy link
Collaborator Author

run buildall

Copy link
Contributor

clang-tidy review says "All clean, LGTM! 👍"

@zhannngchen zhannngchen merged commit 63c2d22 into apache:branch-2.1 Jul 15, 2024
19 of 21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by one committer. meta-change reviewed
3 participants