You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by er...@apache.org on 2022/01/26 02:14:31 UTC
[iotdb] branch master updated: [IOTDB-2490] Fix metric bugs with wrong stats (#4975)
This is an automated email from the ASF dual-hosted git repository.
ericpai pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/master by this push:
new dfc571c [IOTDB-2490] Fix metric bugs with wrong stats (#4975)
dfc571c is described below
commit dfc571c9666f6783fd58ed12d80490d589ac5167
Author: xinzhongtianxia <45...@qq.com>
AuthorDate: Wed Jan 26 10:13:56 2022 +0800
[IOTDB-2490] Fix metric bugs with wrong stats (#4975)
---
.../db/engine/storagegroup/TsFileProcessorInfo.java | 20 ++++++++++++++++----
.../storagegroup/VirtualStorageGroupProcessor.java | 6 +++---
.../main/java/org/apache/iotdb/db/service/IoTDB.java | 2 +-
3 files changed, 20 insertions(+), 8 deletions(-)
diff --git a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileProcessorInfo.java b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileProcessorInfo.java
index 22b7e17..c98077a 100644
--- a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileProcessorInfo.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileProcessorInfo.java
@@ -44,7 +44,11 @@ public class TsFileProcessorInfo {
if (MetricConfigDescriptor.getInstance().getMetricConfig().getEnableMetric()) {
MetricsService.getInstance()
.getMetricManager()
- .getOrCreateGauge(Metric.MEM.toString(), Tag.NAME.toString(), "chunkMetaData")
+ .getOrCreateGauge(
+ Metric.MEM.toString(),
+ Tag.NAME.toString(),
+ "chunkMetaData_"
+ + storageGroupInfo.getVirtualStorageGroupProcessor().getLogicalStorageGroupName())
.incr(cost);
}
}
@@ -56,7 +60,11 @@ public class TsFileProcessorInfo {
if (MetricConfigDescriptor.getInstance().getMetricConfig().getEnableMetric()) {
MetricsService.getInstance()
.getMetricManager()
- .getOrCreateGauge(Metric.MEM.toString(), Tag.NAME.toString(), "chunkMetaData")
+ .getOrCreateGauge(
+ Metric.MEM.toString(),
+ Tag.NAME.toString(),
+ "chunkMetaData_"
+ + storageGroupInfo.getVirtualStorageGroupProcessor().getLogicalStorageGroupName())
.decr(cost);
}
}
@@ -64,12 +72,16 @@ public class TsFileProcessorInfo {
/** called when closing TSP */
public void clear() {
storageGroupInfo.releaseStorageGroupMemCost(memCost);
- memCost = 0L;
if (MetricConfigDescriptor.getInstance().getMetricConfig().getEnableMetric()) {
MetricsService.getInstance()
.getMetricManager()
- .getOrCreateGauge(Metric.MEM.toString(), Tag.NAME.toString(), "chunkMetaData")
+ .getOrCreateGauge(
+ Metric.MEM.toString(),
+ Tag.NAME.toString(),
+ "chunkMetaData_"
+ + storageGroupInfo.getVirtualStorageGroupProcessor().getLogicalStorageGroupName())
.decr(memCost);
}
+ memCost = 0L;
}
}
diff --git a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/VirtualStorageGroupProcessor.java b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/VirtualStorageGroupProcessor.java
index a021a2f..743e911 100755
--- a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/VirtualStorageGroupProcessor.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/VirtualStorageGroupProcessor.java
@@ -417,10 +417,10 @@ public class VirtualStorageGroupProcessor {
.getMetricManager()
.getOrCreateAutoGauge(
Metric.MEM.toString(),
- storageGroupInfo.getMemCost(),
- Long::longValue,
+ storageGroupInfo,
+ StorageGroupInfo::getMemCost,
Tag.NAME.toString(),
- "storageGroup");
+ "storageGroup_" + getLogicalStorageGroupName());
}
// start trim task at last
diff --git a/server/src/main/java/org/apache/iotdb/db/service/IoTDB.java b/server/src/main/java/org/apache/iotdb/db/service/IoTDB.java
index 358b5ee..7720f6f 100644
--- a/server/src/main/java/org/apache/iotdb/db/service/IoTDB.java
+++ b/server/src/main/java/org/apache/iotdb/db/service/IoTDB.java
@@ -120,6 +120,7 @@ public class IoTDB implements IoTDBMBean {
Runtime.getRuntime().addShutdownHook(new IoTDBShutdownHook());
setUncaughtExceptionHandler();
+ registerManager.register(MetricsService.getInstance());
logger.info("recover the schema...");
initMManager();
initServiceProvider();
@@ -133,7 +134,6 @@ public class IoTDB implements IoTDBMBean {
registerManager.register(TemporaryQueryDataFileService.getInstance());
registerManager.register(UDFClassLoaderManager.getInstance());
registerManager.register(UDFRegistrationService.getInstance());
- registerManager.register(MetricsService.getInstance());
// in cluster mode, RPC service is not enabled.
if (IoTDBDescriptor.getInstance().getConfig().isEnableRpcService()) {