-
Notifications
You must be signed in to change notification settings - Fork 2.2k
[BugFix] Fix mv rewrite bugs with IllegalStateException #63655
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
Conversation
@cursor review |
@mergify rebase |
Signed-off-by: shuming.li <[email protected]>
Signed-off-by: shuming.li <[email protected]>
be8d6a0
to
1dc7bdc
Compare
✅ Branch has been successfully rebased |
|
[Java-Extensions Incremental Coverage Report]✅ pass : 0 / 0 (0%) |
[FE Incremental Coverage Report]✅ pass : 41 / 46 (89.13%) file detail
|
[BE Incremental Coverage Report]✅ pass : 0 / 0 (0%) |
@Mergifyio backport branch-4.0 |
@Mergifyio backport branch-3.3 |
@Mergifyio backport branch-3.4 |
@Mergifyio backport branch-3.5 |
✅ Backports have been created
|
✅ Backports have been created
|
✅ Backports have been created
|
✅ Backports have been created
|
Signed-off-by: shuming.li <[email protected]> (cherry picked from commit 7ed48a7) # Conflicts: # fe/fe-core/src/main/java/com/starrocks/scheduler/MVTaskRunProcessor.java # fe/fe-core/src/main/java/com/starrocks/scheduler/mv/BaseMVRefreshProcessor.java # fe/fe-core/src/main/java/com/starrocks/scheduler/mv/MVPCTBasedRefreshProcessor.java # fe/fe-core/src/main/java/com/starrocks/scheduler/mv/ivm/MVIVMBasedMVRefreshProcessor.java # fe/fe-core/src/main/java/com/starrocks/sql/common/PCellSortedSet.java
Signed-off-by: shuming.li <[email protected]> (cherry picked from commit 7ed48a7) # Conflicts: # fe/fe-core/src/main/java/com/starrocks/scheduler/MVTaskRunProcessor.java # fe/fe-core/src/main/java/com/starrocks/scheduler/mv/BaseMVRefreshProcessor.java # fe/fe-core/src/main/java/com/starrocks/scheduler/mv/MVPCTBasedRefreshProcessor.java # fe/fe-core/src/main/java/com/starrocks/scheduler/mv/ivm/MVIVMBasedMVRefreshProcessor.java # fe/fe-core/src/main/java/com/starrocks/sql/common/PCellSortedSet.java
Signed-off-by: shuming.li <[email protected]> (cherry picked from commit 7ed48a7) # Conflicts: # fe/fe-core/src/main/java/com/starrocks/scheduler/MVTaskRunProcessor.java # fe/fe-core/src/main/java/com/starrocks/scheduler/mv/BaseMVRefreshProcessor.java # fe/fe-core/src/main/java/com/starrocks/scheduler/mv/MVPCTBasedRefreshProcessor.java # fe/fe-core/src/main/java/com/starrocks/scheduler/mv/ivm/MVIVMBasedMVRefreshProcessor.java # fe/fe-core/src/main/java/com/starrocks/sql/common/PCellSortedSet.java
Signed-off-by: shuming.li <[email protected]> (cherry picked from commit 7ed48a7) # Conflicts: # fe/fe-core/src/main/java/com/starrocks/scheduler/MVTaskRunProcessor.java # fe/fe-core/src/main/java/com/starrocks/scheduler/mv/BaseMVRefreshProcessor.java # fe/fe-core/src/main/java/com/starrocks/scheduler/mv/MVPCTBasedRefreshProcessor.java # fe/fe-core/src/main/java/com/starrocks/scheduler/mv/ivm/MVIVMBasedMVRefreshProcessor.java # fe/fe-core/src/main/java/com/starrocks/sql/common/PCellSortedSet.java
) (#63856) Signed-off-by: shuming.li <[email protected]> Co-authored-by: shuming.li <[email protected]>
) (#63857) Signed-off-by: shuming.li <[email protected]> Co-authored-by: shuming.li <[email protected]>
) (#63855) Signed-off-by: shuming.li <[email protected]> Co-authored-by: shuming.li <[email protected]>
) (#63858) Signed-off-by: shuming.li <[email protected]> Co-authored-by: shuming.li <[email protected]>
) (#63858) Signed-off-by: shuming.li <[email protected]> Co-authored-by: shuming.li <[email protected]> (cherry picked from commit 31894ed)
Why I'm doing:
Fix mv rewrite with possible exceptions:
What I'm doing:
Fixes #issue
What type of PR is this:
Does this PR entail a change in behavior?
If yes, please specify the type of change:
Checklist:
Bugfix cherry-pick branch check:
Note
Ensures logical properties are derived before using output columns to fix MV rewrite ISE; adds next-run scheduling and logging to MV refresh, safer partition dropping, bounded partition list string, and tests.
OptExpression
output columns viaMvUtils.getOutputColumns
to preventIllegalStateException
.MvUtils.getOutputColumns
helper; update callers inMaterializedViewRewriter
.BaseMVRefreshProcessor.generateNextTaskRunIfNeeded()
and invoke it fromMVTaskRunProcessor
on success; implement in PCT/IVM processors (respect kill/hasNext conditions).MVPCTRefreshPartitioner
.nameToPartition
.PCellSortedSet
fixes: correctlimit()
logic; compacttoString()
with prefix...suffix capped byConfig.max_mv_task_run_meta_message_values_length
.PCellSortedSetTest
and SQL tests for MV rewrite bugfix and behavior.Written by Cursor Bugbot for commit be8d6a0. This will update automatically on new commits. Configure here.