-
Notifications
You must be signed in to change notification settings - Fork 3.4k
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](merge-on-write) Fix duplicate key problem after adding sequence column for merge-on-write table #39958
[Fix](merge-on-write) Fix duplicate key problem after adding sequence column for merge-on-write table #39958
Conversation
Thank you for your contribution to Apache Doris. Since 2024-03-18, the Document has been moved to doris-website. |
run buildall |
clang-tidy review says "All clean, LGTM! 👍" |
TPC-H: Total hot run time: 38196 ms
|
TPC-DS: Total hot run time: 187418 ms
|
ClickBench: Total hot run time: 30.92 s
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
PR approved by at least one committer and no changes requested. |
PR approved by anyone and no changes requested. |
… column for merge-on-write table (#39958) ## Proposed changes Currently, `BaseTablet::lookup_row_key()` use tablet_meta's schema to decide whether a tablet has sequence column. But users can use `ALTER TABLE tbl ENABLE FEATURE "SEQUENCE_LOAD" WITH ...` to add hidden sequence column on MOW table. This is a light schema change which will not change the BE's tablet meta, thus causing wrong behavior in `BaseTablet::lookup_row_key()`. This PR use the schema of the current load, which is the latest schema, to decide whether a tablet has sequence column and correct the lookup procedure in `BaseTablet::lookup_row_key()` and `Segment::lookup_row_key()`. branch-2.1-pick: #40010 branch-2.0-pick: #40015
… column for merge-on-write table apache#39958 (apache#40015)
Proposed changes
Currently,
BaseTablet::lookup_row_key()
use tablet_meta's schema to decide whether a tablet has sequence column. But users can useALTER TABLE tbl ENABLE FEATURE "SEQUENCE_LOAD" WITH ...
to add hidden sequence column on MOW table. This is a light schema change which will not change the BE's tablet meta, thus causing wrong behavior inBaseTablet::lookup_row_key()
.This PR use the schema of the current load, which is the latest schema, to decide whether a tablet has sequence column and correct the lookup procedure in
BaseTablet::lookup_row_key()
andSegment::lookup_row_key()
.branch-2.1-pick: #40010
branch-2.0-pick: #40015