-
Notifications
You must be signed in to change notification settings - Fork 3.7k
[fix](mv) Fix sync mv could not be chosen by cbo stable because stats upload from be not in time #58720
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
[fix](mv) Fix sync mv could not be chosen by cbo stable because stats upload from be not in time #58720
Conversation
… upload from be not in time
|
Thank you for your contribution to Apache Doris. Please clearly describe your PR:
|
|
run buildall |
TPC-H: Total hot run time: 34417 ms |
TPC-DS: Total hot run time: 180096 ms |
ClickBench: Total hot run time: 27.45 s |
FE UT Coverage ReportIncrement line coverage |
FE Regression Coverage ReportIncrement line coverage |
|
PR approved by at least one committer and no changes requested. |
|
PR approved by anyone and no changes requested. |
yujun777
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
FE Regression Coverage ReportIncrement line coverage |
… upload from be not in time (#58720) This PR introduces two key modifications to improve the reliability of the optimizer (CBO) and the testing pipeline concerning materialized views: 1. Fixes unstable selection of synchronous materialized views in the pipeline: The root cause was that the statistical information of the base table was not reported promptly. This delay could lead the CBO to estimate selectedPartitionsRowCountas zero for the materialized view, causing it to be incorrectly bypassed during query planning. The fix involves manually injecting the statistical information for the synchronous materialized view when available, ensuring the CBO can make a stable and accurate assessment of its cost . 2. Removes the fuzzy value setting for preMaterializedViewRewriteStrategyin SessionVariable: The test cases for the TRY_IN_RBO strategy have already been extended to cover scenarios equivalent to both NOT_IN_RBO and FORCE_IN_RBO. Retaining the fuzzy option can introduce unnecessary instability into the pipeline. For instance, a PR might pass tests when the strategy is TRY_IN_RBO but fail if the pipeline randomly selects NOT_IN_RBO, leading to inconsistent results. Removing this fuzzy setting helps eliminate such non-deterministic failures and enhances pipeline stability
… upload from be not in time (apache#58720) This PR introduces two key modifications to improve the reliability of the optimizer (CBO) and the testing pipeline concerning materialized views: 1. Fixes unstable selection of synchronous materialized views in the pipeline: The root cause was that the statistical information of the base table was not reported promptly. This delay could lead the CBO to estimate selectedPartitionsRowCountas zero for the materialized view, causing it to be incorrectly bypassed during query planning. The fix involves manually injecting the statistical information for the synchronous materialized view when available, ensuring the CBO can make a stable and accurate assessment of its cost . 2. Removes the fuzzy value setting for preMaterializedViewRewriteStrategyin SessionVariable: The test cases for the TRY_IN_RBO strategy have already been extended to cover scenarios equivalent to both NOT_IN_RBO and FORCE_IN_RBO. Retaining the fuzzy option can introduce unnecessary instability into the pipeline. For instance, a PR might pass tests when the strategy is TRY_IN_RBO but fail if the pipeline randomly selects NOT_IN_RBO, leading to inconsistent results. Removing this fuzzy setting helps eliminate such non-deterministic failures and enhances pipeline stability
… upload from be not in time (apache#58720) This PR introduces two key modifications to improve the reliability of the optimizer (CBO) and the testing pipeline concerning materialized views: 1. Fixes unstable selection of synchronous materialized views in the pipeline: The root cause was that the statistical information of the base table was not reported promptly. This delay could lead the CBO to estimate selectedPartitionsRowCountas zero for the materialized view, causing it to be incorrectly bypassed during query planning. The fix involves manually injecting the statistical information for the synchronous materialized view when available, ensuring the CBO can make a stable and accurate assessment of its cost . 2. Removes the fuzzy value setting for preMaterializedViewRewriteStrategyin SessionVariable: The test cases for the TRY_IN_RBO strategy have already been extended to cover scenarios equivalent to both NOT_IN_RBO and FORCE_IN_RBO. Retaining the fuzzy option can introduce unnecessary instability into the pipeline. For instance, a PR might pass tests when the strategy is TRY_IN_RBO but fail if the pipeline randomly selects NOT_IN_RBO, leading to inconsistent results. Removing this fuzzy setting helps eliminate such non-deterministic failures and enhances pipeline stability
What problem does this PR solve?
This PR introduces two key modifications to improve the reliability of the optimizer (CBO) and the testing pipeline concerning materialized views:
Fixes unstable selection of synchronous materialized views in the pipeline: The root cause was that the statistical information of the base table was not reported promptly. This delay could lead the CBO to estimate selectedPartitionsRowCountas zero for the materialized view, causing it to be incorrectly bypassed during query planning. The fix involves manually injecting the statistical information for the synchronous materialized view when available, ensuring the CBO can make a stable and accurate assessment of its cost .
Removes the fuzzy value setting for preMaterializedViewRewriteStrategyin SessionVariable: The test cases for the TRY_IN_RBO strategy have already been extended to cover scenarios equivalent to both NOT_IN_RBO and FORCE_IN_RBO. Retaining the fuzzy option can introduce unnecessary instability into the pipeline. For instance, a PR might pass tests when the strategy is TRY_IN_RBO but fail if the pipeline randomly selects NOT_IN_RBO, leading to inconsistent results. Removing this fuzzy setting helps eliminate such non-deterministic failures and enhances pipeline stability
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)