-
Notifications
You must be signed in to change notification settings - Fork 3.3k
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](compaction) fix mismatch between segment key and value column rows during compaction #37960
[fix](compaction) fix mismatch between segment key and value column rows during compaction #37960
Conversation
…ows during compaction
Thank you for your contribution to Apache Doris. Since 2024-03-18, the Document has been moved to doris-website. |
clang-tidy review says "All clean, LGTM! 👍" |
1 similar comment
clang-tidy review says "All clean, LGTM! 👍" |
run buildall |
clang-tidy review says "All clean, LGTM! 👍" |
TPC-H: Total hot run time: 40049 ms
|
TPC-DS: Total hot run time: 173552 ms
|
ClickBench: Total hot run time: 30.82 s
|
} | ||
// when splitting segment, need to make rows align between key columns and value columns | ||
if (num_rows_written + limit >= num_rows_key_group && | ||
_cur_writer_idx < _segment_writers.size() - 1) { |
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.
to_written = num_rows_written + limit >= num_rows_key_group ? num_rows_key_group - num_rows_written : limit;
_segment_writers[_cur_writer_idx]->append_block(block, start_offset, to_written);
start_offset += to_written;
limit -= to_written;
if (limit > 0) {
++_cur_writer_idx;
// switch to next writer
RETURN_IF_ERROR(_segment_writers[_cur_writer_idx]->init(col_ids, is_key));
num_rows_written = 0;
num_rows_key_group = _segment_writers[_cur_writer_idx]->row_count();
}
clang-tidy review says "All clean, LGTM! 👍" |
2 similar comments
clang-tidy review says "All clean, LGTM! 👍" |
clang-tidy review says "All clean, LGTM! 👍" |
run buildall |
run performance |
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. |
run buildall |
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. |
…ows during compaction (#37960) When a block is splitted to 3 segments, old code just handles 2 and the last is overlowed.
#37960 introduces this problem
#37960 introduces this problem
…ows during compaction (apache#37960) When a block is splitted to 3 segments, old code just handles 2 and the last is overlowed.
… compaction (apache#38251) apache#37960 introduced this issue
…38356) apache#37960 introduces this problem
…ows during compaction (apache#37960) When a block is splitted to 3 segments, old code just handles 2 and the last is overlowed.
… compaction (apache#38251) apache#37960 introduced this issue
…38356) apache#37960 introduces this problem
…ows during compaction (apache#37960) (apache#38251) (apache#38356) (apache#39263) pick master apache#37960 apache#38251 apache#38356
When a block is splitted to 3 segments, old code just handles 2 and the last is overlowed.