This is an automated email from the ASF dual-hosted git repository.
morrysnow pushed a commit to branch branch-3.1
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-3.1 by this push:
new f92664dee4a branch-3.1: [fix](cloud) Fix virtual compute group expand
the usage permissions of compute group #57516 (#58233)
f92664dee4a is described below
commit f92664dee4af4e6ac6da306aba0d7cdb35151657
Author: deardeng <[email protected]>
AuthorDate: Wed Nov 26 10:41:10 2025 +0800
branch-3.1: [fix](cloud) Fix virtual compute group expand the usage
permissions of compute group #57516 (#58233)
cherry pick from #57516
---
.../org/apache/doris/cloud/system/CloudSystemInfoService.java | 4 ++--
.../java/org/apache/doris/mysql/privilege/CloudAuthTest.java | 10 +++++++---
2 files changed, 9 insertions(+), 5 deletions(-)
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/cloud/system/CloudSystemInfoService.java
b/fe/fe-core/src/main/java/org/apache/doris/cloud/system/CloudSystemInfoService.java
index 7555e145af7..d2d3235f40b 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/cloud/system/CloudSystemInfoService.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/cloud/system/CloudSystemInfoService.java
@@ -180,10 +180,10 @@ public class CloudSystemInfoService extends
SystemInfoService {
if
(computeGroupName.equals(vcg.getPolicy().getActiveComputeGroup())) {
return vcg.getName();
}
- if
(vcg.getPolicy().getStandbyComputeGroup().contains(computeGroupName)) {
+ if
(vcg.getPolicy().getStandbyComputeGroup().equals(computeGroupName)) {
return vcg.getName();
}
- if (vcg.getSubComputeGroups().contains(computeGroupName)) {
+ if (vcg.getSubComputeGroups().stream().anyMatch(subCgName ->
subCgName.equals(computeGroupName))) {
return vcg.getName();
}
}
diff --git
a/fe/fe-core/src/test/java/org/apache/doris/mysql/privilege/CloudAuthTest.java
b/fe/fe-core/src/test/java/org/apache/doris/mysql/privilege/CloudAuthTest.java
index 8334aa3a835..272f06d98fe 100644
---
a/fe/fe-core/src/test/java/org/apache/doris/mysql/privilege/CloudAuthTest.java
+++
b/fe/fe-core/src/test/java/org/apache/doris/mysql/privilege/CloudAuthTest.java
@@ -479,9 +479,11 @@ public class CloudAuthTest {
Assert.fail();
}
// create vcg, sub cg(cg1, cg2), add to systemInfoService
- ComputeGroup vcg = new ComputeGroup("vcg_id", virtualComputeGroup,
ComputeGroup.ComputeTypeEnum.VIRTUAL);
- vcg.setSubComputeGroups(Lists.newArrayList(computeGroup2,
computeGroup1));
- systemInfoService.addComputeGroup(virtualComputeGroup, vcg);
+ ComputeGroup vcg = new ComputeGroup("vcg_id", "vcg",
ComputeGroup.ComputeTypeEnum.VIRTUAL);
+ vcg.setSubComputeGroups(Lists.newArrayList("cg2", "cg1"));
+ systemInfoService.addComputeGroup("vcg_id", vcg);
+ ComputeGroup cg = new ComputeGroup("vcg_id", "vcg",
ComputeGroup.ComputeTypeEnum.COMPUTE);
+ systemInfoService.addComputeGroup("cg", cg);
ComputeGroup.Policy policy = new ComputeGroup.Policy();
policy.setActiveComputeGroup(computeGroup1);
policy.setStandbyComputeGroup(computeGroup2);
@@ -495,6 +497,8 @@ public class CloudAuthTest {
PrivPredicate.USAGE, ResourceTypeEnum.CLUSTER));
Assert.assertTrue(accessManager.checkCloudPriv(userIdentity,
computeGroup2,
PrivPredicate.USAGE, ResourceTypeEnum.CLUSTER));
+ Assert.assertFalse(accessManager.checkCloudPriv(new
UserIdentity("testUser", "%"), "cg",
+ PrivPredicate.USAGE, ResourceTypeEnum.CLUSTER));
ShowResultSet showResultSet = testShowGrants(userIdentity);
// cluster field
Assert.assertEquals("vcg: Cluster_usage_priv",
showResultSet.getResultRows().get(0).get(10));
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]