This is an automated email from the ASF dual-hosted git repository. jackietien pushed a commit to branch rc/2.0.8 in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit c7f0ebcce13240178975db99217ce7a2f9b512e0 Author: Caideyipi <[email protected]> AuthorDate: Tue Feb 3 17:23:22 2026 +0800 fix (#17140) --- .../org/apache/iotdb/confignode/manager/ClusterQuotaManager.java | 5 +++-- .../org/apache/iotdb/confignode/persistence/quota/QuotaInfo.java | 4 +--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/ClusterQuotaManager.java b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/ClusterQuotaManager.java index b6bff890f36..68b7c1680a8 100644 --- a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/ClusterQuotaManager.java +++ b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/ClusterQuotaManager.java @@ -47,6 +47,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.atomic.AtomicLong; @@ -111,8 +112,8 @@ public class ClusterQuotaManager { /** If the new quota is smaller than the quota already used, the setting fails. */ private boolean checkSpaceQuota(TSetSpaceQuotaReq req) { for (String database : req.getDatabase()) { - if (quotaInfo.getSpaceQuotaLimit().containsKey(database)) { - TSpaceQuota spaceQuota = quotaInfo.getSpaceQuotaUsage().get(database); + TSpaceQuota spaceQuota = quotaInfo.getSpaceQuotaUsage().get(database); + if (Objects.nonNull(spaceQuota)) { if (req.getSpaceLimit().getDeviceNum() != IoTDBConstant.UNLIMITED_VALUE && req.getSpaceLimit().getDeviceNum() != IoTDBConstant.DEFAULT_VALUE && spaceQuota.getDeviceNum() > req.getSpaceLimit().getDeviceNum()) { diff --git a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/quota/QuotaInfo.java b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/quota/QuotaInfo.java index 59b484de0fc..93d2b272109 100644 --- a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/quota/QuotaInfo.java +++ b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/quota/QuotaInfo.java @@ -87,9 +87,7 @@ public class QuotaInfo implements SnapshotProcessor { spaceQuota.setDiskSize(IoTDBConstant.DEFAULT_VALUE); } } - if (!spaceQuotaUsage.containsKey(database)) { - spaceQuotaUsage.put(database, new TSpaceQuota()); - } + spaceQuotaUsage.computeIfAbsent(database, k -> new TSpaceQuota()); spaceQuotaLimit.put(database, spaceQuota); } return RpcUtils.getStatus(TSStatusCode.SUCCESS_STATUS);
