github-actions[bot] commented on code in PR #64551:
URL: https://github.com/apache/doris/pull/64551#discussion_r3418699384
##########
fe/fe-core/src/main/java/org/apache/doris/qe/StmtExecutor.java:
##########
@@ -1126,6 +1127,11 @@ public boolean isProfileSafeStmt() {
return true;
}
+ if (plan instanceof UpdateCommand || plan instanceof MergeIntoCommand
Review Comment:
This class-level allowlist also enables profiles for the Iceberg-routed
branches of `UpdateCommand` and `MergeIntoCommand`. For OLAP tables those
commands delegate through `InsertIntoTableCommand.initPlan()`, which calls
`stmtExecutor.setProfileType(ProfileType.LOAD)`, but the Iceberg paths
construct `IcebergMergeExecutor` directly
(`IcebergUpdateCommand.executeMergePlan()` /
`IcebergMergeCommand.executeMergePlan()`) and never set the `StmtExecutor`
profile type before `AbstractInsertExecutor.executeSingleInsert()` calls
`executor.updateProfile(...)`. Since `StmtExecutor#getSummaryInfo()` defaults
to `ProfileType.QUERY`, Iceberg UPDATE/MERGE profiles will be published under
QUERY instead of LOAD and will not show up where the new DML load profiles are
expected. Please set the profile type on the direct Iceberg executor path, or
otherwise narrow this allowlist so newly-safe DML profiles are classified
consistently. The new regression only uses OLAP MOW tables, so it would not
catch
this case.
--
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]