This is an automated email from the ASF dual-hosted git repository. spricoder pushed a commit to branch feature/disk-metric in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 83e7f667734c42e3074d77999c478ab1394667f0 Author: spricoder <[email protected]> AuthorDate: Fri Sep 22 17:04:50 2023 +0800 Simplify Code --- .../iotdb/db/service/metrics/FileMetrics.java | 170 ++++++--------------- 1 file changed, 45 insertions(+), 125 deletions(-) diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/metrics/FileMetrics.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/metrics/FileMetrics.java index 4aec979979f..be0171d3f5a 100644 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/metrics/FileMetrics.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/metrics/FileMetrics.java @@ -321,119 +321,47 @@ public class FileMetrics implements IMetricSet { private void updateGlobalCountAndSize( String database, String regionId, long sizeDelta, int countDelta, boolean seq) { - if (seq) { - // update sequence file size - seqFileSizeMap.compute( - database, - (k, v) -> { - long size = 0; - if (v == null) { - v = new HashMap<>(); - } else if (v.containsKey(regionId)) { - size = v.get(regionId); - } - v.put(regionId, size + sizeDelta); - return v; - }); - // update sequence file number - seqFileNumMap.compute( - database, - (k, v) -> { - int count = 0; - if (v == null) { - v = new HashMap<>(); - } else if (v.containsKey(regionId)) { - count = v.get(regionId); - } - v.put(regionId, count + countDelta); - return v; - }); - } else { - // update unsequence file size - unseqFileSizeMap.compute( - database, - (k, v) -> { - long size = 0; - if (v == null) { - v = new HashMap<>(); - } else if (v.containsKey(regionId)) { - size = v.get(regionId); - } - v.put(regionId, size + sizeDelta); - return v; - }); - // update unsequence file number - unseqFileNumMap.compute( - database, - (k, v) -> { - int count = 0; - if (v == null) { - v = new HashMap<>(); - } else if (v.containsKey(regionId)) { - count = v.get(regionId); - } - v.put(regionId, count + countDelta); - return v; - }); - if (metricService != null) { - // update unsequence file size metric - metricService - .getOrCreateGauge( - Metric.FILE_SIZE.toString(), - MetricLevel.CORE, - Tag.NAME.toString(), - "unseq", - Tag.DATABASE.toString(), - database, - Tag.REGION.toString(), - regionId) - .set(unseqFileSizeMap.get(database).get(regionId)); - // update unsequence file number metric - metricService - .getOrCreateGauge( - Metric.FILE_COUNT.toString(), - MetricLevel.CORE, - Tag.NAME.toString(), - "unseq", - Tag.DATABASE.toString(), - database, - Tag.REGION.toString(), - regionId) - .set(unseqFileNumMap.get(database).get(regionId)); - } - } - if (metricService != null) { - if (seq) { - updateGlobalGauge( + (seq ? seqFileSizeMap : unseqFileSizeMap) + .compute( database, - regionId, - seqFileSizeMap.get(database).get(regionId), - seqFileSizeGaugeMap, - SEQUENCE, - Metric.FILE_SIZE.toString()); - updateGlobalGauge( + (k, v) -> { + long size = 0; + if (v == null) { + v = new HashMap<>(); + } else if (v.containsKey(regionId)) { + size = v.get(regionId); + } + v.put(regionId, size + sizeDelta); + return v; + }); + (seq ? seqFileNumMap : unseqFileNumMap) + .compute( database, - regionId, - seqFileNumMap.get(database).get(regionId), - seqFileNumGaugeMap, - SEQUENCE, - Metric.FILE_COUNT.toString()); - } else { - updateGlobalGauge( - database, - regionId, - unseqFileSizeMap.get(database).get(regionId), - unseqFileSizeGaugeMap, - UNSEQUENCE, - Metric.FILE_SIZE.toString()); - updateGlobalGauge( - database, - regionId, - unseqFileNumMap.get(database).get(regionId), - unseqFileNumGaugeMap, - UNSEQUENCE, - Metric.FILE_COUNT.toString()); - } + (k, v) -> { + int count = 0; + if (v == null) { + v = new HashMap<>(); + } else if (v.containsKey(regionId)) { + count = v.get(regionId); + } + v.put(regionId, count + countDelta); + return v; + }); + if (metricService != null) { + updateGlobalGauge( + database, + regionId, + (seq ? seqFileSizeMap : unseqFileSizeMap).get(database).get(regionId), + (seq ? seqFileSizeGaugeMap : unseqFileSizeGaugeMap), + (seq ? SEQUENCE : UNSEQUENCE), + Metric.FILE_SIZE.toString()); + updateGlobalGauge( + database, + regionId, + (seq ? seqFileNumMap : unseqFileNumMap).get(database).get(regionId), + (seq ? seqFileNumGaugeMap : unseqFileNumGaugeMap), + (seq ? SEQUENCE : UNSEQUENCE), + Metric.FILE_COUNT.toString()); } } @@ -469,20 +397,12 @@ public class FileMetrics implements IMetricSet { } private void updateLevelCountAndSize(long sizeDelta, int countDelta, boolean seq, int level) { - int count = 0; - long totalSize = 0; - if (seq) { - count = - seqLevelTsFileCountMap.compute(level, (k, v) -> v == null ? countDelta : v + countDelta); - totalSize = - seqLevelTsFileSizeMap.compute(level, (k, v) -> v == null ? sizeDelta : v + sizeDelta); - } else { - count = - unseqLevelTsFileCountMap.compute( - level, (k, v) -> v == null ? countDelta : v + countDelta); - totalSize = - unseqLevelTsFileSizeMap.compute(level, (k, v) -> v == null ? sizeDelta : v + sizeDelta); - } + int count = + (seq ? seqLevelTsFileCountMap : unseqLevelTsFileCountMap) + .compute(level, (k, v) -> v == null ? countDelta : v + countDelta); + long totalSize = + (seq ? seqLevelTsFileSizeMap : unseqLevelTsFileSizeMap) + .compute(level, (k, v) -> v == null ? sizeDelta : v + sizeDelta); if (metricService != null) { updateLevelGauge( level,
