From b68001aee54528b02a93cb4a735f2d62b96f3b04 Mon Sep 17 00:00:00 2001 From: Yulei-Yang Date: Tue, 7 Mar 2023 08:51:55 +0800 Subject: [PATCH] [fix](priv) fix duplicated priv check when check column priv (#17446) when executing select stmt, columns privilege check will be invoked multiple times(column number in select stmt) Issue Number: close #xxx --- .../apache/doris/mysql/privilege/AccessControllerManager.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/AccessControllerManager.java b/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/AccessControllerManager.java index 271ee18f03..2e588ea792 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/AccessControllerManager.java +++ b/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/AccessControllerManager.java @@ -153,7 +153,7 @@ public class AccessControllerManager { PrivPredicate wanted) throws UserException { boolean hasGlobal = sysAccessController.checkGlobalPriv(currentUser, wanted); CatalogAccessController accessController = getAccessControllerOrDefault(ctl); - for (TableName tableName : tableToColsMap.keys()) { + for (TableName tableName : tableToColsMap.keySet()) { accessController.checkColsPriv(hasGlobal, currentUser, ctl, tableName.getDb(), tableName.getTbl(), tableToColsMap.get(tableName), wanted); }