This is an automated email from the ASF dual-hosted git repository.

dataroaring pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new ae86e689594 [fix](case) fix external case user cluster usage_priv when 
cloud-mode (#48016)
ae86e689594 is described below

commit ae86e6895941554e8143a740d22694b37d7e1026
Author: zy-kkk <zhongy...@gmail.com>
AuthorDate: Wed Feb 19 11:12:32 2025 +0800

    [fix](case) fix external case user cluster usage_priv when cloud-mode 
(#48016)
    
    When running in Cloud mode, if a separate user is created in the case,
    need to grant cluster usage_priv
---
 .../hive/test_external_sql_block_rule.groovy        | 21 +++++++++++++++++++++
 .../external_table_p0/tvf/test_catalogs_tvf.groovy  |  8 +++++++-
 2 files changed, 28 insertions(+), 1 deletion(-)

diff --git 
a/regression-test/suites/external_table_p0/hive/test_external_sql_block_rule.groovy
 
b/regression-test/suites/external_table_p0/hive/test_external_sql_block_rule.groovy
index f9a94f92b8d..836a98ea36a 100644
--- 
a/regression-test/suites/external_table_p0/hive/test_external_sql_block_rule.groovy
+++ 
b/regression-test/suites/external_table_p0/hive/test_external_sql_block_rule.groovy
@@ -49,16 +49,37 @@ suite("test_external_sql_block_rule", 
"external_docker,hive,external_docker_hive
     sql """create user external_block_user1;"""
     sql """SET PROPERTY FOR 'external_block_user1' 'sql_block_rules' = 
'external_hive_partition';"""
     sql """grant all on *.*.* to external_block_user1;"""
+    //cloud-mode
+    if (isCloudMode()) {
+        def clusters = sql " SHOW CLUSTERS; "
+        assertTrue(!clusters.isEmpty())
+        def validCluster = clusters[0][0]
+        sql """GRANT USAGE_PRIV ON CLUSTER `${validCluster}` TO 
external_block_user1;""";
+    }
 
     sql """drop user if exists external_block_user2"""
     sql """create user external_block_user2;"""
     sql """SET PROPERTY FOR 'external_block_user2' 'sql_block_rules' = 
'external_hive_partition2';"""
     sql """grant all on *.*.* to external_block_user2;"""
+    //cloud-mode
+    if (isCloudMode()) {
+        def clusters = sql " SHOW CLUSTERS; "
+        assertTrue(!clusters.isEmpty())
+        def validCluster = clusters[0][0]
+        sql """GRANT USAGE_PRIV ON CLUSTER `${validCluster}` TO 
external_block_user2;""";
+    }
 
     sql """drop user if exists external_block_user3"""
     sql """create user external_block_user3;"""
     sql """SET PROPERTY FOR 'external_block_user3' 'sql_block_rules' = 
'external_hive_partition3';"""
     sql """grant all on *.*.* to external_block_user3;"""
+    //cloud-mode
+    if (isCloudMode()) {
+        def clusters = sql " SHOW CLUSTERS; "
+        assertTrue(!clusters.isEmpty())
+        def validCluster = clusters[0][0]
+        sql """GRANT USAGE_PRIV ON CLUSTER `${validCluster}` TO 
external_block_user3;""";
+    }
 
     // login as external_block_user1 
     def result1 = connect('external_block_user1', '', context.config.jdbcUrl) {
diff --git 
a/regression-test/suites/external_table_p0/tvf/test_catalogs_tvf.groovy 
b/regression-test/suites/external_table_p0/tvf/test_catalogs_tvf.groovy
index 2d68c207817..4b40e4d9fce 100644
--- a/regression-test/suites/external_table_p0/tvf/test_catalogs_tvf.groovy
+++ b/regression-test/suites/external_table_p0/tvf/test_catalogs_tvf.groovy
@@ -105,7 +105,13 @@ 
suite("test_catalogs_tvf","p0,external,tvf,external_docker") {
 
     sql """CREATE USER '${user}' IDENTIFIED BY '${pwd}'"""
     sql """GRANT SELECT_PRIV on `internal`.``.`` to '${user}'"""
-
+    //cloud-mode
+    if (isCloudMode()) {
+        def clusters = sql " SHOW CLUSTERS; "
+        assertTrue(!clusters.isEmpty())
+        def validCluster = clusters[0][0]
+        sql """GRANT USAGE_PRIV ON CLUSTER `${validCluster}` TO ${user}""";
+    }
 
 
     connect(user, "${pwd}", context.config.jdbcUrl) {


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to