This is an automated email from the ASF dual-hosted git repository. haonan pushed a commit to branch aligned_mem_cal in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 1c34c9321e217928cb4144fc36c4462599c1a1c5 Author: HTHou <[email protected]> AuthorDate: Tue May 16 09:43:00 2023 +0800 update code --- .../metadata/cache/DataNodeMeasurementIdCache.java | 6 ++++- .../metrics/recorder/WritingMetricsManager.java | 26 +++++++++++++--------- .../service/thrift/impl/ClientRPCServiceImpl.java | 4 ++-- 3 files changed, 23 insertions(+), 13 deletions(-) diff --git a/server/src/main/java/org/apache/iotdb/db/metadata/cache/DataNodeMeasurementIdCache.java b/server/src/main/java/org/apache/iotdb/db/metadata/cache/DataNodeMeasurementIdCache.java index 571fbb7a82..16900e7a30 100644 --- a/server/src/main/java/org/apache/iotdb/db/metadata/cache/DataNodeMeasurementIdCache.java +++ b/server/src/main/java/org/apache/iotdb/db/metadata/cache/DataNodeMeasurementIdCache.java @@ -44,7 +44,11 @@ public class DataNodeMeasurementIdCache { } public boolean contains(String measurementId) { - return null != measurementIdCache.getIfPresent(measurementId); + return null != measurementIdCache.get(measurementId, k -> null); + } + + public void put(String measurementId) { + measurementIdCache.put(measurementId, measurementId.getBytes()); } public byte[] getBytes(String measurementId) { diff --git a/server/src/main/java/org/apache/iotdb/db/service/metrics/recorder/WritingMetricsManager.java b/server/src/main/java/org/apache/iotdb/db/service/metrics/recorder/WritingMetricsManager.java index 5decb9b3a4..10391227b6 100644 --- a/server/src/main/java/org/apache/iotdb/db/service/metrics/recorder/WritingMetricsManager.java +++ b/server/src/main/java/org/apache/iotdb/db/service/metrics/recorder/WritingMetricsManager.java @@ -26,12 +26,15 @@ import org.apache.iotdb.commons.service.metric.enums.Tag; import org.apache.iotdb.db.engine.storagegroup.DataRegion; import org.apache.iotdb.db.service.metrics.WritingMetrics; import org.apache.iotdb.db.wal.checkpoint.CheckpointType; +import org.apache.iotdb.metrics.config.MetricConfigDescriptor; import org.apache.iotdb.metrics.utils.MetricLevel; import org.apache.iotdb.metrics.utils.MetricType; import java.util.Arrays; import java.util.concurrent.TimeUnit; +import static org.apache.iotdb.metrics.utils.MetricLevel.DO_NOTHING; + public class WritingMetricsManager { public static final WritingMetricsManager INSTANCE = new WritingMetricsManager(); @@ -286,16 +289,19 @@ public class WritingMetricsManager { } public void recordSerializeOneWALInfoEntryCost(long costTimeInNanos) { - MetricService.getInstance() - .timer( - costTimeInNanos, - TimeUnit.NANOSECONDS, - Metric.WAL_COST.toString(), - MetricLevel.IMPORTANT, - Tag.STAGE.toString(), - WritingMetrics.SERIALIZE_WAL_ENTRY, - Tag.TYPE.toString(), - WritingMetrics.SERIALIZE_ONE_WAL_INFO_ENTRY); + if (!DO_NOTHING.equals( + MetricConfigDescriptor.getInstance().getMetricConfig().getMetricLevel())) { + MetricService.getInstance() + .timer( + costTimeInNanos, + TimeUnit.NANOSECONDS, + Metric.WAL_COST.toString(), + MetricLevel.IMPORTANT, + Tag.STAGE.toString(), + WritingMetrics.SERIALIZE_WAL_ENTRY, + Tag.TYPE.toString(), + WritingMetrics.SERIALIZE_ONE_WAL_INFO_ENTRY); + } } public void recordSerializeWALEntryTotalCost(long costTimeInNanos) { diff --git a/server/src/main/java/org/apache/iotdb/db/service/thrift/impl/ClientRPCServiceImpl.java b/server/src/main/java/org/apache/iotdb/db/service/thrift/impl/ClientRPCServiceImpl.java index 5e6f344def..5cc2161cf8 100644 --- a/server/src/main/java/org/apache/iotdb/db/service/thrift/impl/ClientRPCServiceImpl.java +++ b/server/src/main/java/org/apache/iotdb/db/service/thrift/impl/ClientRPCServiceImpl.java @@ -1160,8 +1160,8 @@ public class ClientRPCServiceImpl implements IClientRPCServiceWithHandler { checkedList.add(measurement); } else { String checked = PathUtils.checkAndReturnSingleMeasurement(measurement); - DataNodeMeasurementIdCache.getInstance().getBytes(checked); - checkedList.add(measurement); + DataNodeMeasurementIdCache.getInstance().put(checked); + checkedList.add(checked); } } }
