Uh oh!
There was an error while loading. Please reload this page.
[enhance](mtmv)cache table snapshot in refresh context - #50855
Merged
Conversation
hello-stephen
commented
May 13, 2025
Contributor
Thank you for your contribution to Apache Doris. Please clearly describe your PR:
|
zddr
commented
May 13, 2025
ContributorAuthor
run buildall |
zddr
commented
May 14, 2025
ContributorAuthor
run buildall |
zddr
commented
May 14, 2025
ContributorAuthor
run buildall |
doris-robot
commented
May 14, 2025
TPC-H: Total hot run time: 33837 ms |
doris-robot
commented
May 14, 2025
TPC-DS: Total hot run time: 193941 ms |
doris-robot
commented
May 14, 2025
ClickBench: Total hot run time: 29.6 s |
zddr
commented
May 14, 2025
ContributorAuthor
run buildall |
doris-robot
commented
May 14, 2025
TPC-H: Total hot run time: 33504 ms |
doris-robot
commented
May 14, 2025
TPC-DS: Total hot run time: 193779 ms |
doris-robot
commented
May 14, 2025
ClickBench: Total hot run time: 29.05 s |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
seawinde
approved these changes
May 16, 2025
Contributor
PR approved by anyone and no changes requested. |
zddr
commented
May 16, 2025
ContributorAuthor
run buildall |
doris-robot
commented
May 16, 2025
TPC-H: Total hot run time: 34310 ms |
doris-robot
commented
May 16, 2025
TPC-DS: Total hot run time: 193713 ms |
doris-robot
commented
May 16, 2025
ClickBench: Total hot run time: 29.74 s |
zddr
commented
May 19, 2025
ContributorAuthor
run external |
zddr
commented
May 20, 2025
ContributorAuthor
run buildall |
doris-robot
commented
May 20, 2025
TPC-H: Total hot run time: 35251 ms |
doris-robot
commented
May 20, 2025
TPC-DS: Total hot run time: 186865 ms |
doris-robot
commented
May 20, 2025
ClickBench: Total hot run time: 28.74 s |
morrySnow
approved these changes
May 20, 2025
Contributor
PR approved by at least one committer and no changes requested. |
koarz pushed a commit
to koarz/doris
that referenced
this pull request
Jun 4, 2025
Assuming the SQL definition below, there are two tables (t1, t2) and one
materialized view (mv1).
When determining whether mv1 is synchronized with its base tables, the
system compares:
Whether mvp1 is synchronized with partition p1 and base table t2
Whether mvp2 is synchronized with partition p2 and base table t2
Optimization in this PR:
The original logic would fetch t2's snapshot information twice. This PR
improves efficiency by caching t2's snapshot in the refresh context to
avoid redundant retrieval.
CREATE TABLE t1
(
k2 TINYINT,
k3 INT not null
)
PARTITION BY LIST(`k3`)
(
PARTITION `p1` VALUES IN ('1'),
PARTITION `p2` VALUES IN ('2')
)
CREATE TABLE t2
(
k2 TINYINT,
k3 INT not null
);
create materialized view mv1 partition by(k3)
as
select * from t1 join t2;
mv1 will has two partition mvp1,mvp2zddr added a commit
to zddr/incubator-doris
that referenced
this pull request
Jun 4, 2025
Assuming the SQL definition below, there are two tables (t1, t2) and one
materialized view (mv1).
When determining whether mv1 is synchronized with its base tables, the
system compares:
Whether mvp1 is synchronized with partition p1 and base table t2
Whether mvp2 is synchronized with partition p2 and base table t2
Optimization in this PR:
The original logic would fetch t2's snapshot information twice. This PR
improves efficiency by caching t2's snapshot in the refresh context to
avoid redundant retrieval.
CREATE TABLE t1
(
k2 TINYINT,
k3 INT not null
)
PARTITION BY LIST(`k3`)
(
PARTITION `p1` VALUES IN ('1'),
PARTITION `p2` VALUES IN ('2')
)
CREATE TABLE t2
(
k2 TINYINT,
k3 INT not null
);
create materialized view mv1
partition by(k3)
as
select * from t1 join t2;
mv1 will has two partition mvp1,mvp2zddr added a commit
to zddr/incubator-doris
that referenced
this pull request
Jun 4, 2025
Assuming the SQL definition below, there are two tables (t1, t2) and one
materialized view (mv1).
When determining whether mv1 is synchronized with its base tables, the
system compares:
Whether mvp1 is synchronized with partition p1 and base table t2
Whether mvp2 is synchronized with partition p2 and base table t2
Optimization in this PR:
The original logic would fetch t2's snapshot information twice. This PR
improves efficiency by caching t2's snapshot in the refresh context to
avoid redundant retrieval.
CREATE TABLE t1
(
k2 TINYINT,
k3 INT not null
)
PARTITION BY LIST(`k3`)
(
PARTITION `p1` VALUES IN ('1'),
PARTITION `p2` VALUES IN ('2')
)
CREATE TABLE t2
(
k2 TINYINT,
k3 INT not null
);
create materialized view mv1
partition by(k3)
as
select * from t1 join t2;
mv1 will has two partition mvp1,mvp2yiguolei pushed a commit
that referenced
this pull request
Jun 5, 2025
dataroaring pushed a commit
that referenced
this pull request
Jun 12, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What problem does this PR solve?
Assuming the SQL definition below, there are two tables (t1, t2) and one materialized view (mv1).
When determining whether mv1 is synchronized with its base tables, the system compares:
Whether mvp1 is synchronized with partition p1 and base table t2
Whether mvp2 is synchronized with partition p2 and base table t2
Optimization in this PR:
The original logic would fetch t2's snapshot information twice. This PR improves efficiency by caching t2's snapshot in the refresh context to avoid redundant retrieval.
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)