[refactor](predicate) Refactor zone map#60393
Conversation
|
Thank you for your contribution to Apache Doris. Please clearly describe your PR:
|
|
run buildall |
3 similar comments
|
run buildall |
|
run buildall |
|
run buildall |
TPC-DS: Total hot run time: 190386 ms |
80331a6 to
31cb346
Compare
|
run buildall |
1 similar comment
|
run buildall |
TPC-H: Total hot run time: 31900 ms |
ClickBench: Total hot run time: 28.29 s |
|
run buildall |
c704804 to
35386e2
Compare
35386e2 to
46f5983
Compare
|
run buildall |
TPC-H: Total hot run time: 31862 ms |
ClickBench: Total hot run time: 28.44 s |
|
run buildall |
TPC-H: Total hot run time: 32392 ms |
ClickBench: Total hot run time: 28.28 s |
BE UT Coverage ReportIncrement line coverage Increment coverage report
|
BE Regression && UT Coverage ReportIncrement line coverage Increment coverage report
|
|
run buildall |
TPC-H: Total hot run time: 32255 ms |
ClickBench: Total hot run time: 28.26 s |
BE UT Coverage ReportIncrement line coverage Increment coverage report
|
BE Regression && UT Coverage ReportIncrement line coverage Increment coverage report
|
BE Regression && UT Coverage ReportIncrement line coverage Increment coverage report
|
| return Status::OK(); | ||
| } | ||
|
|
||
| Status ColumnReader::_parse_zone_map_skip_null(const ZoneMapPB& zone_map, |
There was a problem hiding this comment.
如果我们zone_map_info 能表达出来all null,has null,not null 之类的,这个函数感觉没用了啊
| if (type == FieldType::OLAP_FIELD_TYPE_CHAR) { | ||
| auto s = zone_map_info.max_value.template get<TYPE_CHAR>(); | ||
| while (!s.empty() && s.back() == '\0') { | ||
| s.pop_back(); |
There was a problem hiding this comment.
我们这里为什么要把char 类型的padding 去掉?
| RETURN_IF_ERROR(_parse_zone_map(zone_maps[i], min_value.get(), max_value.get())); | ||
| if (_zone_map_match_condition(zone_maps[i], min_value.get(), max_value.get(), | ||
| col_predicates)) { | ||
| RETURN_IF_ERROR(_parse_zone_map(zone_maps[i], zone_map_info)); |
There was a problem hiding this comment.
把614 行移动到616,防止重复使用,结果一些变量没有reset
|
PR approved by at least one committer and no changes requested. |
|
PR approved by anyone and no changes requested. |
|
|
||
| auto arg_precision = static_cast<UInt32>(precision); | ||
|
|
||
| if (!CastToDecimal::from_string(StringRef(str), to, arg_precision, 0, params)) { |
### What problem does this PR solve? Pick #60253 #60393 #60481 #56956 #60334 #60494 ### Check List (For Author) - Test <!-- At least one of them must be included. --> - [ ] Regression test - [ ] Unit Test - [ ] Manual test (add detailed scripts or steps below) - [ ] No need to test or manual test. Explain why: - [ ] This is a refactor/code format and no logic has been changed. - [ ] Previous test can cover this change. - [ ] No code files have been changed. - [ ] Other reason <!-- Add your reason? --> - Behavior changed: - [ ] No. - [ ] Yes. <!-- Explain the behavior change --> - Does this need documentation? - [ ] No. - [ ] Yes. <!-- Add document PR link here. eg: apache/doris-website#1214 --> ### Check List (For Reviewer who merge this PR) - [ ] Confirm the release note - [ ] Confirm test cases - [ ] Confirm document - [ ] Add branch pick label <!-- Add branch pick label that this PR should merge into -->
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)