-
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](function) opt ParseUrl function by process the input const column #36882
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: 40177 ms
|
TPC-DS: Total hot run time: 174821 ms
|
ClickBench: Total hot run time: 30.37 s
|
run buildall |
clang-tidy review says "All clean, LGTM! 👍" |
TPC-H: Total hot run time: 39846 ms
|
TPC-DS: Total hot run time: 174178 ms
|
ClickBench: Total hot run time: 30.36 s
|
@@ -2277,70 +2279,102 @@ class FunctionStringParseUrl : public IFunction { | |||
res_offsets.resize(input_rows_count); | |||
|
|||
size_t argument_size = arguments.size(); | |||
bool has_key = argument_size >= 3; | |||
const bool has_key = argument_size >= 3; |
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.
max size seems 3,should be dcheck bigger than 3?
ColumnString::Chars& res_chars, | ||
ColumnString::Offsets& res_offsets) { | ||
for (size_t i = 0; i < size; ++i) { | ||
UrlParser::UrlPart& url_part = url_parts[part_const ? 0 : i]; |
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.
use index_check_const
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.
clang-tidy made some suggestions
@@ -17,6 +17,7 @@ | |||
|
|||
#pragma once | |||
|
|||
#include <glog/logging.h> |
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.
warning: 'glog/logging.h' file not found [clang-diagnostic-error]
#include <glog/logging.h>
^
TPC-H: Total hot run time: 40347 ms
|
TPC-DS: Total hot run time: 173596 ms
|
ClickBench: Total hot run time: 30.7 s
|
run buildall |
clang-tidy review says "All clean, LGTM! 👍" |
TPC-H: Total hot run time: 40054 ms
|
TPC-DS: Total hot run time: 174107 ms
|
ClickBench: Total hot run time: 30.23 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. |
…mn (#36882) before ``` mysql [test10]>select count(parse_url(url, 'HOST')) from urldb; +-------------------------------+ | count(parse_url(url, 'HOST')) | +-------------------------------+ | 10000000 | +-------------------------------+ 1 row in set (1.12 sec) ``` now ``` mysql [test10]>select count(parse_url(url, 'HOST')) from urldb; +-------------------------------+ | count(parse_url(url, 'HOST')) | +-------------------------------+ | 10000000 | +-------------------------------+ 1 row in set (0.82 sec) ```
Proposed changes
Issue Number: close #xxx
before
now