You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by lu...@apache.org on 2023/04/18 13:04:38 UTC
[doris] branch master updated: [refactor](fe): Remove resource group which is useless (#18249)
This is an automated email from the ASF dual-hosted git repository.
luozenglin 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 d24a8a524e [refactor](fe): Remove resource group which is useless (#18249)
d24a8a524e is described below
commit d24a8a524eb803167e928e1a8f2bcca63163acce
Author: 赵立伟 <zh...@xiaomi.com>
AuthorDate: Tue Apr 18 21:04:30 2023 +0800
[refactor](fe): Remove resource group which is useless (#18249)
---
.../org/apache/doris/catalog/ResourceGroup.java | 145 ---------------------
.../doris/consistency/CheckConsistencyJob.java | 10 +-
.../main/java/org/apache/doris/load/LoadJob.java | 29 +----
.../java/org/apache/doris/master/MasterImpl.java | 5 -
.../java/org/apache/doris/mysql/MysqlProto.java | 4 -
.../org/apache/doris/mysql/privilege/Auth.java | 12 +-
.../apache/doris/mysql/privilege/UserProperty.java | 68 +---------
.../doris/mysql/privilege/UserPropertyMgr.java | 62 +--------
.../apache/doris/mysql/privilege/UserResource.java | 138 +++-----------------
.../java/org/apache/doris/persist/EditLog.java | 1 -
.../java/org/apache/doris/qe/ConnectContext.java | 5 -
.../java/org/apache/doris/qe/ConnectProcessor.java | 3 -
.../main/java/org/apache/doris/qe/Coordinator.java | 7 -
.../java/org/apache/doris/qe/MasterOpExecutor.java | 1 -
.../apache/doris/service/FrontendServiceImpl.java | 3 +-
.../apache/doris/catalog/ResourceGroupTest.java | 57 --------
.../org/apache/doris/catalog/UserPropertyTest.java | 16 +--
.../org/apache/doris/catalog/UserResourceTest.java | 79 -----------
.../load/routineload/RoutineLoadSchedulerTest.java | 1 -
.../apache/doris/planner/ResourceTagQueryTest.java | 2 +-
gensrc/thrift/FrontendService.thrift | 2 +
gensrc/thrift/MasterService.thrift | 6 +-
gensrc/thrift/PaloInternalService.thrift | 2 +
23 files changed, 42 insertions(+), 616 deletions(-)
diff --git a/fe/fe-core/src/main/java/org/apache/doris/catalog/ResourceGroup.java b/fe/fe-core/src/main/java/org/apache/doris/catalog/ResourceGroup.java
deleted file mode 100644
index 7c934570b8..0000000000
--- a/fe/fe-core/src/main/java/org/apache/doris/catalog/ResourceGroup.java
+++ /dev/null
@@ -1,145 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements. See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership. The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License. You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied. See the License for the
-// specific language governing permissions and limitations
-// under the License.
-
-package org.apache.doris.catalog;
-
-import org.apache.doris.common.DdlException;
-import org.apache.doris.common.io.Writable;
-import org.apache.doris.thrift.TResourceGroup;
-import org.apache.doris.thrift.TResourceType;
-
-import com.google.common.collect.Maps;
-
-import java.io.DataInput;
-import java.io.DataOutput;
-import java.io.IOException;
-import java.util.EnumMap;
-import java.util.Map;
-
-// Resource group to contain
-public class ResourceGroup implements Writable {
- private EnumMap<ResourceType, Integer> quotaByType;
-
- // Used for readIn
- private ResourceGroup() {
- quotaByType = Maps.newEnumMap(ResourceType.class);
- }
-
- private ResourceGroup(int cpuShare) {
- quotaByType = Maps.newEnumMap(ResourceType.class);
- quotaByType.put(ResourceType.CPU_SHARE, cpuShare);
- }
-
- public ResourceGroup getCopiedResourceGroup() {
- ResourceGroup resourceGroup = new ResourceGroup();
- resourceGroup.quotaByType = Maps.newEnumMap(quotaByType);
- return resourceGroup;
- }
-
- public void updateByDesc(String desc, int value) throws DdlException {
- ResourceType type = ResourceType.fromDesc(desc);
- if (type == null) {
- throw new DdlException("Unknown resource type(" + desc + ")");
- }
- if (type == ResourceType.CPU_SHARE || type == ResourceType.IO_SHARE) {
- if (value < 100 || value > 1000) {
- throw new DdlException("Value for resource type("
- + desc + ") has to be in [100, 1000]");
- }
- }
- quotaByType.put(type, value);
- }
-
- public int getByDesc(String desc) throws DdlException {
- ResourceType type = ResourceType.fromDesc(desc);
- if (type == null) {
- throw new DdlException("Unknown resource type(" + desc + ")");
- }
- return quotaByType.get(type);
- }
-
- public Map<ResourceType, Integer> getQuotaMap() {
- return quotaByType;
- }
-
- public static Builder builder() {
- return new Builder();
- }
-
- public TResourceGroup toThrift() {
- TResourceGroup tgroup = new TResourceGroup();
- for (EnumMap.Entry<ResourceType, Integer> entry : quotaByType.entrySet()) {
- tgroup.putToResourceByType(entry.getKey().toThrift(), entry.getValue());
- }
- return tgroup;
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- int idx = 0;
- for (EnumMap.Entry<ResourceType, Integer> entry : quotaByType.entrySet()) {
- if (idx++ != 0) {
- sb.append(", ");
- }
- sb.append(entry.getKey().toString()).append(" = ").append(entry.getValue());
- }
- return sb.toString();
- }
-
- @Override
- public void write(DataOutput out) throws IOException {
- out.writeInt(quotaByType.size());
- for (Map.Entry<ResourceType, Integer> entry : quotaByType.entrySet()) {
- out.writeInt(entry.getKey().toThrift().getValue());
- out.writeInt(entry.getValue());
- }
- }
-
- public void readFields(DataInput in) throws IOException {
- int numResource = in.readInt();
- for (int i = 0; i < numResource; ++i) {
- int code = in.readInt();
- int value = in.readInt();
-
- quotaByType.put(ResourceType.fromThrift(TResourceType.findByValue(code)), value);
- }
- }
-
- public static ResourceGroup readIn(DataInput in) throws IOException {
- ResourceGroup group = new ResourceGroup();
- group.readFields(in);
- return group;
- }
-
- public static class Builder {
- private int cpuShare;
-
- public Builder() {
- cpuShare = ResourceType.CPU_SHARE.getDefaultValue();
- }
-
- public ResourceGroup build() {
- return new ResourceGroup(cpuShare);
- }
-
- public Builder cpuShare(int share) {
- this.cpuShare = share;
- return this;
- }
- }
-}
diff --git a/fe/fe-core/src/main/java/org/apache/doris/consistency/CheckConsistencyJob.java b/fe/fe-core/src/main/java/org/apache/doris/consistency/CheckConsistencyJob.java
index 3272199a9b..f1518215af 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/consistency/CheckConsistencyJob.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/consistency/CheckConsistencyJob.java
@@ -30,13 +30,11 @@ import org.apache.doris.catalog.TabletInvertedIndex;
import org.apache.doris.catalog.TabletMeta;
import org.apache.doris.common.Config;
import org.apache.doris.persist.ConsistencyCheckInfo;
-import org.apache.doris.qe.ConnectContext;
import org.apache.doris.task.AgentBatchTask;
import org.apache.doris.task.AgentTask;
import org.apache.doris.task.AgentTaskExecutor;
import org.apache.doris.task.AgentTaskQueue;
import org.apache.doris.task.CheckConsistencyTask;
-import org.apache.doris.thrift.TResourceInfo;
import org.apache.doris.thrift.TTaskType;
import com.google.common.base.Preconditions;
@@ -118,12 +116,6 @@ public class CheckConsistencyJob {
return false;
}
- // get user resource info
- TResourceInfo resourceInfo = null;
- if (ConnectContext.get() != null) {
- resourceInfo = ConnectContext.get().toResourceCtx();
- }
-
Tablet tablet = null;
AgentBatchTask batchTask = new AgentBatchTask();
@@ -179,7 +171,7 @@ public class CheckConsistencyJob {
maxDataSize = replica.getDataSize();
}
- CheckConsistencyTask task = new CheckConsistencyTask(resourceInfo, replica.getBackendId(),
+ CheckConsistencyTask task = new CheckConsistencyTask(null, replica.getBackendId(),
tabletMeta.getDbId(),
tabletMeta.getTableId(),
tabletMeta.getPartitionId(),
diff --git a/fe/fe-core/src/main/java/org/apache/doris/load/LoadJob.java b/fe/fe-core/src/main/java/org/apache/doris/load/LoadJob.java
index 97c40c4a1c..684db1b997 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/load/LoadJob.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/load/LoadJob.java
@@ -36,9 +36,7 @@ import org.apache.doris.load.FailMsg.CancelType;
import org.apache.doris.persist.ReplicaPersistInfo;
import org.apache.doris.task.PushTask;
import org.apache.doris.thrift.TPriority;
-import org.apache.doris.thrift.TResourceInfo;
-import com.google.common.base.Strings;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
@@ -120,8 +118,6 @@ public class LoadJob implements Writable {
private List<Predicate> conditions = null;
private DeleteInfo deleteInfo;
- private TResourceInfo resourceInfo;
-
private TPriority priority;
private long execMemLimit;
@@ -167,7 +163,6 @@ public class LoadJob implements Writable {
this.unfinishedTablets = new ArrayList<>();
this.pushTasks = new HashSet<PushTask>();
this.replicaPersistInfos = Maps.newHashMap();
- this.resourceInfo = null;
this.priority = TPriority.NORMAL;
this.execMemLimit = DEFAULT_EXEC_MEM_LIMIT;
this.finishedReplicas = Maps.newHashMap();
@@ -563,14 +558,6 @@ public class LoadJob implements Writable {
}
}
- public void setResourceInfo(TResourceInfo resourceInfo) {
- this.resourceInfo = resourceInfo;
- }
-
- public TResourceInfo getResourceInfo() {
- return resourceInfo;
- }
-
public boolean addFinishedReplica(Replica replica) {
finishedReplicas.put(replica.getId(), replica);
return true;
@@ -657,8 +644,6 @@ public class LoadJob implements Writable {
pushTasks.clear();
pushTasks = null;
}
-
- resourceInfo = null;
}
public void write(DataOutput out) throws IOException {
@@ -728,14 +713,7 @@ public class LoadJob implements Writable {
}
// resourceInfo
- if (resourceInfo == null || Strings.isNullOrEmpty(resourceInfo.getGroup())
- || Strings.isNullOrEmpty(resourceInfo.getUser())) {
- out.writeBoolean(false);
- } else {
- out.writeBoolean(true);
- Text.writeString(out, resourceInfo.getUser());
- Text.writeString(out, resourceInfo.getGroup());
- }
+ out.writeBoolean(false);
Text.writeString(out, priority.name());
@@ -877,9 +855,8 @@ public class LoadJob implements Writable {
}
if (in.readBoolean()) {
- String user = Text.readString(in);
- String group = Text.readString(in);
- resourceInfo = new TResourceInfo(user, group);
+ Text.readString(in);
+ Text.readString(in);
}
this.priority = TPriority.valueOf(Text.readString(in));
diff --git a/fe/fe-core/src/main/java/org/apache/doris/master/MasterImpl.java b/fe/fe-core/src/main/java/org/apache/doris/master/MasterImpl.java
index deae3b4793..4e89cd56ae 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/master/MasterImpl.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/master/MasterImpl.java
@@ -51,7 +51,6 @@ import org.apache.doris.task.StorageMediaMigrationTask;
import org.apache.doris.task.UpdateTabletMetaInfoTask;
import org.apache.doris.task.UploadTask;
import org.apache.doris.thrift.TBackend;
-import org.apache.doris.thrift.TFetchResourceResult;
import org.apache.doris.thrift.TFinishTaskRequest;
import org.apache.doris.thrift.TMasterResult;
import org.apache.doris.thrift.TPushType;
@@ -567,10 +566,6 @@ public class MasterImpl {
return reportHandler.handleReport(request);
}
- public TFetchResourceResult fetchResource() {
- return Env.getCurrentEnv().getAuth().toResourceThrift();
- }
-
private void finishAlterTask(AgentTask task) {
AlterReplicaTask alterTask = (AlterReplicaTask) task;
try {
diff --git a/fe/fe-core/src/main/java/org/apache/doris/mysql/MysqlProto.java b/fe/fe-core/src/main/java/org/apache/doris/mysql/MysqlProto.java
index e8e0c23595..089bf3db35 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/mysql/MysqlProto.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/mysql/MysqlProto.java
@@ -29,7 +29,6 @@ import org.apache.doris.common.LdapConfig;
import org.apache.doris.datasource.CatalogIf;
import org.apache.doris.ldap.LdapAuthenticate;
import org.apache.doris.mysql.privilege.Auth;
-import org.apache.doris.mysql.privilege.UserResource;
import org.apache.doris.qe.ConnectContext;
import org.apache.doris.system.SystemInfoService;
@@ -109,9 +108,6 @@ public class MysqlProto {
strList = tmpUser.split("#", 2);
if (strList.length > 1) {
tmpUser = strList[0];
- if (UserResource.isValidGroup(strList[1])) {
- context.getSessionVariable().setResourceGroup(strList[1]);
- }
}
LOG.debug("parse cluster: {}", clusterName);
diff --git a/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/Auth.java b/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/Auth.java
index e9b81e5776..c32ad9d32c 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/Auth.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/Auth.java
@@ -58,7 +58,6 @@ import org.apache.doris.persist.PrivInfo;
import org.apache.doris.qe.ConnectContext;
import org.apache.doris.resource.Tag;
import org.apache.doris.system.SystemInfoService;
-import org.apache.doris.thrift.TFetchResourceResult;
import org.apache.doris.thrift.TPrivilegeStatus;
import com.google.common.base.Joiner;
@@ -457,7 +456,7 @@ public class Auth implements Writable {
userRoleManager.addUserRole(userIdent, roleName);
}
// other user properties
- propertyMgr.addUserResource(userIdent.getQualifiedUser(), false);
+ propertyMgr.addUserResource(userIdent.getQualifiedUser());
// 5. update password policy
passwdPolicyManager.updatePolicy(userIdent, password, passwordOptions);
@@ -1246,15 +1245,6 @@ public class Auth implements Writable {
}
}
- public TFetchResourceResult toResourceThrift() {
- readLock();
- try {
- return propertyMgr.toResourceThrift();
- } finally {
- readUnlock();
- }
- }
-
public List<List<String>> getRoleInfo() {
readLock();
try {
diff --git a/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/UserProperty.java b/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/UserProperty.java
index 8b9d18e22b..10ee95e406 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/UserProperty.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/UserProperty.java
@@ -19,8 +19,6 @@ package org.apache.doris.mysql.privilege;
import org.apache.doris.analysis.SetUserPropertyVar;
import org.apache.doris.catalog.Env;
-import org.apache.doris.catalog.ResourceGroup;
-import org.apache.doris.catalog.ResourceType;
import org.apache.doris.common.AnalysisException;
import org.apache.doris.common.DdlException;
import org.apache.doris.common.FeMetaVersion;
@@ -47,7 +45,6 @@ import java.util.Comparator;
import java.util.List;
import java.util.Map;
import java.util.Set;
-import java.util.concurrent.atomic.AtomicInteger;
import java.util.regex.Pattern;
/*
@@ -81,8 +78,6 @@ public class UserProperty implements Writable {
private CommonUserProperties commonProperties = new CommonUserProperties();
- // Resource belong to this user.
- private UserResource resource = new UserResource(1000);
// load cluster
private String defaultLoadCluster = null;
private Map<String, DppConfig> clusterToDppConfig = Maps.newHashMap();
@@ -180,7 +175,6 @@ public class UserProperty implements Writable {
int queryTimeout = this.commonProperties.getQueryTimeout();
int insertTimeout = this.commonProperties.getInsertTimeout();
- UserResource newResource = resource.getCopiedUserResource();
String newDefaultLoadCluster = defaultLoadCluster;
Map<String, DppConfig> newDppConfigs = Maps.newHashMap(clusterToDppConfig);
@@ -205,42 +199,6 @@ public class UserProperty implements Writable {
if (newMaxConn <= 0 || newMaxConn > 10000) {
throw new DdlException(PROP_MAX_USER_CONNECTIONS + " is not valid, must between 1 and 10000");
}
- } else if (keyArr[0].equalsIgnoreCase(PROP_RESOURCE)) {
- // set property "resource.cpu_share" = "100"
- if (keyArr.length != 2) {
- throw new DdlException(PROP_RESOURCE + " format error");
- }
-
- int resource = 0;
- try {
- resource = Integer.parseInt(value);
- } catch (NumberFormatException e) {
- throw new DdlException(key + " is not number");
- }
-
- if (resource <= 0) {
- throw new DdlException(key + " is not valid");
- }
-
- newResource.updateResource(keyArr[1], resource);
- } else if (keyArr[0].equalsIgnoreCase(PROP_QUOTA)) {
- // set property "quota.normal" = "100"
- if (keyArr.length != 2) {
- throw new DdlException(PROP_QUOTA + " format error");
- }
-
- int quota = 0;
- try {
- quota = Integer.parseInt(value);
- } catch (NumberFormatException e) {
- throw new DdlException(key + " is not number");
- }
-
- if (quota <= 0) {
- throw new DdlException(key + " is not valid");
- }
-
- newResource.updateGroupShare(keyArr[1], quota);
} else if (keyArr[0].equalsIgnoreCase(PROP_LOAD_CLUSTER)) {
updateLoadCluster(keyArr, value, newDppConfigs);
} else if (keyArr[0].equalsIgnoreCase(PROP_DEFAULT_LOAD_CLUSTER)) {
@@ -349,7 +307,6 @@ public class UserProperty implements Writable {
this.commonProperties.setExecMemLimit(execMemLimit);
this.commonProperties.setQueryTimeout(queryTimeout);
this.commonProperties.setInsertTimeout(insertTimeout);
- resource = newResource;
if (newDppConfigs.containsKey(newDefaultLoadCluster)) {
defaultLoadCluster = newDefaultLoadCluster;
} else {
@@ -430,10 +387,6 @@ public class UserProperty implements Writable {
}
}
- public UserResource getResource() {
- return resource;
- }
-
public String getDefaultLoadCluster() {
return defaultLoadCluster;
}
@@ -484,19 +437,6 @@ public class UserProperty implements Writable {
// resource tag
result.add(Lists.newArrayList(PROP_RESOURCE_TAGS, Joiner.on(", ").join(commonProperties.getResourceTags())));
- // resource
- ResourceGroup group = resource.getResource();
- for (Map.Entry<ResourceType, Integer> entry : group.getQuotaMap().entrySet()) {
- result.add(Lists.newArrayList(PROP_RESOURCE + dot + entry.getKey().getDesc().toLowerCase(),
- entry.getValue().toString()));
- }
-
- // quota
- Map<String, AtomicInteger> groups = resource.getShareByGroup();
- for (Map.Entry<String, AtomicInteger> entry : groups.entrySet()) {
- result.add(Lists.newArrayList(PROP_QUOTA + dot + entry.getKey(), entry.getValue().toString()));
- }
-
// load cluster
if (defaultLoadCluster != null) {
result.add(Lists.newArrayList(PROP_DEFAULT_LOAD_CLUSTER, defaultLoadCluster));
@@ -555,8 +495,8 @@ public class UserProperty implements Writable {
// user name
Text.writeString(out, qualifiedUser);
- // user resource
- resource.write(out);
+ // call UserResource.write(out) to make sure that FE can rollback.
+ UserResource.write(out);
// load cluster
if (defaultLoadCluster == null) {
@@ -583,8 +523,8 @@ public class UserProperty implements Writable {
this.commonProperties.setMaxConn(maxConn);
}
- // user resource
- resource = UserResource.readIn(in);
+ // call UserResource.readIn(out) to make sure that FE can rollback.
+ UserResource.readIn(in);
// load cluster
if (in.readBoolean()) {
diff --git a/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/UserPropertyMgr.java b/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/UserPropertyMgr.java
index 7d3e506baa..ff68cd028e 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/UserPropertyMgr.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/UserPropertyMgr.java
@@ -27,8 +27,6 @@ import org.apache.doris.common.UserException;
import org.apache.doris.common.io.Writable;
import org.apache.doris.load.DppConfig;
import org.apache.doris.resource.Tag;
-import org.apache.doris.thrift.TAgentServiceVersion;
-import org.apache.doris.thrift.TFetchResourceResult;
import com.google.common.collect.Maps;
import org.apache.logging.log4j.LogManager;
@@ -51,40 +49,18 @@ public class UserPropertyMgr implements Writable {
public static final String LDAP_RESOURCE_USER = "ldap";
private static final UserProperty LDAP_PROPERTY = new UserProperty(LDAP_RESOURCE_USER);
-
- static {
- try {
- setNormalUserDefaultResource(LDAP_PROPERTY);
- } catch (DdlException e) {
- LOG.error("init DEFAULT_PROPERTY error.", e);
- throw new RuntimeException(e);
- }
- }
-
private AtomicLong resourceVersion = new AtomicLong(0);
public UserPropertyMgr() {
}
- public void addUserResource(String qualifiedUser, boolean isSystemUser) {
+ public void addUserResource(String qualifiedUser) {
UserProperty property = propertyMap.get(qualifiedUser);
if (property != null) {
return;
}
property = new UserProperty(qualifiedUser);
-
- // set user properties
- try {
- if (isSystemUser) {
- setSystemUserDefaultResource(property);
- } else {
- setNormalUserDefaultResource(property);
- }
- } catch (DdlException e) {
- // this should not happen, because the value is set by us!!
- }
-
propertyMap.put(qualifiedUser, property);
resourceVersion.incrementAndGet();
}
@@ -149,42 +125,6 @@ public class UserPropertyMgr implements Writable {
return existProperty.getCopiedResourceTags();
}
- public int getPropertyMapSize() {
- return propertyMap.size();
- }
-
- private void setSystemUserDefaultResource(UserProperty user) throws DdlException {
- UserResource userResource = user.getResource();
- userResource.updateResource("CPU_SHARE", 100);
- userResource.updateResource("IO_SHARE", 100);
- userResource.updateResource("SSD_READ_MBPS", 30);
- userResource.updateResource("SSD_WRITE_MBPS", 30);
- userResource.updateResource("HDD_READ_MBPS", 30);
- userResource.updateResource("HDD_WRITE_MBPS", 30);
- }
-
- private static void setNormalUserDefaultResource(UserProperty user) throws DdlException {
- UserResource userResource = user.getResource();
- userResource.updateResource("CPU_SHARE", 1000);
- userResource.updateResource("IO_SHARE", 1000);
- userResource.updateResource("SSD_READ_IOPS", 1000);
- userResource.updateResource("HDD_READ_IOPS", 80);
- userResource.updateResource("SSD_READ_MBPS", 30);
- userResource.updateResource("HDD_READ_MBPS", 30);
- }
-
- public TFetchResourceResult toResourceThrift() {
- TFetchResourceResult tResult = new TFetchResourceResult();
- tResult.setProtocolVersion(TAgentServiceVersion.V1);
- tResult.setResourceVersion(resourceVersion.get());
-
- for (Map.Entry<String, UserProperty> entry : propertyMap.entrySet()) {
- tResult.putToResourceByUser(entry.getKey(), entry.getValue().getResource().toThrift());
- }
-
- return tResult;
- }
-
public Pair<String, DppConfig> getLoadClusterInfo(String qualifiedUser, String cluster) throws DdlException {
Pair<String, DppConfig> loadClusterInfo = null;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/UserResource.java b/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/UserResource.java
index 1ce8c4dc49..362fd9cdb5 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/UserResource.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/UserResource.java
@@ -17,137 +17,33 @@
package org.apache.doris.mysql.privilege;
-import org.apache.doris.catalog.ResourceGroup;
-import org.apache.doris.common.DdlException;
import org.apache.doris.common.io.Text;
-import org.apache.doris.common.io.Writable;
-import org.apache.doris.thrift.TUserResource;
-
-import com.google.common.collect.ImmutableSortedMap;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
-import java.util.Map;
-import java.util.concurrent.atomic.AtomicInteger;
-
-// Resource belong to one user
-public class UserResource implements Writable {
- public static final String LOW = "low";
- public static final String NORMAL = "normal";
- public static final String HIGH = "high";
- // TODO(zhaochun): move this to config
- private static int defaultLowShare = 100;
- private static int defaultNormalShare = 400;
- private static int defaultHighShare = 800;
-
- // This resource group is used to extend
- private ResourceGroup resource;
- // Use atomic integer for modify in place.
- private ImmutableSortedMap<String, AtomicInteger> shareByGroup;
-
- // Used to readIn
- private UserResource() {
- }
-
- public UserResource(int cpuShare) {
- resource = ResourceGroup.builder().cpuShare(cpuShare).build();
-
- ImmutableSortedMap.Builder<String, AtomicInteger> builder =
- ImmutableSortedMap.orderedBy(String.CASE_INSENSITIVE_ORDER);
-
- // Low, Normal and High.
- builder.put(LOW, new AtomicInteger(defaultLowShare));
- builder.put(NORMAL, new AtomicInteger(defaultNormalShare));
- builder.put(HIGH, new AtomicInteger(defaultHighShare));
-
- shareByGroup = builder.build();
- }
-
- public UserResource getCopiedUserResource() {
- UserResource userResource = new UserResource();
- userResource.resource = resource.getCopiedResourceGroup();
- userResource.shareByGroup = ImmutableSortedMap.copyOf(shareByGroup);
- return userResource;
- }
-
- public static boolean isValidGroup(String group) {
- if (group.equalsIgnoreCase(LOW) || group.equalsIgnoreCase(NORMAL) || group.equalsIgnoreCase(HIGH)) {
- return true;
- }
- return false;
- }
-
- public void updateResource(String desc, int quota) throws DdlException {
- resource.updateByDesc(desc, quota);
- }
- public void updateGroupShare(String groupName, int newShare) throws DdlException {
- AtomicInteger share = shareByGroup.get(groupName);
- if (share == null) {
- throw new DdlException("Unknown resource(" + groupName + ")");
+// This class is used for keeping backward compatible
+@Deprecated
+public class UserResource {
+ public static void write(DataOutput out) throws IOException {
+ // resouce count
+ out.writeInt(0);
+ // group count
+ out.writeInt(0);
+ }
+
+ public static void readIn(DataInput in) throws IOException {
+ int numResource = in.readInt();
+ for (int i = 0; i < numResource; ++i) {
+ in.readInt();
+ in.readInt();
}
- share.set(newShare);
- }
-
- public ResourceGroup getResource() {
- return resource;
- }
-
- public Map<String, AtomicInteger> getShareByGroup() {
- return shareByGroup;
- }
- public TUserResource toThrift() {
- TUserResource tResource = new TUserResource();
- tResource.setResource(resource.toThrift());
- for (Map.Entry<String, AtomicInteger> entry : shareByGroup.entrySet()) {
- tResource.putToShareByGroup(entry.getKey(), entry.getValue().get());
- }
- return tResource;
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append("TotalQuota(").append(resource.toString()).append(")\n");
- int idx = 0;
- for (Map.Entry<String, AtomicInteger> entry : shareByGroup.entrySet()) {
- if (idx++ != 0) {
- sb.append(", ");
- }
- sb.append(entry.getKey()).append("(").append(entry.getValue()).append(")");
- }
- return sb.toString();
- }
-
- @Override
- public void write(DataOutput out) throws IOException {
- resource.write(out);
- out.writeInt(shareByGroup.size());
- for (Map.Entry<String, AtomicInteger> entry : shareByGroup.entrySet()) {
- Text.writeString(out, entry.getKey());
- out.writeInt(entry.getValue().get());
- }
- }
-
- public void readFields(DataInput in) throws IOException {
- resource = ResourceGroup.readIn(in);
- ImmutableSortedMap.Builder<String, AtomicInteger> builder =
- ImmutableSortedMap.orderedBy(String.CASE_INSENSITIVE_ORDER);
int numGroup = in.readInt();
for (int i = 0; i < numGroup; ++i) {
- String name = Text.readString(in);
- AtomicInteger value = new AtomicInteger(in.readInt());
-
- builder.put(name, value);
+ Text.readString(in);
+ in.readInt();
}
- shareByGroup = builder.build();
- }
-
- public static UserResource readIn(DataInput in) throws IOException {
- UserResource userResource = new UserResource();
- userResource.readFields(in);
- return userResource;
}
}
diff --git a/fe/fe-core/src/main/java/org/apache/doris/persist/EditLog.java b/fe/fe-core/src/main/java/org/apache/doris/persist/EditLog.java
index fc837efd70..692937a486 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/persist/EditLog.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/persist/EditLog.java
@@ -1079,7 +1079,6 @@ public class EditLog {
}
long start = System.currentTimeMillis();
-
try {
journal.write(op, writable);
} catch (Throwable t) {
diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectContext.java b/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectContext.java
index 66b4a496e4..f25bb5e4f8 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectContext.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectContext.java
@@ -36,7 +36,6 @@ import org.apache.doris.nereids.StatementContext;
import org.apache.doris.nereids.stats.StatsErrorEstimator;
import org.apache.doris.plugin.AuditEvent.AuditEventBuilder;
import org.apache.doris.resource.Tag;
-import org.apache.doris.thrift.TResourceInfo;
import org.apache.doris.thrift.TUniqueId;
import org.apache.doris.transaction.TransactionEntry;
import org.apache.doris.transaction.TransactionStatus;
@@ -325,10 +324,6 @@ public class ConnectContext {
this.txnEntry = txnEntry;
}
- public TResourceInfo toResourceCtx() {
- return new TResourceInfo(qualifiedUser, sessionVariable.getResourceGroup());
- }
-
public void setEnv(Env env) {
this.env = env;
defaultCatalog = env.getInternalCatalog().getName();
diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectProcessor.java b/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectProcessor.java
index 12b4b289da..018176bbb1 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectProcessor.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectProcessor.java
@@ -667,9 +667,6 @@ public class ConnectProcessor {
if (request.isSetCluster()) {
ctx.setCluster(request.cluster);
}
- if (request.isSetResourceInfo()) {
- ctx.getSessionVariable().setResourceGroup(request.getResourceInfo().getGroup());
- }
if (request.isSetUserIp()) {
ctx.setRemoteIP(request.getUserIp());
}
diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/Coordinator.java b/fe/fe-core/src/main/java/org/apache/doris/qe/Coordinator.java
index 597978eef4..0743a13304 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/qe/Coordinator.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/qe/Coordinator.java
@@ -93,7 +93,6 @@ import org.apache.doris.thrift.TQueryGlobals;
import org.apache.doris.thrift.TQueryOptions;
import org.apache.doris.thrift.TQueryType;
import org.apache.doris.thrift.TReportExecStatusParams;
-import org.apache.doris.thrift.TResourceInfo;
import org.apache.doris.thrift.TResourceLimit;
import org.apache.doris.thrift.TRuntimeFilterParams;
import org.apache.doris.thrift.TRuntimeFilterTargetParams;
@@ -237,7 +236,6 @@ public class Coordinator {
// Input parameter
private long jobId = -1; // job which this task belongs to
private TUniqueId queryId;
- private final TResourceInfo tResourceInfo;
private final boolean needReport;
// parallel execute
@@ -343,8 +341,6 @@ public class Coordinator {
} else {
this.queryGlobals.setTimeZone(context.getSessionVariable().getTimeZone());
}
- this.tResourceInfo = new TResourceInfo(context.getQualifiedUser(),
- context.getSessionVariable().getResourceGroup());
this.needReport = context.getSessionVariable().enableProfile();
this.nextInstanceId = new TUniqueId();
nextInstanceId.setHi(queryId.hi);
@@ -369,7 +365,6 @@ public class Coordinator {
this.queryGlobals.setTimeZone(timezone);
this.queryGlobals.setLoadZeroTolerance(loadZeroTolerance);
this.queryOptions.setBeExecVersion(Config.be_exec_version);
- this.tResourceInfo = new TResourceInfo("", "");
this.needReport = true;
this.nextInstanceId = new TUniqueId();
nextInstanceId.setHi(queryId.hi);
@@ -3085,7 +3080,6 @@ public class Coordinator {
params.setFragment(fragment.toThrift());
params.setDescTbl(descTable);
params.setParams(new TPlanFragmentExecParams());
- params.setResourceInfo(tResourceInfo);
params.setBuildHashTableForBroadcastJoin(instanceExecParam.buildHashTableForBroadcastJoin);
params.params.setQueryId(queryId);
params.params.setFragmentInstanceId(instanceExecParam.instanceId);
@@ -3149,7 +3143,6 @@ public class Coordinator {
// Set global param
params.setProtocolVersion(PaloInternalServiceVersion.V1);
params.setDescTbl(descTable);
- params.setResourceInfo(tResourceInfo);
params.setQueryId(queryId);
params.setPerExchNumSenders(perExchNumSenders);
params.setDestinations(destinations);
diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/MasterOpExecutor.java b/fe/fe-core/src/main/java/org/apache/doris/qe/MasterOpExecutor.java
index 5167612dd1..5e2ab92875 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/qe/MasterOpExecutor.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/qe/MasterOpExecutor.java
@@ -105,7 +105,6 @@ public class MasterOpExecutor {
params.setStmtIdx(originStmt.idx);
params.setUser(ctx.getQualifiedUser());
params.setDb(ctx.getDatabase());
- params.setResourceInfo(ctx.toResourceCtx());
params.setUserIp(ctx.getRemoteIP());
params.setStmtId(ctx.getStmtId());
params.setCurrentUserIdent(ctx.getCurrentUserIdentity().toThrift());
diff --git a/fe/fe-core/src/main/java/org/apache/doris/service/FrontendServiceImpl.java b/fe/fe-core/src/main/java/org/apache/doris/service/FrontendServiceImpl.java
index 276a48ea4c..e4c3c465d7 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/service/FrontendServiceImpl.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/service/FrontendServiceImpl.java
@@ -843,9 +843,10 @@ public class FrontendServiceImpl implements FrontendService.Iface {
return masterImpl.report(request);
}
+ // This interface is used for keeping backward compatible
@Override
public TFetchResourceResult fetchResource() throws TException {
- return masterImpl.fetchResource();
+ throw new TException("not supported");
}
@Override
diff --git a/fe/fe-core/src/test/java/org/apache/doris/catalog/ResourceGroupTest.java b/fe/fe-core/src/test/java/org/apache/doris/catalog/ResourceGroupTest.java
deleted file mode 100644
index f5569d5eda..0000000000
--- a/fe/fe-core/src/test/java/org/apache/doris/catalog/ResourceGroupTest.java
+++ /dev/null
@@ -1,57 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements. See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership. The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License. You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied. See the License for the
-// specific language governing permissions and limitations
-// under the License.
-
-package org.apache.doris.catalog;
-
-import org.apache.doris.common.DdlException;
-import org.apache.doris.thrift.TResourceGroup;
-import org.apache.doris.thrift.TResourceType;
-
-import org.junit.Assert;
-import org.junit.Test;
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.DataInputStream;
-import java.io.DataOutputStream;
-import java.io.IOException;
-
-public class ResourceGroupTest {
- @Test
- public void testNormal() throws IOException, DdlException {
- ResourceGroup.Builder builder = ResourceGroup.builder();
- builder.cpuShare(100);
- ResourceGroup resource = builder.build();
-
- Assert.assertEquals("CPU_SHARE = 100", resource.toString());
-
- // To thrift
- TResourceGroup tResource = resource.toThrift();
- Assert.assertEquals(100, tResource.getResourceByType().get(TResourceType.TRESOURCE_CPU_SHARE).intValue());
-
- // Write edit log
- resource.updateByDesc("cpu_share", 150);
- ByteArrayOutputStream byteStream = new ByteArrayOutputStream();
- DataOutputStream outputStream = new DataOutputStream(byteStream);
- resource.write(outputStream);
- outputStream.flush();
- DataInputStream inputStream = new DataInputStream(new ByteArrayInputStream(byteStream.toByteArray()));
- ResourceGroup newResource = ResourceGroup.readIn(inputStream);
-
- Assert.assertEquals(150, newResource.getByDesc("cpu_share"));
- }
-}
diff --git a/fe/fe-core/src/test/java/org/apache/doris/catalog/UserPropertyTest.java b/fe/fe-core/src/test/java/org/apache/doris/catalog/UserPropertyTest.java
index c8c3613935..793cdf6a7d 100644
--- a/fe/fe-core/src/test/java/org/apache/doris/catalog/UserPropertyTest.java
+++ b/fe/fe-core/src/test/java/org/apache/doris/catalog/UserPropertyTest.java
@@ -83,25 +83,23 @@ public class UserPropertyTest {
fakeEnv = new FakeEnv();
FakeEnv.setMetaVersion(FeConstants.meta_version);
- UserProperty property = new UserProperty("root");
- property.getResource().updateGroupShare("low", 991);
+ String qualifiedUser = "root";
+ UserProperty property = new UserProperty(qualifiedUser);
// To image
ByteArrayOutputStream byteStream = new ByteArrayOutputStream();
DataOutputStream outputStream = new DataOutputStream(byteStream);
property.write(outputStream);
outputStream.flush();
+
DataInputStream inputStream = new DataInputStream(new ByteArrayInputStream(byteStream.toByteArray()));
UserProperty newProperty = UserProperty.read(inputStream);
-
- Assert.assertEquals(991, newProperty.getResource().getShareByGroup().get("low").intValue());
+ Assert.assertEquals(qualifiedUser, newProperty.getQualifiedUser());
}
@Test
public void testUpdate() throws UserException {
List<Pair<String, String>> properties = Lists.newArrayList();
properties.add(Pair.of("MAX_USER_CONNECTIONS", "100"));
- properties.add(Pair.of("resource.cpu_share", "101"));
- properties.add(Pair.of("quota.normal", "102"));
properties.add(Pair.of("load_cluster.dpp-cluster.hadoop_palo_path", "/user/palo2"));
properties.add(Pair.of("default_load_cluster", "dpp-cluster"));
properties.add(Pair.of("max_qUERY_instances", "3000"));
@@ -112,8 +110,6 @@ public class UserPropertyTest {
UserProperty userProperty = new UserProperty();
userProperty.update(properties);
Assert.assertEquals(100, userProperty.getMaxConn());
- Assert.assertEquals(101, userProperty.getResource().getResource().getByDesc("cpu_share"));
- Assert.assertEquals(102, userProperty.getResource().getShareByGroup().get("normal").intValue());
Assert.assertEquals("/user/palo2", userProperty.getLoadClusterInfo("dpp-cluster").second.getPaloPath());
Assert.assertEquals("dpp-cluster", userProperty.getDefaultLoadCluster());
Assert.assertEquals(3000, userProperty.getMaxQueryInstances());
@@ -129,10 +125,6 @@ public class UserPropertyTest {
if (key.equalsIgnoreCase("max_user_connections")) {
Assert.assertEquals("100", value);
- } else if (key.equalsIgnoreCase("resource.cpu_share")) {
- Assert.assertEquals("101", value);
- } else if (key.equalsIgnoreCase("quota.normal")) {
- Assert.assertEquals("102", value);
} else if (key.equalsIgnoreCase("load_cluster.dpp-cluster.hadoop_palo_path")) {
Assert.assertEquals("/user/palo2", value);
} else if (key.equalsIgnoreCase("default_load_cluster")) {
diff --git a/fe/fe-core/src/test/java/org/apache/doris/catalog/UserResourceTest.java b/fe/fe-core/src/test/java/org/apache/doris/catalog/UserResourceTest.java
deleted file mode 100644
index 1fb23783e5..0000000000
--- a/fe/fe-core/src/test/java/org/apache/doris/catalog/UserResourceTest.java
+++ /dev/null
@@ -1,79 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements. See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership. The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License. You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied. See the License for the
-// specific language governing permissions and limitations
-// under the License.
-
-package org.apache.doris.catalog;
-
-import org.apache.doris.common.DdlException;
-import org.apache.doris.mysql.privilege.UserResource;
-import org.apache.doris.thrift.TResourceType;
-import org.apache.doris.thrift.TUserResource;
-
-import org.junit.Assert;
-import org.junit.Test;
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.DataInputStream;
-import java.io.DataOutputStream;
-import java.io.IOException;
-
-public class UserResourceTest {
- @Test
- public void testNormal() throws IOException, DdlException {
- UserResource resource = new UserResource(123);
- // To thrift
- TUserResource tUserResource = resource.toThrift();
- Assert.assertEquals(3, tUserResource.getShareByGroupSize());
- Assert.assertEquals(123,
- tUserResource.getResource().getResourceByType().get(TResourceType.TRESOURCE_CPU_SHARE).intValue());
-
- resource.updateResource("cpu_share", 321);
- resource.updateGroupShare("low", 987);
- // To image
- ByteArrayOutputStream byteStream = new ByteArrayOutputStream();
- DataOutputStream outputStream = new DataOutputStream(byteStream);
- resource.write(outputStream);
- outputStream.flush();
- DataInputStream inputStream = new DataInputStream(new ByteArrayInputStream(byteStream.toByteArray()));
- UserResource newResource = UserResource.readIn(inputStream);
- Assert.assertEquals(321, newResource.getResource().getByDesc("cpu_share"));
- Assert.assertEquals(987, newResource.getShareByGroup().get("low").intValue());
- }
-
- @Test(expected = DdlException.class)
- public void testNoGroup() throws DdlException {
- UserResource resource = new UserResource(123);
- resource.updateGroupShare("noGroup", 234);
- Assert.fail("No exception throws");
- }
-
- @Test(expected = DdlException.class)
- public void testNoResource() throws DdlException {
- UserResource resource = new UserResource(123);
- resource.updateResource("noResource", 120);
- Assert.fail("No exception throws");
- }
-
- @Test
- public void testValidGroup() throws DdlException {
- Assert.assertTrue(UserResource.isValidGroup("low"));
- Assert.assertTrue(UserResource.isValidGroup("lOw"));
- Assert.assertTrue(UserResource.isValidGroup("normal"));
- Assert.assertTrue(UserResource.isValidGroup("high"));
- Assert.assertFalse(UserResource.isValidGroup("high223"));
- }
-}
diff --git a/fe/fe-core/src/test/java/org/apache/doris/load/routineload/RoutineLoadSchedulerTest.java b/fe/fe-core/src/test/java/org/apache/doris/load/routineload/RoutineLoadSchedulerTest.java
index 99ec14e077..7e3d2a6fa7 100644
--- a/fe/fe-core/src/test/java/org/apache/doris/load/routineload/RoutineLoadSchedulerTest.java
+++ b/fe/fe-core/src/test/java/org/apache/doris/load/routineload/RoutineLoadSchedulerTest.java
@@ -132,7 +132,6 @@ public class RoutineLoadSchedulerTest {
throws DdlException, InterruptedException {
new Expectations() {
{
- connectContext.toResourceCtx();
minTimes = 0;
result = tResourceInfo;
}
diff --git a/fe/fe-core/src/test/java/org/apache/doris/planner/ResourceTagQueryTest.java b/fe/fe-core/src/test/java/org/apache/doris/planner/ResourceTagQueryTest.java
index cde2440a20..f245dc8ec5 100644
--- a/fe/fe-core/src/test/java/org/apache/doris/planner/ResourceTagQueryTest.java
+++ b/fe/fe-core/src/test/java/org/apache/doris/planner/ResourceTagQueryTest.java
@@ -279,7 +279,7 @@ public class ResourceTagQueryTest {
Assert.assertEquals(1000000, execMemLimit);
List<List<String>> userProps = Env.getCurrentEnv().getAuth().getUserProperties(Auth.ROOT_USER);
- Assert.assertEquals(18, userProps.size());
+ Assert.assertEquals(9, userProps.size());
}
private void checkTableReplicaAllocation(OlapTable tbl) throws InterruptedException {
diff --git a/gensrc/thrift/FrontendService.thrift b/gensrc/thrift/FrontendService.thrift
index fc4ac1f663..b1fc35734a 100644
--- a/gensrc/thrift/FrontendService.thrift
+++ b/gensrc/thrift/FrontendService.thrift
@@ -442,6 +442,7 @@ struct TMasterOpRequest {
1: required string user
2: required string db
3: required string sql
+ // Deprecated
4: optional Types.TResourceInfo resourceInfo
5: optional string cluster
6: optional i64 execMemLimit // deprecated, move into query_options
@@ -832,6 +833,7 @@ service FrontendService {
MasterService.TMasterResult finishTask(1: MasterService.TFinishTaskRequest request)
MasterService.TMasterResult report(1: MasterService.TReportRequest request)
+ // Deprecated
MasterService.TFetchResourceResult fetchResource()
TMasterOpResult forward(1: TMasterOpRequest params)
diff --git a/gensrc/thrift/MasterService.thrift b/gensrc/thrift/MasterService.thrift
index 99ca74a22b..893bb0171a 100644
--- a/gensrc/thrift/MasterService.thrift
+++ b/gensrc/thrift/MasterService.thrift
@@ -108,7 +108,7 @@ struct TMasterResult {
1: required Status.TStatus status
}
-// Now we only support CPU share.
+// Deprecated
enum TResourceType {
TRESOURCE_CPU_SHARE
TRESOURCE_IO_SHARE
@@ -122,11 +122,12 @@ enum TResourceType {
TRESOURCE_HDD_WRITE_MBPS
}
+// Deprecated
struct TResourceGroup {
1: required map<TResourceType, i32> resourceByType
}
-// Resource per user
+// Deprecated
struct TUserResource {
1: required TResourceGroup resource
@@ -134,6 +135,7 @@ struct TUserResource {
2: required map<string, i32> shareByGroup
}
+// Deprecated
struct TFetchResourceResult {
// Master service not find protocol version, so using agent service version
1: required AgentService.TAgentServiceVersion protocolVersion
diff --git a/gensrc/thrift/PaloInternalService.thrift b/gensrc/thrift/PaloInternalService.thrift
index 1d3e636425..02949dfa94 100644
--- a/gensrc/thrift/PaloInternalService.thrift
+++ b/gensrc/thrift/PaloInternalService.thrift
@@ -376,6 +376,7 @@ struct TExecPlanFragmentParams {
// required in V1
// @Common components
+ // Deprecated
10: optional Types.TResourceInfo resource_info
// load job related
@@ -590,6 +591,7 @@ struct TPipelineFragmentParams {
3: optional i32 fragment_id
4: required map<Types.TPlanNodeId, i32> per_exch_num_senders
5: optional Descriptors.TDescriptorTable desc_tbl
+ // Deprecated
6: optional Types.TResourceInfo resource_info
7: list<TPlanFragmentDestination> destinations
8: optional i32 num_senders
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org