-
Notifications
You must be signed in to change notification settings - Fork 3.2k
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](MergedIO) no need to merge large columns #27315
Conversation
clang-tidy review says "All clean, LGTM! 👍" |
07ac864
to
6f8778a
Compare
clang-tidy review says "All clean, LGTM! 👍" |
run buildall |
(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. |
PR approved by anyone and no changes requested. |
6f8778a
to
5d7af71
Compare
clang-tidy review says "All clean, LGTM! 👍" |
run buildall |
(From new machine)TeamCity pipeline, clickbench performance test result: |
TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
|
5d7af71
to
244ffc8
Compare
run buildall |
clang-tidy review says "All clean, LGTM! 👍" |
TeamCity be ut coverage result: |
(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
doris::io::PrefetchRange prefetch_range = {offset, offset + length}; | ||
prefetch_ranges.emplace_back(std::move(prefetch_range)); | ||
} | ||
offset += length; | ||
} | ||
// The underlying page reader will prefetch data in column. | ||
_file_reader.reset(new io::MergeRangeFileReader(_profile, _inner_reader, prefetch_ranges)); | ||
size_t num_columns = std::count_if(selected_columns.begin(), selected_columns.end(), |
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 should not include the first orc struct column.
1. Fix a profile bug of `MergeRangeFileReader`, and add a profile `ApplyBytes` to show the total bytes of ranges. 2. There's no need to merge large columns, because `MergeRangeFileReader` will increase the copy time.
…#27497) 1. Fix a profile bug of `MergeRangeFileReader`, and add a profile `ApplyBytes` to show the total bytes of ranges. 2. There's no need to merge large columns, because `MergeRangeFileReader` will increase the copy time.
* [fix](stats) Fix update rows for unique table didn't get updated properly #26968 (#27337) * [FIX](jsonb) fix jsonb in predict column #27325 (#27424) * [fix](fe) slots in having clause should be set to need materialized(#27412) (#27429) * [Bug](insert)fix insert wrong data on mv when stmt have multiple values (#27297) (#27382) fix insert wrong data on mv when stmt have multiple values * [fix](fe ut) Fix OlapQueryCacheTest failed (#27305) (#27406) 1. ``` java.lang.NullPointerException: null at org.apache.doris.catalog.Env.getCurrentSystemInfo(Env.java:793) ~[classes/:?] at org.apache.doris.qe.SimpleScheduler$UpdateBlacklistThread.run(SimpleScheduler.java:206) ~[classes/:?] at java.lang.Thread.run(Thread.java:750) ~[?:1.8.0_382] java.lang.NullPointerException at org.apache.doris.qe.OlapQueryCacheTest.setUp(OlapQueryCacheTest.java:226) ``` 2. ``` [ERROR] testSqlCacheKeyWithNestedViewForNereids Time elapsed: 1.962 s <<< FAILURE! java.lang.AssertionError: SELECT command denied to user 'testCluster:testUser'@'192.168.1.1' for table 'internal: testCluster:testDb: appevent' at org.apache.doris.qe.OlapQueryCacheTest.parseSqlByNereids(OlapQueryCacheTest.java:579) at org.apache.doris.qe.OlapQueryCacheTest.testSqlCacheKeyWithNestedViewForNereids(OlapQueryCacheTest.java:1338) ``` 3. ``` [ERROR] Tests run: 28, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 113.63 s <<< FAILURE! - in org.apache.doris.qe.OlapQueryCacheTest [ERROR] testCacheModeTable Time elapsed: 1.657 s <<< ERROR! java.lang.IllegalArgumentException: Value of type org.apache.doris.qe.QueryState incompatible with return type org.apache.doris.system.SystemInfoService of org.apache.doris.catalog.Env#getCurrentSystemInfo() at org.apache.doris.qe.OlapQueryCacheTest.setUp(OlapQueryCacheTest.java:156) ``` * [regression test](schema change) add some schema change regression cases (#27112) (#27418) * [fix](Nereids) result type of add precision is 1 more than expected (#27136) (#27426) * [fix](Nereids): fill miss slot in having subquery (#27177) (#27394) * [fix](memory) Fix make_top_consumption_snapshots heap-use-after-free #27434 (#27465) * [fix](function) make TIMESTAMP function DEPEND_ON_ARGUMENT (#27343) (#27458) * [fix](test) order by clause in test_map(#27390) (#27391) pick #27390 * [performance](Planner): optimize getStringValue() in DateLiteral (#27363) (#27470) - reduce cost of `getStringValue()` - original code don't consider `microsecond` part in `getStringValue()` (cherry picked from commit 044a295) * [Chore](pick) do not push down agg on aggregate column (#27356) (#27498) * [fix](stats) table not exists error msg not print objects name #27074 (#27463) * [improve](nereids) support agg function of count(const value) pushdown #26677 (#27499) support sql: select count(1)-count(not null) from table, the agg of count could push down. * [test](fe-ut) fix unstable MysqlServerTest (#27459) Need to find a unbind port for MysqlServerTest * [opt](MergedIO) no need to merge large columns (#27315) (#27497) 1. Fix a profile bug of `MergeRangeFileReader`, and add a profile `ApplyBytes` to show the total bytes of ranges. 2. There's no need to merge large columns, because `MergeRangeFileReader` will increase the copy time. * [improvement](drop tablet) impr gc shutdown tablet lock (#26151) (#27478) * [doc](stats) SQL manual for stats (#27461) * [chore](merge-on-write) disable rowid conversion check for mow table by default (#27482) (#27508) * [fix](regression)Fix hive p2 case (#27466) (#27511) * [fix](statistics)Fix auto analyze remove finished job bug #27486 (#27510) * [Bug](bitmap) Fix heap-use-after-free in the bitmap functions #27411 (#27521) * [Pick](nereids) Pick: partition prune fails in case of NOT expression (#27047) (#27507) * [fix](clone) Fix engine_clone file exist (#27361) (#27536) * [chore](case) adjust timeout of broker load case #27540 * Fix auto analyze doesn't filter unsupported type bug. (#27547) Fix auto analyze doesn't filter unsupported type bug. Catch throwable in auto analyze thread for each database, otherwise the thread will quit when one database failed to create jobs and all other databases will not get analyzed. change FE config item full_auto_analyze_simultaneously_running_task_num to auto_analyze_simultaneously_running_task_num backport #27559 * [chore](fe plugin) Upgrade dependency to doris 2.0-SNAPSHOT #27522 (#27558) * [Bug](materialized-view) add limitation for duplicate expr on materialized view (#27523) (#27562) * [fix](planner)join node should output required slot from parent node #27526 (#27551) * [branch-2.0](hive) enable hive view by default (#27550) * [pick](nereids) adjust bc join and shuffle join #27113 (#27566) * [Fix](hive-transactional-table) Fix NPE when query empty hive transactional table. (#27567) --------- Co-authored-by: AKIRA <33112463+Kikyou1997@users.noreply.github.com> Co-authored-by: amory <wangqiannan@selectdb.com> Co-authored-by: Jerry Hu <mrhhsg@gmail.com> Co-authored-by: Pxl <pxl290@qq.com> Co-authored-by: Xinyi Zou <zouxinyi02@gmail.com> Co-authored-by: Luwei <814383175@qq.com> Co-authored-by: morrySnow <101034200+morrySnow@users.noreply.github.com> Co-authored-by: 谢健 <jianxie0@gmail.com> Co-authored-by: Mryange <59914473+Mryange@users.noreply.github.com> Co-authored-by: jakevin <jakevingoo@gmail.com> Co-authored-by: zhangstar333 <87313068+zhangstar333@users.noreply.github.com> Co-authored-by: Mingyu Chen <morningman@163.com> Co-authored-by: Ashin Gau <AshinGau@users.noreply.github.com> Co-authored-by: yujun <yu.jun.reach@gmail.com> Co-authored-by: Xin Liao <liaoxinbit@126.com> Co-authored-by: Jibing-Li <64681310+Jibing-Li@users.noreply.github.com> Co-authored-by: xy720 <22125576+xy720@users.noreply.github.com> Co-authored-by: minghong <englefly@gmail.com> Co-authored-by: Jack Drogon <jack.xsuperman@gmail.com> Co-authored-by: Dongyang Li <hello_stephen@qq.com> Co-authored-by: zhiqiang <seuhezhiqiang@163.com> Co-authored-by: starocean999 <40539150+starocean999@users.noreply.github.com> Co-authored-by: Qi Chen <kaka11.chen@gmail.com>
1. Fix a profile bug of `MergeRangeFileReader`, and add a profile `ApplyBytes` to show the total bytes of ranges. 2. There's no need to merge large columns, because `MergeRangeFileReader` will increase the copy time.
…#27497) 1. Fix a profile bug of `MergeRangeFileReader`, and add a profile `ApplyBytes` to show the total bytes of ranges. 2. There's no need to merge large columns, because `MergeRangeFileReader` will increase the copy time.
1. Fix a profile bug of `MergeRangeFileReader`, and add a profile `ApplyBytes` to show the total bytes of ranges. 2. There's no need to merge large columns, because `MergeRangeFileReader` will increase the copy time.
Proposed changes
MergeRangeFileReader
, and add a profileApplyBytes
to show the total bytes of ranges.MergeRangeFileReader
will increase the copy time.Further comments
If this is a relatively large or complex change, kick off the discussion at dev@doris.apache.org by explaining why you chose the solution you did and what alternatives you considered, etc...