github-actions[bot] commented on code in PR #68479:
URL: https://github.com/apache/doris/pull/68479#discussion_r4254164661
##########
fe/fe-core/src/main/java/org/apache/doris/catalog/OlapTable.java:
##########
@@ -3308,6 +3309,10 @@ public void validateForFlexiblePartialUpdate() throws
UserException {
if (hasVariantColumns()) {
throw new UserException("Flexible partial update can only support
table without variant columns.");
}
+ if (getIndexNumber() > 1) {
Review Comment:
[P1] Preserve altered Routine Load jobs during image restoration
This validator also runs from `RoutineLoadJob.gsonPostProcess()`, which
reparses and validates the original CREATE statement after restoring the
current `jobProperties`. Create a flexible Routine Load job on a base-only
table, pause it, alter `unique_key_update_mode` to `UPSERT`, and add a plain
rollup. The resulting full-row job is valid, but restoring an image now
validates its stale flexible CREATE against this new check; the exception is
caught by `gsonPostProcess()` and permanently changes the job to `CANCELLED`,
which cannot be resumed. Database/rollup metadata is loaded before Routine Load
jobs, so the rollup is already present when this happens. Keep the runtime
rejection, but make reconstruction use the persisted current mode/properties or
avoid mutable table-eligibility checks while rebuilding the original load
descriptor. Please cover this mode-change/rollup sequence with an image-restore
test.
--
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]