github-actions[bot] commented on code in PR #68390:
URL: https://github.com/apache/doris/pull/68390#discussion_r4092283102
##########
fe/fe-core/src/main/java/org/apache/doris/job/extensions/mtmv/MTMVTask.java:
##########
@@ -510,9 +579,44 @@ && hasUnusableIvmStream()) {
mtmv.getName(), getTaskId());
return Lists.newArrayList(RefreshAttemptType.COMPLETE);
}
+ // Every partition either needs a rebuild or was never filled, and at
least one needs a rebuild:
+ // COMPLETE then does nothing the per-partition routing would not, in
one read of the MV.
+ if (!request.explicitPartitions &&
attempts.contains(RefreshAttemptType.IVM)
Review Comment:
[P1] Preserve no-fallback `INCREMENTAL` when every partition is dirty. This
shortcut ignores `request.allowFallback`. Without it, the dirty-rebuild phase
still installs `IvmRewriteContext.full`, so `IvmFullRefreshMTMV` reads the
existing streams and a missing/stale stream raises `STREAM_UNSUPPORTED`; the
later empty incremental scope is never reached. Returning `COMPLETE` here
instead reconciles that stream and makes the same strict request succeed, even
though the preceding unusable-stream shortcut permits that reset only with
`FALLBACK`. Gate this shortcut on `allowFallback` (or reject the strict request
after checking the stream), and cover all-dirty plus an unusable stream with
`INCREMENTAL` without `FALLBACK`.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]