-
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
[opt](mysql serde) Avoid core dump when converting invalid block to mysql result #28069
Conversation
clang-tidy review says "All clean, LGTM! 👍" |
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. |
PR approved by anyone and no changes requested. |
for (int i = 0; i < _output_vexpr_ctxs.size(); ++i) { | ||
RETURN_IF_ERROR(arguments[i].serde->write_column_to_mysql( | ||
*(arguments[i].column), row_buffer, row_idx, arguments[i].is_const)); | ||
for (size_t row_idx = 0; row_idx < num_rows; ++row_idx) { |
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.
Don’t check every row
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.
My fault.
Check loop is divided from for loop and placed in the front.
(From new machine)TeamCity pipeline, clickbench performance test result: |
run buildall |
clang-tidy review says "All clean, LGTM! 👍" |
1 similar comment
clang-tidy review says "All clean, LGTM! 👍" |
(From new machine)TeamCity pipeline, clickbench performance test result: |
TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
|
TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
|
8b9153c
to
06c78ae
Compare
run buildall |
clang-tidy review says "All clean, LGTM! 👍" |
(From new machine)TeamCity pipeline, clickbench performance test result: |
TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
|
PR approved by at least one committer and no changes requested. |
06c78ae
to
9bb3606
Compare
run buildall |
clang-tidy review says "All clean, LGTM! 👍" |
TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
|
const auto col_index = index_check_const(row_idx, col_const); | ||
const auto row_idx_of_col_arr = index_check_const(row_idx_of_mysql, col_const); | ||
|
||
if (column_array.size() <= row_idx_of_col_arr) { |
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.
I do not think here should add this check, if here add , string serde should add same check too.
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.
Yes, we should add check for all serde if we can.
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.
if u add array , do same with map too.
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.
check is removed since it is checked per row.
this pr just fixed mysql result writer, and we have other writer types, maybe they are subjected to the same problem
(From new machine)TeamCity pipeline, clickbench performance test result: |
run buildall |
clang-tidy review says "All clean, LGTM! 👍" |
(From new machine)TeamCity pipeline, clickbench performance test result: |
TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
|
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. |
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
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
…ysql result (apache#28069) BE will core dump if result block is invalid when we doing result serialization. An existing bug case is described in apache#28030, so we add check branch to avoid BE core dump due to out of range related problem.
…ysql result (apache#28069) BE will core dump if result block is invalid when we doing result serialization. An existing bug case is described in apache#28030, so we add check branch to avoid BE core dump due to out of range related problem.
BE will core dump if result block is invalid when we doing result serialization.
An existing bug case is described in #28030, so we add check branch to avoid BE core dump due to out of range related problem.