Michael Smith has posted comments on this change. ( http://gerrit.cloudera.org:8080/24425 )
Change subject: IMPALA-15085: DML statements should always shuffle when target table is Iceberg V3 ...................................................................... Patch Set 2: (2 comments) http://gerrit.cloudera.org:8080/#/c/24425/2/fe/src/main/java/org/apache/impala/analysis/MergeStmt.java File fe/src/main/java/org/apache/impala/analysis/MergeStmt.java: http://gerrit.cloudera.org:8080/#/c/24425/2/fe/src/main/java/org/apache/impala/analysis/MergeStmt.java@124 PS2, Line 124: public boolean requiresShuffle() { return !getShuffleExprs().isEmpty(); } It'd be a bit more general if this were also the default in DmlStatementBase. getShuffleExprs() is defined there, and I don't see anywhere we wouldn't want to apply it. http://gerrit.cloudera.org:8080/#/c/24425/1/fe/src/main/java/org/apache/impala/analysis/ModifyStmt.java File fe/src/main/java/org/apache/impala/analysis/ModifyStmt.java: http://gerrit.cloudera.org:8080/#/c/24425/1/fe/src/main/java/org/apache/impala/analysis/ModifyStmt.java@195 PS1, Line 195: : public boolean r > Can't this have side effects on update/delete on Kudu tables? KuduModifyImpl always returns an empty list from MergeImpl.getShuffleExprs -> KuduModifyImpl.getPartitionKeyExprs. So this will always return false for Kudu update/delete. -- To view, visit http://gerrit.cloudera.org:8080/24425 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ic7aeed31b832521f0a619c15c116a954c134e4b2 Gerrit-Change-Number: 24425 Gerrit-PatchSet: 2 Gerrit-Owner: Zoltan Borok-Nagy <[email protected]> Gerrit-Reviewer: Csaba Ringhofer <[email protected]> Gerrit-Reviewer: Impala Public Jenkins <[email protected]> Gerrit-Reviewer: Michael Smith <[email protected]> Gerrit-Comment-Date: Tue, 09 Jun 2026 20:11:44 +0000 Gerrit-HasComments: Yes
