-
Notifications
You must be signed in to change notification settings - Fork 3.7k
[Fix](Variant) fix some nested explode_variant_array bug and add more… #44533
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
Conversation
|
Thank you for your contribution to Apache Doris. Please clearly describe your PR:
|
|
run buildall |
|
clang-tidy review says "All clean, LGTM! 👍" |
1 similar comment
|
clang-tidy review says "All clean, LGTM! 👍" |
5c60c45 to
a2a985c
Compare
|
run buildall |
|
clang-tidy review says "All clean, LGTM! 👍" |
TPC-H: Total hot run time: 40007 ms |
TPC-DS: Total hot run time: 190830 ms |
|
TeamCity be ut coverage result: |
ClickBench: Total hot run time: 31.22 s |
a2a985c to
fee282a
Compare
|
run buildall |
|
clang-tidy review says "All clean, LGTM! 👍" |
TPC-H: Total hot run time: 39658 ms |
|
TeamCity be ut coverage result: |
TPC-DS: Total hot run time: 196719 ms |
ClickBench: Total hot run time: 32.44 s |
| // 1. array_contains | ||
| qt_sql "select * from var_nested_array_agg where array_contains(cast(v['nested']['xx'] as array<int>), 10) order by k limit 10" | ||
| // 2. array_agg scalar | ||
| sql "select k, array_agg(cast(v['nested'] as text)) from var_nested_array_agg group by k limit 10" |
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.
qt_sql ? just sql will not show the output in out file
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.
the output is not stable since the serailized v['nested'] may contains blank and is not stable, which is acceptable at present
| _array_column = ColumnNullable::create(ColumnArray::create(ColumnNothing::create(0)), | ||
| ColumnUInt8::create(0)); | ||
| _array_column->assume_mutable()->insert_many_defaults(variant_column->size()); | ||
| _detail.nested_type = std::make_shared<DataTypeNothing>(); |
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.
maybe here should wrap in nullable , because many calculate operator behavior just make nested column in array as nullable
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.
it's redundant in column object case
amorynan
left a comment
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 anyone and no changes requested. |
qidaye
left a comment
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. |
|
|
||
| Status VExplodeTableFunction::_process_init_variant(Block* block, int value_column_idx) { | ||
| // explode variant array | ||
| const auto& variant_column = check_and_get_column<ColumnObject>( |
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.
here's bug which will lead to coredump
… test (apache#3799) cherry-pick from apache#44533
… test
What problem does this PR solve?
Issue Number: close #xxx
Related PR: #xxx
Problem Summary:
Release note
None
Check List (For Author)
Test
Behavior changed:
Does this need documentation?
Check List (For Reviewer who merge this PR)