This is an automated email from the ASF dual-hosted git repository.
nizhikov pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git
The following commit(s) were added to refs/heads/master by this push:
new bf516b37f83 IGNITE-18235 Remove of DataStorageMetricsMXBean (#10394)
bf516b37f83 is described below
commit bf516b37f8377fba40d09a69811643c1d2c003cf
Author: Nikolay <[email protected]>
AuthorDate: Wed Nov 30 11:00:13 2022 +0300
IGNITE-18235 Remove of DataStorageMetricsMXBean (#10394)
---
.../rest/JettyRestProcessorAbstractSelfTest.java | 39 +-
.../DiskPageCompressionIntegrationTest.java | 8 +-
.../java/org/apache/ignite/DataStorageMetrics.java | 266 ------------
.../src/main/java/org/apache/ignite/Ignite.java | 6 -
.../configuration/DataStorageConfiguration.java | 13 +-
.../org/apache/ignite/internal/IgniteKernal.java | 13 -
.../cache/persistence/DataStorageMetricsImpl.java | 396 +++++++-----------
.../persistence/DataStorageMetricsSnapshot.java | 325 ---------------
.../GridCacheDatabaseSharedManager.java | 20 -
.../cache/persistence/GridCacheOffheapManager.java | 5 -
.../IgniteCacheDatabaseSharedManager.java | 8 -
.../checkpoint/CheckpointPagesWriter.java | 1 -
.../platform/cluster/PlatformClusterGroup.java | 36 --
.../internal/processors/rest/GridRestCommand.java | 3 -
.../processors/rest/GridRestProcessor.java | 1 -
.../memory/MemoryMetricsCommandHandler.java | 12 +-
.../visor/node/VisorDataStorageConfiguration.java | 13 -
.../visor/node/VisorNodeDataCollectorJob.java | 21 +-
.../node/VisorNodeDataCollectorJobResult.java | 40 --
.../visor/node/VisorNodeDataCollectorTask.java | 6 -
.../node/VisorNodeDataCollectorTaskResult.java | 28 --
.../visor/node/VisorPersistenceMetrics.java | 463 ---------------------
.../node/VisorPersistentStoreConfiguration.java | 13 -
.../ignite/mxbean/DataStorageMetricsMXBean.java | 206 ---------
.../IgniteDataStorageMetricsSelfTest.java | 30 +-
.../ignite/testframework/junits/IgniteMock.java | 6 -
.../junits/multijvm/IgniteProcessProxy.java | 6 -
.../ApiParity/DataStorageMetricsParityTest.cs | 62 ---
.../Cache/DataStorageMetricsTest.cs | 106 -----
.../Cache/PersistenceTest.cs | 12 -
.../Cache/PersistentStoreTestObsolete.cs | 5 -
.../Configuration/DataStorageConfiguration.cs | 2 +-
.../Apache.Ignite.Core/IDataStorageMetrics.cs | 87 ----
.../platforms/dotnet/Apache.Ignite.Core/IIgnite.cs | 9 -
.../Impl/Cluster/ClusterGroupImpl.cs | 12 -
.../Apache.Ignite.Core/Impl/DataStorageMetrics.cs | 87 ----
.../dotnet/Apache.Ignite.Core/Impl/Ignite.cs | 7 -
.../PersistentStoreConfiguration.cs | 2 +-
.../protocols/http/jetty/GridJettyRestHandler.java | 1 -
.../java/org/apache/ignite/IgniteSpringBean.java | 7 -
40 files changed, 187 insertions(+), 2196 deletions(-)
diff --git
a/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/JettyRestProcessorAbstractSelfTest.java
b/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/JettyRestProcessorAbstractSelfTest.java
index 55cfc9c5546..f04687ba652 100644
---
a/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/JettyRestProcessorAbstractSelfTest.java
+++
b/modules/clients/src/test/java/org/apache/ignite/internal/processors/rest/JettyRestProcessorAbstractSelfTest.java
@@ -755,7 +755,8 @@ public abstract class JettyRestProcessorAbstractSelfTest
extends JettyRestProces
// Test with SQL.
SqlFieldsQuery qry = new SqlFieldsQuery(
- "create table employee(id integer primary key, name varchar(100),
salary integer);" +
+ "drop table if exists employee;" +
+ "create table employee(id integer primary key, name
varchar(100), salary integer);" +
"insert into employee(id, name, salary) values (1, 'Alex',
300);"
);
@@ -1612,6 +1613,8 @@ public abstract class JettyRestProcessorAbstractSelfTest
extends JettyRestProces
*/
@Test
public void testIncrement() throws Exception {
+ restartGrid();
+
String ret = content(DEFAULT_CACHE_NAME,
GridRestCommand.ATOMIC_INCREMENT,
"key", "incrKey",
"init", "2",
@@ -1639,6 +1642,8 @@ public abstract class JettyRestProcessorAbstractSelfTest
extends JettyRestProces
*/
@Test
public void testDecrement() throws Exception {
+ restartGrid();
+
String ret = content(DEFAULT_CACHE_NAME,
GridRestCommand.ATOMIC_DECREMENT,
"key", "decrKey",
"init", "15",
@@ -2420,38 +2425,6 @@ public abstract class JettyRestProcessorAbstractSelfTest
extends JettyRestProces
info(GridRestCommand.DATA_REGION_METRICS.key().toUpperCase() + "
command result: " + ret);
}
- /**
- * @throws Exception If failed.
- */
- @Test
- public void testDataStorageMetricsDisabled() throws Exception {
- String ret = content(F.asMap("cmd",
GridRestCommand.DATA_STORAGE_METRICS.key()));
-
- JsonNode res = validateJsonResponse(ret);
-
- assertTrue(res.asText().equalsIgnoreCase("Storage metrics are not
enabled"));
-
- info(GridRestCommand.DATA_STORAGE_METRICS.key().toUpperCase() + "
command result: " + ret);
- }
-
- /**
- * @throws Exception If failed.
- */
- @Test
- public void testDataStorageMetricsEnabled() throws Exception {
- if (!memoryMetricsEnabled) {
- restartGrid();
-
- memoryMetricsEnabled = true;
- }
-
- String ret = content(F.asMap("cmd",
GridRestCommand.DATA_STORAGE_METRICS.key()));
-
- assertNotNull(validateJsonResponse(ret));
-
- info(GridRestCommand.DATA_STORAGE_METRICS.key().toUpperCase() + "
command result: " + ret);
- }
-
/**
* Restart grid.
*
diff --git
a/modules/compress/src/test/java/org/apache/ignite/internal/processors/compress/DiskPageCompressionIntegrationTest.java
b/modules/compress/src/test/java/org/apache/ignite/internal/processors/compress/DiskPageCompressionIntegrationTest.java
index 27cb3cf89be..d833a337a58 100644
---
a/modules/compress/src/test/java/org/apache/ignite/internal/processors/compress/DiskPageCompressionIntegrationTest.java
+++
b/modules/compress/src/test/java/org/apache/ignite/internal/processors/compress/DiskPageCompressionIntegrationTest.java
@@ -50,6 +50,7 @@ import static
org.apache.ignite.configuration.DataStorageConfiguration.MAX_PAGE_
import static org.apache.ignite.configuration.DiskPageCompression.ZSTD;
import static
org.apache.ignite.internal.processors.cache.CacheGroupMetricsImpl.CACHE_GROUP_METRICS_PREFIX;
import static
org.apache.ignite.internal.processors.cache.persistence.CheckpointState.FINISHED;
+import static
org.apache.ignite.internal.processors.cache.persistence.DataStorageMetricsImpl.DATASTORAGE_METRIC_PREFIX;
import static
org.apache.ignite.internal.processors.metric.impl.MetricUtils.metricName;
/**
@@ -67,7 +68,6 @@ public class DiskPageCompressionIntegrationTest extends
AbstractPageCompressionI
factory = getFileIOFactory();
DataStorageConfiguration dsCfg = new DataStorageConfiguration()
- .setMetricsEnabled(true)
.setPageSize(MAX_PAGE_SIZE)
.setDefaultDataRegionConfiguration(drCfg)
.setFileIOFactory(U.isLinux() ? factory : new
PunchFileIOFactory(factory));
@@ -121,8 +121,10 @@ public class DiskPageCompressionIntegrationTest extends
AbstractPageCompressionI
Thread.sleep(100); // Wait for metrics update.
- long storeSize = ignite.dataStorageMetrics().getStorageSize();
- long sparseStoreSize =
ignite.dataStorageMetrics().getSparseStorageSize();
+ MetricRegistry pMetrics =
ignite.context().metric().registry(DATASTORAGE_METRIC_PREFIX);
+
+ long storeSize =
pMetrics.<LongMetric>findMetric("StorageSize").value();
+ long sparseStoreSize =
pMetrics.<LongMetric>findMetric("SparseStorageSize").value();
assertTrue("storeSize: " + storeSize, storeSize > 0);
diff --git
a/modules/core/src/main/java/org/apache/ignite/DataStorageMetrics.java
b/modules/core/src/main/java/org/apache/ignite/DataStorageMetrics.java
deleted file mode 100644
index 6da54316803..00000000000
--- a/modules/core/src/main/java/org/apache/ignite/DataStorageMetrics.java
+++ /dev/null
@@ -1,266 +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.ignite;
-
-import org.apache.ignite.configuration.DataStorageConfiguration;
-import org.apache.ignite.spi.metric.MetricExporterSpi;
-import org.apache.ignite.spi.metric.ReadOnlyMetricManager;
-import org.apache.ignite.spi.metric.ReadOnlyMetricRegistry;
-import org.apache.ignite.spi.metric.jmx.JmxMetricExporterSpi;
-
-/**
- * Data storage metrics are used to obtain statistics on persistent store and
whole data storage.
- *
- * @deprecated Check the {@link ReadOnlyMetricRegistry} with
"name=io.datastorage" instead.
- *
- * @see ReadOnlyMetricManager
- * @see ReadOnlyMetricRegistry
- * @see JmxMetricExporterSpi
- * @see MetricExporterSpi
- */
-@Deprecated
-public interface DataStorageMetrics {
- /**
- * @return The average number of WAL records per second written during
the last time interval.
- * <p>
- * The length of time interval is configured via {@link
DataStorageConfiguration#setMetricsRateTimeInterval(long)}
- * configuration property.
- * The number of subintervals is configured via {@link
DataStorageConfiguration#setMetricsSubIntervalCount(int)}
- * configuration property.
- */
- public float getWalLoggingRate();
-
- /**
- * @return The average number of bytes per second written during the last
time interval.
- * The length of time interval is configured via {@link
DataStorageConfiguration#setMetricsRateTimeInterval(long)}
- * configuration property.
- * The number of subintervals is configured via {@link
DataStorageConfiguration#setMetricsSubIntervalCount(int)}
- * configuration property.
- */
- public float getWalWritingRate();
-
- /**
- * @return The current number of WAL segments in the WAL archive.
- */
- public int getWalArchiveSegments();
-
- /**
- * @return The average WAL fsync duration in microseconds over the last
time interval.
- * <p>
- * The length of time interval is configured via {@link
DataStorageConfiguration#setMetricsRateTimeInterval(long)}
- * configuration property.
- * The number of subintervals is configured via {@link
DataStorageConfiguration#setMetricsSubIntervalCount(int)}
- * configuration property.
- */
- public float getWalFsyncTimeAverage();
-
- /**
- * @return WAL buffer poll spins number over the last time interval.
- * <p>
- * The length of time interval is configured via {@link
DataStorageConfiguration#setMetricsRateTimeInterval(long)}
- * configuration property.
- * The number of subintervals is configured via {@link
DataStorageConfiguration#setMetricsSubIntervalCount(int)}
- * configuration property.
- */
- public long getWalBuffPollSpinsRate();
-
- /**
- * Total size in bytes for storage wal files.
- *
- * @return Total size in bytes for storage wal files.
- */
- public long getWalTotalSize();
-
- /**
- * Time of the last WAL segment rollover.
- *
- * @return Time of the last WAL segment rollover.
- */
- public long getWalLastRollOverTime();
-
- /**
- * Total checkpoint time from last restart.
- *
- * @return Total checkpoint time from last restart.
- */
- public long getCheckpointTotalTime();
-
- /**
- * Gets the duration of the last checkpoint in milliseconds.
- *
- * @return Total checkpoint duration in milliseconds.
- */
- public long getLastCheckpointDuration();
-
- /**
- * Returns time when the last checkpoint was started.
- *
- * @return Time when the last checkpoint was started.
- * */
- public long getLastCheckpointStarted();
-
- /**
- * Gets the duration of last checkpoint lock wait in milliseconds.
- *
- * @return Checkpoint lock wait time in milliseconds.
- */
- public long getLastCheckpointLockWaitDuration();
-
- /**
- * Gets the duration of last checkpoint mark phase in milliseconds.
- *
- * @return Checkpoint mark duration in milliseconds.
- */
- public long getLastCheckpointMarkDuration();
-
- /**
- * Gets the duration of last checkpoint pages write phase in milliseconds.
- *
- * @return Checkpoint pages write phase in milliseconds.
- */
- public long getLastCheckpointPagesWriteDuration();
-
- /**
- * Gets the duration of the sync phase of the last checkpoint in
milliseconds.
- *
- * @return Checkpoint fsync time in milliseconds.
- */
- public long getLastCheckpointFsyncDuration();
-
- /**
- * Gets the total number of pages written during the last checkpoint.
- *
- * @return Total number of pages written during the last checkpoint.
- */
- public long getLastCheckpointTotalPagesNumber();
-
- /**
- * Gets the number of data pages written during the last checkpoint.
- *
- * @return Total number of data pages written during the last checkpoint.
- */
- public long getLastCheckpointDataPagesNumber();
-
- /**
- * Gets the number of pages copied to a temporary checkpoint buffer during
the last checkpoint.
- *
- * @return Total number of pages copied to a temporary checkpoint buffer
during the last checkpoint.
- */
- public long getLastCheckpointCopiedOnWritePagesNumber();
-
- /**
- * Total dirty pages for the next checkpoint.
- *
- * @return Total dirty pages for the next checkpoint.
- */
- public long getDirtyPages();
-
- /**
- * The number of read pages from last restart.
- *
- * @return The number of read pages from last restart.
- */
- public long getPagesRead();
-
- /**
- * The number of written pages from last restart.
- *
- * @return The number of written pages from last restart.
- */
- public long getPagesWritten();
-
- /**
- * The number of replaced pages from last restart.
- *
- * @return The number of replaced pages from last restart.
- */
- public long getPagesReplaced();
-
- /**
- * Total offheap size in bytes.
- *
- * @return Total offheap size in bytes.
- */
- public long getOffHeapSize();
-
- /**
- * Total used offheap size in bytes.
- *
- * @return Total used offheap size in bytes.
- */
- public long getOffheapUsedSize();
-
- /**
- * Total size of memory allocated in bytes.
- *
- * @return Total size of memory allocated in bytes.
- */
- public long getTotalAllocatedSize();
-
- /**
- * Gets used checkpoint buffer size in pages.
- *
- * @return Checkpoint buffer size in pages.
- */
- public long getUsedCheckpointBufferPages();
-
- /**
- * Gets used checkpoint buffer size in bytes.
- *
- * @return Checkpoint buffer size in bytes.
- */
- public long getUsedCheckpointBufferSize();
-
- /**
- * Checkpoint buffer size in bytes.
- *
- * @return Checkpoint buffer size in bytes.
- */
- public long getCheckpointBufferSize();
-
- /**
- * Storage space allocated in bytes.
- *
- * @return Storage space allocated in bytes.
- */
- public long getStorageSize();
-
- /**
- * Storage space allocated adjusted for possible sparsity in bytes.
- *
- * May produce unstable or even incorrect result on some file systems
(e.g. XFS).
- * Known to work correctly on Ext4 and Btrfs.
- *
- * @return Storage space allocated adjusted for possible sparsity in bytes
- * or negative value is not supported.
- */
- public long getSparseStorageSize();
-
- /**
- * Getting the total number of logged bytes into the WAL.
- *
- * @return Number of bytes.
- */
- long getWalWrittenBytes();
-
- /**
- * Getting the total size of the compressed segments in bytes.
- *
- * @return Number of bytes.
- */
- long getWalCompressedBytes();
-}
diff --git a/modules/core/src/main/java/org/apache/ignite/Ignite.java
b/modules/core/src/main/java/org/apache/ignite/Ignite.java
index 6698adc18c7..14567aaefe1 100644
--- a/modules/core/src/main/java/org/apache/ignite/Ignite.java
+++ b/modules/core/src/main/java/org/apache/ignite/Ignite.java
@@ -753,12 +753,6 @@ public interface Ignite extends AutoCloseable {
*/
@Nullable public DataRegionMetrics dataRegionMetrics(String memPlcName);
- /**
- * @return {@link DataStorageMetrics} snapshot.
- * @deprecated Check the {@link ReadOnlyMetricRegistry} with
"name=io.datastorage" instead.
- */
- public DataStorageMetrics dataStorageMetrics();
-
/**
* Gets an instance of {@link IgniteEncryption} interface.
*
diff --git
a/modules/core/src/main/java/org/apache/ignite/configuration/DataStorageConfiguration.java
b/modules/core/src/main/java/org/apache/ignite/configuration/DataStorageConfiguration.java
index ad5b306db96..b2b6d228588 100644
---
a/modules/core/src/main/java/org/apache/ignite/configuration/DataStorageConfiguration.java
+++
b/modules/core/src/main/java/org/apache/ignite/configuration/DataStorageConfiguration.java
@@ -106,7 +106,8 @@ public class DataStorageConfiguration implements
Serializable {
/** Lock default wait time, 10 sec. */
public static final int DFLT_LOCK_WAIT_TIME = 10 * 1000;
- /** */
+ /** @deprecated Will be removed in upcoming releases. */
+ @Deprecated
public static final boolean DFLT_METRICS_ENABLED = false;
/** Default amount of sub intervals to calculate rate-based metric. */
@@ -244,7 +245,11 @@ public class DataStorageConfiguration implements
Serializable {
@IgniteExperimental
private String cdcWalPath = DFLT_WAL_CDC_PATH;
- /** Metrics enabled flag. */
+ /**
+ * Metrics enabled flag.
+ * @deprecated Will be removed in upcoming releases.
+ */
+ @Deprecated
private boolean metricsEnabled = DFLT_METRICS_ENABLED;
/** Wal mode. */
@@ -801,7 +806,9 @@ public class DataStorageConfiguration implements
Serializable {
* Default value is {@link #DFLT_METRICS_ENABLED}.
*
* @return Metrics enabled flag.
+ * @deprecated Will be removed in upcoming releases.
*/
+ @Deprecated
public boolean isMetricsEnabled() {
return metricsEnabled;
}
@@ -811,7 +818,9 @@ public class DataStorageConfiguration implements
Serializable {
*
* @param metricsEnabled Metrics enabled flag.
* @return {@code this} for chaining.
+ * @deprecated Will be removed in upcoming releases.
*/
+ @Deprecated
public DataStorageConfiguration setMetricsEnabled(boolean metricsEnabled) {
this.metricsEnabled = metricsEnabled;
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
index 035e5b8f439..861a8301567 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
@@ -45,7 +45,6 @@ import java.util.concurrent.atomic.AtomicReference;
import javax.cache.CacheException;
import org.apache.ignite.DataRegionMetrics;
import org.apache.ignite.DataRegionMetricsAdapter;
-import org.apache.ignite.DataStorageMetrics;
import org.apache.ignite.Ignite;
import org.apache.ignite.IgniteAtomicLong;
import org.apache.ignite.IgniteAtomicReference;
@@ -2857,18 +2856,6 @@ public class IgniteKernal implements IgniteEx,
Externalizable {
}
}
- /** {@inheritDoc} */
- @Override public DataStorageMetrics dataStorageMetrics() {
- guard();
-
- try {
- return ctx.cache().context().database().persistentStoreMetrics();
- }
- finally {
- unguard();
- }
- }
-
/** {@inheritDoc} */
@Override public @NotNull TracingConfigurationManager
tracingConfiguration() {
guard();
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/DataStorageMetricsImpl.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/DataStorageMetricsImpl.java
index 3f6f1ab7e23..fd7ae75a970 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/DataStorageMetricsImpl.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/DataStorageMetricsImpl.java
@@ -29,13 +29,12 @@ import
org.apache.ignite.internal.processors.metric.impl.LongAdderMetric;
import org.apache.ignite.internal.util.typedef.F;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.lang.IgniteOutClosure;
-import org.apache.ignite.mxbean.DataStorageMetricsMXBean;
import org.jetbrains.annotations.Nullable;
/**
*
*/
-public class DataStorageMetricsImpl implements DataStorageMetricsMXBean {
+public class DataStorageMetricsImpl {
/** Prefix for all data storage metrics. */
public static final String DATASTORAGE_METRIC_PREFIX = "io.datastorage";
@@ -99,14 +98,11 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
/** */
private final AtomicLongMetric lastCpCowPages;
- /** */
- private volatile long rateTimeInterval;
-
- /** */
- private volatile int subInts;
-
- /** */
- private volatile boolean metricsEnabled;
+ /**
+ * @deprecated Will be removed in upcoming releases.
+ */
+ @Deprecated
+ private final boolean metricsEnabled;
/** WAL manager. */
@Nullable private volatile IgniteWriteAheadLogManager wal;
@@ -181,8 +177,6 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
int subInts
) {
this.metricsEnabled = metricsEnabled;
- this.rateTimeInterval = rateTimeInterval;
- this.subInts = subInts;
MetricRegistry mreg = mmgr.registry(DATASTORAGE_METRIC_PREFIX);
@@ -274,11 +268,11 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
"Storage space allocated adjusted for possible sparsity, in
bytes.");
mreg.register("WalArchiveSegments",
- this::getWalArchiveSegments,
+ this::walArchiveSegments,
"Current number of WAL segments in the WAL archive.");
mreg.register("WalTotalSize",
- this::getWalTotalSize,
+ this::walTotalSize,
"Total size in bytes for storage wal files.");
long[] cpBounds = new long[] {100, 500, 1000, 5000, 30000};
@@ -326,154 +320,65 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
"WalCompressedBytes",
"Total size of the compressed segments in bytes."
);
- }
-
- /** {@inheritDoc} */
- @Override public float getWalLoggingRate() {
- if (!metricsEnabled)
- return 0;
-
- return ((float)walLoggingRate.value() * 1000) / rateTimeInterval;
- }
-
- /** {@inheritDoc} */
- @Override public float getWalWritingRate() {
- if (!metricsEnabled)
- return 0;
-
- return ((float)walWritingRate.value() * 1000) / rateTimeInterval;
- }
-
- /** {@inheritDoc} */
- @Override public int getWalArchiveSegments() {
- if (!metricsEnabled)
- return 0;
-
- IgniteWriteAheadLogManager walMgr = this.wal;
-
- return walMgr == null ? 0 : walMgr.walArchiveSegments();
- }
-
- /** {@inheritDoc} */
- @Override public float getWalFsyncTimeAverage() {
- if (!metricsEnabled)
- return 0;
-
- long numRate = walFsyncTimeNum.value();
-
- if (numRate == 0)
- return 0;
-
- return (float)walFsyncTimeDuration.value() / numRate;
- }
-
- /** {@inheritDoc} */
- @Override public long getWalBuffPollSpinsRate() {
- if (!metricsEnabled)
- return 0;
- return walBuffPollSpinsNum.value();
- }
+ mreg.register(
+ "walFsyncTimeAverage",
+ this::walFsyncTimeAverage,
+ "Average WAL fsync duration in microseconds over the last time
interval."
+ );
+ mreg.register("DirtyPages", this::dirtyPages, "Total dirty pages for
the next checkpoint.");
- /** {@inheritDoc} */
- @Override public long getLastCheckpointDuration() {
- if (!metricsEnabled)
- return 0;
+ mreg.register("PagesRead", this::pagesRead, "The number of read pages
from last restart.");
- return lastCpDuration.value();
- }
+ mreg.register("PagesWritten", this::pagesWritten, "The number of
written pages from last restart.");
- /** {@inheritDoc} */
- @Override public long getLastCheckpointStarted() {
- if (!metricsEnabled)
- return 0;
+ mreg.register("PagesReplaced", this::pagesReplaced, "The number of
replaced pages from last restart.");
- return lastCpStart.value();
- }
+ mreg.register("OffHeapSize", this::offHeapSize, "Total offheap size in
bytes.");
- /** {@inheritDoc} */
- @Override public long getLastCheckpointLockWaitDuration() {
- if (!metricsEnabled)
- return 0;
+ mreg.register("OffheapUsedSize", this::offheapUsedSize, "Total used
offheap size in bytes.");
- return lastCpLockWaitDuration.value();
- }
+ mreg.register("TotalAllocatedSize", this::totalAllocatedSize, "Total
size of memory allocated in bytes.");
- /** {@inheritDoc} */
- @Override public long getLastCheckpointMarkDuration() {
- if (!metricsEnabled)
- return 0;
+ mreg.register("UsedCheckpointBufferPages",
+ this::usedCheckpointBufferPages,
+ "Used checkpoint buffer size in pages.");
- return lastCpMarkDuration.value();
- }
-
- /** {@inheritDoc} */
- @Override public long getLastCheckpointPagesWriteDuration() {
- if (!metricsEnabled)
- return 0;
+ mreg.register("UsedCheckpointBufferSize",
+ this::usedCheckpointBufferSize,
+ "Used checkpoint buffer size in bytes.");
- return lastCpPagesWriteDuration.value();
+ mreg.register("CheckpointBufferSize", this::checkpointBufferSize,
"Checkpoint buffer size in bytes.");
}
- /** {@inheritDoc} */
- @Override public long getLastCheckpointFsyncDuration() {
+ /** @return Current number of WAL segments in the WAL archive. */
+ private int walArchiveSegments() {
if (!metricsEnabled)
return 0;
- return lastCpFsyncDuration.value();
- }
-
- /** {@inheritDoc} */
- @Override public long getLastCheckpointTotalPagesNumber() {
- if (!metricsEnabled)
- return 0;
+ IgniteWriteAheadLogManager walMgr = this.wal;
- return lastCpTotalPages.value();
+ return walMgr == null ? 0 : walMgr.walArchiveSegments();
}
- /** {@inheritDoc} */
- @Override public long getLastCheckpointDataPagesNumber() {
+ /**
+ * @return The average WAL fsync duration in microseconds over the last
time interval.
+ */
+ private float walFsyncTimeAverage() {
if (!metricsEnabled)
return 0;
- return lastCpDataPages.value();
- }
+ long numRate = walFsyncTimeNum.value();
- /** {@inheritDoc} */
- @Override public long getLastCheckpointCopiedOnWritePagesNumber() {
- if (!metricsEnabled)
+ if (numRate == 0)
return 0;
- return lastCpCowPages.value();
- }
-
- /** {@inheritDoc} */
- @Override public void enableMetrics() {
- metricsEnabled = true;
- }
-
- /** {@inheritDoc} */
- @Override public void disableMetrics() {
- metricsEnabled = false;
- }
-
- /** {@inheritDoc} */
- @Override public void rateTimeInterval(long rateTimeInterval) {
- this.rateTimeInterval = rateTimeInterval;
-
- resetRates();
- }
-
- /** {@inheritDoc} */
- @Override public void subIntervals(int subInts) {
- this.subInts = subInts;
-
- resetRates();
+ return (float)walFsyncTimeDuration.value() / numRate;
}
- /** {@inheritDoc} */
- @Override public long getWalTotalSize() {
+ /** @return Total size in bytes for storage wal files. */
+ private long walTotalSize() {
if (!metricsEnabled)
return 0;
@@ -482,24 +387,12 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
return walSize != null ? walSize.apply() : 0;
}
- /** {@inheritDoc} */
- @Override public long getWalLastRollOverTime() {
- if (!metricsEnabled)
- return 0;
-
- return lastWalSegmentRollOverTime.value();
- }
-
- /** {@inheritDoc} */
- @Override public long getCheckpointTotalTime() {
- if (!metricsEnabled)
- return 0;
-
- return totalCheckpointTime.value();
- }
-
- /** {@inheritDoc} */
- @Override public long getDirtyPages() {
+ /**
+ * Total dirty pages for the next checkpoint.
+ *
+ * @return Total dirty pages for the next checkpoint.
+ */
+ private long dirtyPages() {
if (!metricsEnabled)
return 0;
@@ -516,8 +409,12 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
return dirtyPages;
}
- /** {@inheritDoc} */
- @Override public long getPagesRead() {
+ /**
+ * The number of read pages from last restart.
+ *
+ * @return The number of read pages from last restart.
+ */
+ private long pagesRead() {
if (!metricsEnabled)
return 0;
@@ -534,8 +431,12 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
return readPages;
}
- /** {@inheritDoc} */
- @Override public long getPagesWritten() {
+ /**
+ * The number of written pages from last restart.
+ *
+ * @return The number of written pages from last restart.
+ */
+ private long pagesWritten() {
if (!metricsEnabled)
return 0;
@@ -552,8 +453,12 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
return writtenPages;
}
- /** {@inheritDoc} */
- @Override public long getPagesReplaced() {
+ /**
+ * The number of replaced pages from last restart.
+ *
+ * @return The number of replaced pages from last restart.
+ */
+ private long pagesReplaced() {
if (!metricsEnabled)
return 0;
@@ -570,8 +475,12 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
return replacedPages;
}
- /** {@inheritDoc} */
- @Override public long getOffHeapSize() {
+ /**
+ * Total offheap size in bytes.
+ *
+ * @return Total offheap size in bytes.
+ */
+ private long offHeapSize() {
if (!metricsEnabled)
return 0;
@@ -588,8 +497,12 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
return offHeapSize;
}
- /** {@inheritDoc} */
- @Override public long getOffheapUsedSize() {
+ /**
+ * Total used offheap size in bytes.
+ *
+ * @return Total used offheap size in bytes.
+ */
+ private long offheapUsedSize() {
if (!metricsEnabled)
return 0;
@@ -606,8 +519,12 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
return offHeapUsedSize;
}
- /** {@inheritDoc} */
- @Override public long getTotalAllocatedSize() {
+ /**
+ * Total size of memory allocated in bytes.
+ *
+ * @return Total size of memory allocated in bytes.
+ */
+ private long totalAllocatedSize() {
if (!metricsEnabled)
return 0;
@@ -624,8 +541,12 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
return totalAllocatedSize;
}
- /** {@inheritDoc} */
- @Override public long getUsedCheckpointBufferPages() {
+ /**
+ * Gets used checkpoint buffer size in pages.
+ *
+ * @return Checkpoint buffer size in pages.
+ */
+ private long usedCheckpointBufferPages() {
if (!metricsEnabled)
return 0;
@@ -642,8 +563,12 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
return usedCheckpointBufferPages;
}
- /** {@inheritDoc} */
- @Override public long getUsedCheckpointBufferSize() {
+ /**
+ * Gets used checkpoint buffer size in bytes.
+ *
+ * @return Checkpoint buffer size in bytes.
+ */
+ private long usedCheckpointBufferSize() {
if (!metricsEnabled)
return 0;
@@ -660,8 +585,12 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
return usedCheckpointBufferSize;
}
- /** {@inheritDoc} */
- @Override public long getCheckpointBufferSize() {
+ /**
+ * Checkpoint buffer size in bytes.
+ *
+ * @return Checkpoint buffer size in bytes.
+ */
+ private long checkpointBufferSize() {
if (!metricsEnabled)
return 0;
@@ -696,7 +625,10 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
*
*/
public void onWallRollOver() {
- this.lastWalSegmentRollOverTime.value(U.currentTimeMillis());
+ if (!metricsEnabled)
+ return;
+
+ lastWalSegmentRollOverTime.value(U.currentTimeMillis());
}
/**
@@ -708,21 +640,13 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
/**
* @return Metrics enabled flag.
+ * @deprecated Will be removed in upcoming releases.
*/
+ @Deprecated
public boolean metricsEnabled() {
return metricsEnabled;
}
- /** {@inheritDoc} */
- @Override public long getStorageSize() {
- return storageSize.value();
- }
-
- /** {@inheritDoc} */
- @Override public long getSparseStorageSize() {
- return sparseStorageSize.value();
- }
-
/**
* @param beforeLockDuration Checkpoint action before taken write lock
duration.
* @param lockWaitDuration Lock wait duration.
@@ -761,39 +685,40 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
long storageSize,
long sparseStorageSize
) {
- if (metricsEnabled) {
- lastCpBeforeLockDuration.value(beforeLockDuration);
- lastCpLockWaitDuration.value(lockWaitDuration);
- lastCpListenersExecuteDuration.value(listenersExecuteDuration);
- lastCpMarkDuration.value(markDuration);
- lastCpLockHoldDuration.value(lockHoldDuration);
- lastCpPagesWriteDuration.value(pagesWriteDuration);
- lastCpFsyncDuration.value(fsyncDuration);
- lastCpWalRecordFsyncDuration.value(walRecordFsyncDuration);
- lastCpWriteEntryDuration.value(writeEntryDuration);
- lastCpSplitAndSortPagesDuration.value(splitAndSortPagesDuration);
- lastCpDuration.value(duration);
- lastCpStart.value(start);
- lastCpTotalPages.value(totalPages);
- lastCpDataPages.value(dataPages);
- lastCpCowPages.value(cowPages);
- this.storageSize.value(storageSize);
- this.sparseStorageSize.value(sparseStorageSize);
-
- totalCheckpointTime.add(duration);
-
- cpBeforeLockHistogram.value(beforeLockDuration);
- cpLockWaitHistogram.value(lockWaitDuration);
- cpListenersExecuteHistogram.value(listenersExecuteDuration);
- cpMarkHistogram.value(markDuration);
- cpLockHoldHistogram.value(lockHoldDuration);
- cpPagesWriteHistogram.value(pagesWriteDuration);
- cpFsyncHistogram.value(fsyncDuration);
- cpWalRecordFsyncHistogram.value(walRecordFsyncDuration);
- cpWriteEntryHistogram.value(writeEntryDuration);
- cpSplitAndSortPagesHistogram.value(splitAndSortPagesDuration);
- cpHistogram.value(duration);
- }
+ if (!metricsEnabled)
+ return;
+
+ lastCpBeforeLockDuration.value(beforeLockDuration);
+ lastCpLockWaitDuration.value(lockWaitDuration);
+ lastCpListenersExecuteDuration.value(listenersExecuteDuration);
+ lastCpMarkDuration.value(markDuration);
+ lastCpLockHoldDuration.value(lockHoldDuration);
+ lastCpPagesWriteDuration.value(pagesWriteDuration);
+ lastCpFsyncDuration.value(fsyncDuration);
+ lastCpWalRecordFsyncDuration.value(walRecordFsyncDuration);
+ lastCpWriteEntryDuration.value(writeEntryDuration);
+ lastCpSplitAndSortPagesDuration.value(splitAndSortPagesDuration);
+ lastCpDuration.value(duration);
+ lastCpStart.value(start);
+ lastCpTotalPages.value(totalPages);
+ lastCpDataPages.value(dataPages);
+ lastCpCowPages.value(cowPages);
+ this.storageSize.value(storageSize);
+ this.sparseStorageSize.value(sparseStorageSize);
+
+ totalCheckpointTime.add(duration);
+
+ cpBeforeLockHistogram.value(beforeLockDuration);
+ cpLockWaitHistogram.value(lockWaitDuration);
+ cpListenersExecuteHistogram.value(listenersExecuteDuration);
+ cpMarkHistogram.value(markDuration);
+ cpLockHoldHistogram.value(lockHoldDuration);
+ cpPagesWriteHistogram.value(pagesWriteDuration);
+ cpFsyncHistogram.value(fsyncDuration);
+ cpWalRecordFsyncHistogram.value(walRecordFsyncDuration);
+ cpWriteEntryHistogram.value(writeEntryDuration);
+ cpSplitAndSortPagesHistogram.value(splitAndSortPagesDuration);
+ cpHistogram.value(duration);
}
/**
@@ -802,6 +727,9 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
* @param size Record size in bytes.
*/
public void onWalRecordLogged(long size) {
+ if (!metricsEnabled)
+ return;
+
walLoggingRate.increment();
walWrittenBytes.add(size);
@@ -811,6 +739,9 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
* @param size Size written.
*/
public void onWalBytesWritten(int size) {
+ if (!metricsEnabled)
+ return;
+
walWritingRate.add(size);
}
@@ -818,6 +749,9 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
* @param nanoTime Fsync nano time.
*/
public void onFsync(long nanoTime) {
+ if (!metricsEnabled)
+ return;
+
long microseconds = nanoTime / 1_000;
walFsyncTimeDuration.add(microseconds);
@@ -828,35 +762,10 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
* @param num Number.
*/
public void onBuffPollSpin(int num) {
- walBuffPollSpinsNum.add(num);
- }
-
- /**
- *
- */
- private void resetRates() {
- walLoggingRate.reset(rateTimeInterval, subInts);
- walWritingRate.reset(rateTimeInterval, subInts);
- walBuffPollSpinsNum.reset(rateTimeInterval, subInts);
-
- walFsyncTimeDuration.reset(rateTimeInterval, subInts);
- walFsyncTimeNum.reset(rateTimeInterval, subInts);
- }
-
- /** {@inheritDoc} */
- @Override public long getWalWrittenBytes() {
if (!metricsEnabled)
- return 0;
-
- return walWrittenBytes.value();
- }
+ return;
- /** {@inheritDoc} */
- @Override public long getWalCompressedBytes() {
- if (!metricsEnabled)
- return 0;
-
- return walCompressedBytes.value();
+ walBuffPollSpinsNum.add(num);
}
/**
@@ -865,6 +774,9 @@ public class DataStorageMetricsImpl implements
DataStorageMetricsMXBean {
* @param size Size of the compressed segment in bytes.
*/
public void onWalSegmentCompressed(long size) {
+ if (!metricsEnabled)
+ return;
+
walCompressedBytes.add(size);
}
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/DataStorageMetricsSnapshot.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/DataStorageMetricsSnapshot.java
deleted file mode 100644
index 7f6595213aa..00000000000
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/DataStorageMetricsSnapshot.java
+++ /dev/null
@@ -1,325 +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.ignite.internal.processors.cache.persistence;
-
-import org.apache.ignite.DataStorageMetrics;
-import org.apache.ignite.internal.util.typedef.internal.S;
-import org.apache.ignite.spi.metric.MetricExporterSpi;
-import org.apache.ignite.spi.metric.ReadOnlyMetricManager;
-import org.apache.ignite.spi.metric.ReadOnlyMetricRegistry;
-import org.apache.ignite.spi.metric.jmx.JmxMetricExporterSpi;
-
-/**
- * @deprecated Check the {@link ReadOnlyMetricRegistry} with
"name=io.datastorage" instead.
- *
- * @see ReadOnlyMetricManager
- * @see ReadOnlyMetricRegistry
- * @see JmxMetricExporterSpi
- * @see MetricExporterSpi
- */
-@Deprecated
-public class DataStorageMetricsSnapshot implements DataStorageMetrics {
- /** */
- private float walLoggingRate;
-
- /** */
- private float walWritingRate;
-
- /** */
- private int walArchiveSegments;
-
- /** */
- private float walFsyncTimeAvg;
-
- /** */
- private long walBuffPollSpinsNum;
-
- /** */
- private long lastCpDuration;
-
- /** */
- private long lastCpStart;
-
- /** */
- private long lastCpLockWaitDuration;
-
- /** */
- private long lastCpMmarkDuration;
-
- /** */
- private long lastCpPagesWriteDuration;
-
- /** */
- private long lastCpFsyncDuration;
-
- /** */
- private long lastCpTotalPages;
-
- /** */
- private long lastCpDataPages;
-
- /** */
- private long lastCpCowPages;
-
- /** */
- private long walTotalSize;
-
- /** */
- private long walLastRollOverTime;
-
- /** */
- private long checkpointTotalTime;
-
- /** */
- private long usedCheckpointBufferSize;
-
- /** */
- private long usedCheckpointBufferPages;
-
- /** */
- private long checkpointBufferSize;
-
- /** */
- private long dirtyPages;
-
- /** */
- private long readPages;
-
- /** */
- private long writtenPages;
-
- /** */
- private long replacedPages;
-
- /** */
- private long offHeapSize;
-
- /** */
- private long offHeadUsedSize;
-
- /** */
- private long totalAllocatedSize;
-
- /** */
- private long storageSize;
-
- /** */
- private long sparseStorageSize;
-
- /** Total number of logged bytes into the WAL. */
- private long walWrittenBytes;
-
- /** Total size of the compressed segments in bytes. */
- private long walCompressedBytes;
-
- /**
- * @param metrics Metrics.
- */
- public DataStorageMetricsSnapshot(DataStorageMetrics metrics) {
- walLoggingRate = metrics.getWalLoggingRate();
- walWritingRate = metrics.getWalWritingRate();
- walArchiveSegments = metrics.getWalArchiveSegments();
- walFsyncTimeAvg = metrics.getWalFsyncTimeAverage();
- walBuffPollSpinsNum = metrics.getWalBuffPollSpinsRate();
- lastCpDuration = metrics.getLastCheckpointDuration();
- lastCpStart = metrics.getLastCheckpointStarted();
- lastCpLockWaitDuration = metrics.getLastCheckpointLockWaitDuration();
- lastCpMmarkDuration = metrics.getLastCheckpointMarkDuration();
- lastCpPagesWriteDuration =
metrics.getLastCheckpointPagesWriteDuration();
- lastCpFsyncDuration = metrics.getLastCheckpointFsyncDuration();
- lastCpTotalPages = metrics.getLastCheckpointTotalPagesNumber();
- lastCpDataPages = metrics.getLastCheckpointDataPagesNumber();
- lastCpCowPages = metrics.getLastCheckpointCopiedOnWritePagesNumber();
- walTotalSize = metrics.getWalTotalSize();
- walLastRollOverTime = metrics.getWalLastRollOverTime();
- checkpointTotalTime = metrics.getCheckpointTotalTime();
- usedCheckpointBufferSize = metrics.getUsedCheckpointBufferSize();
- usedCheckpointBufferPages = metrics.getUsedCheckpointBufferPages();
- checkpointBufferSize = metrics.getCheckpointBufferSize();
- dirtyPages = metrics.getDirtyPages();
- readPages = metrics.getPagesRead();
- writtenPages = metrics.getPagesWritten();
- replacedPages = metrics.getPagesReplaced();
- offHeapSize = metrics.getOffHeapSize();
- offHeadUsedSize = metrics.getOffheapUsedSize();
- totalAllocatedSize = metrics.getTotalAllocatedSize();
- storageSize = metrics.getStorageSize();
- sparseStorageSize = metrics.getSparseStorageSize();
- walWrittenBytes = metrics.getWalWrittenBytes();
- walCompressedBytes = metrics.getWalCompressedBytes();
- }
-
- /** {@inheritDoc} */
- @Override public float getWalLoggingRate() {
- return walLoggingRate;
- }
-
- /** {@inheritDoc} */
- @Override public float getWalWritingRate() {
- return walWritingRate;
- }
-
- /** {@inheritDoc} */
- @Override public int getWalArchiveSegments() {
- return walArchiveSegments;
- }
-
- /** {@inheritDoc} */
- @Override public float getWalFsyncTimeAverage() {
- return walFsyncTimeAvg;
- }
-
- /** {@inheritDoc} */
- @Override public long getWalBuffPollSpinsRate() {
- return walBuffPollSpinsNum;
- }
-
- /** {@inheritDoc} */
- @Override public long getLastCheckpointDuration() {
- return lastCpDuration;
- }
-
- /** {@inheritDoc} */
- @Override public long getLastCheckpointStarted() {
- return lastCpStart;
- }
-
- /** {@inheritDoc} */
- @Override public long getLastCheckpointLockWaitDuration() {
- return lastCpLockWaitDuration;
- }
-
- /** {@inheritDoc} */
- @Override public long getLastCheckpointMarkDuration() {
- return lastCpMmarkDuration;
- }
-
- /** {@inheritDoc} */
- @Override public long getLastCheckpointPagesWriteDuration() {
- return lastCpPagesWriteDuration;
- }
-
- /** {@inheritDoc} */
- @Override public long getLastCheckpointFsyncDuration() {
- return lastCpFsyncDuration;
- }
-
- /** {@inheritDoc} */
- @Override public long getLastCheckpointTotalPagesNumber() {
- return lastCpTotalPages;
- }
-
- /** {@inheritDoc} */
- @Override public long getLastCheckpointDataPagesNumber() {
- return lastCpDataPages;
- }
-
- /** {@inheritDoc} */
- @Override public long getLastCheckpointCopiedOnWritePagesNumber() {
- return lastCpCowPages;
- }
-
- /** {@inheritDoc} */
- @Override public long getWalTotalSize() {
- return walTotalSize;
- }
-
- /** {@inheritDoc} */
- @Override public long getWalLastRollOverTime() {
- return walLastRollOverTime;
- }
-
- /** {@inheritDoc} */
- @Override public long getCheckpointTotalTime() {
- return checkpointTotalTime;
- }
-
- /** {@inheritDoc} */
- @Override public long getDirtyPages() {
- return dirtyPages;
- }
-
- /** {@inheritDoc} */
- @Override public long getPagesRead() {
- return readPages;
- }
-
- /** {@inheritDoc} */
- @Override public long getPagesWritten() {
- return writtenPages;
- }
-
- /** {@inheritDoc} */
- @Override public long getPagesReplaced() {
- return replacedPages;
- }
-
- /** {@inheritDoc} */
- @Override public long getOffHeapSize() {
- return offHeapSize;
- }
-
- /** {@inheritDoc} */
- @Override public long getOffheapUsedSize() {
- return offHeadUsedSize;
- }
-
- /** {@inheritDoc} */
- @Override public long getTotalAllocatedSize() {
- return totalAllocatedSize;
- }
-
- /** {@inheritDoc} */
- @Override public long getUsedCheckpointBufferPages() {
- return usedCheckpointBufferPages;
- }
-
- /** {@inheritDoc} */
- @Override public long getUsedCheckpointBufferSize() {
- return usedCheckpointBufferSize;
- }
-
- /** {@inheritDoc} */
- @Override public long getCheckpointBufferSize() {
- return checkpointBufferSize;
- }
-
- /** {@inheritDoc} */
- @Override public long getStorageSize() {
- return storageSize;
- }
-
- /** {@inheritDoc} */
- @Override public long getSparseStorageSize() {
- return sparseStorageSize;
- }
-
- /** {@inheritDoc} */
- @Override public long getWalWrittenBytes() {
- return walWrittenBytes;
- }
-
- /** {@inheritDoc} */
- @Override public long getWalCompressedBytes() {
- return walCompressedBytes;
- }
-
- /** {@inheritDoc} */
- @Override public String toString() {
- return S.toString(DataStorageMetricsSnapshot.class, this);
- }
-}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheDatabaseSharedManager.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheDatabaseSharedManager.java
index 5730d45228a..12a5bff5e44 100755
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheDatabaseSharedManager.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheDatabaseSharedManager.java
@@ -48,7 +48,6 @@ import java.util.regex.Pattern;
import java.util.stream.Collectors;
import org.apache.ignite.DataRegionMetrics;
import org.apache.ignite.DataRegionMetricsProvider;
-import org.apache.ignite.DataStorageMetrics;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
import org.apache.ignite.IgniteInterruptedException;
@@ -164,7 +163,6 @@ import org.apache.ignite.lang.IgniteOutClosure;
import org.apache.ignite.lang.IgnitePredicate;
import org.apache.ignite.maintenance.MaintenanceRegistry;
import org.apache.ignite.maintenance.MaintenanceTask;
-import org.apache.ignite.mxbean.DataStorageMetricsMXBean;
import org.apache.ignite.spi.systemview.view.MetastorageView;
import org.apache.ignite.transactions.TransactionState;
import org.jetbrains.annotations.NotNull;
@@ -948,19 +946,6 @@ public class GridCacheDatabaseSharedManager extends
IgniteCacheDatabaseSharedMan
checkpointManager.unblockCheckpointLock();
}
- /** {@inheritDoc} */
- @Override protected void registerMetricsMBeans(IgniteConfiguration cfg) {
- super.registerMetricsMBeans(cfg);
-
- registerMetricsMBean(
- cctx.kernalContext().config(),
- MBEAN_GROUP,
- MBEAN_NAME,
- dsMetrics,
- DataStorageMetricsMXBean.class
- );
- }
-
/** {@inheritDoc} */
@Deprecated
@Override protected IgniteOutClosure<Long> freeSpaceProvider(final
DataRegionConfiguration dataRegCfg) {
@@ -3186,11 +3171,6 @@ public class GridCacheDatabaseSharedManager extends
IgniteCacheDatabaseSharedMan
}
}
- /** {@inheritDoc} */
- @Override public DataStorageMetrics persistentStoreMetrics() {
- return new DataStorageMetricsSnapshot(dsMetrics);
- }
-
/** {@inheritDoc} */
@Override public MetaStorage metaStorage() {
return metaStorage;
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheOffheapManager.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheOffheapManager.java
index 45bc6c55c8e..64bc8928ec6 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheOffheapManager.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheOffheapManager.java
@@ -175,9 +175,6 @@ public class GridCacheOffheapManager extends
IgniteCacheOffheapManagerImpl imple
/** Flag indicates that all group partitions have restored their state
from page memory / disk. */
private volatile boolean partitionStatesRestored;
- /** */
- private DataStorageMetricsImpl persStoreMetrics;
-
/** {@inheritDoc} */
@Override protected void initPendingTree(GridCacheContext cctx) throws
IgniteCheckedException {
// No-op. Per-partition PendingTree should be used.
@@ -229,8 +226,6 @@ public class GridCacheOffheapManager extends
IgniteCacheOffheapManagerImpl imple
ctx.diagnostic().pageLockTracker()
);
- persStoreMetrics = databaseSharedManager.dataStorageMetricsImpl();
-
databaseSharedManager.addCheckpointListener(this, grp.dataRegion());
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/IgniteCacheDatabaseSharedManager.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/IgniteCacheDatabaseSharedManager.java
index c78914136be..d8444fa0d85 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/IgniteCacheDatabaseSharedManager.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/IgniteCacheDatabaseSharedManager.java
@@ -33,7 +33,6 @@ import java.util.stream.IntStream;
import javax.management.InstanceNotFoundException;
import org.apache.ignite.DataRegionMetrics;
import org.apache.ignite.DataRegionMetricsProvider;
-import org.apache.ignite.DataStorageMetrics;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteLogger;
import org.apache.ignite.IgniteSystemProperties;
@@ -949,13 +948,6 @@ public class IgniteCacheDatabaseSharedManager extends
GridCacheSharedManagerAdap
.collect(Collectors.toList());
}
- /**
- * @return DataStorageMetrics if persistence is enabled or {@code null}
otherwise.
- */
- public DataStorageMetrics persistentStoreMetrics() {
- return null;
- }
-
/**
* @return Data storage metrics implementation.
*/
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/checkpoint/CheckpointPagesWriter.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/checkpoint/CheckpointPagesWriter.java
index f45f0c91293..5bb7364ece9 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/checkpoint/CheckpointPagesWriter.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/checkpoint/CheckpointPagesWriter.java
@@ -249,7 +249,6 @@ public class CheckpointPagesWriter implements Runnable {
return;
}
- int groupId = fullPageId.groupId();
long pageId = fullPageId.pageId();
assert getType(buf) != 0 : "Invalid state. Type is 0! pageId =
" + hexLong(pageId);
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/cluster/PlatformClusterGroup.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/cluster/PlatformClusterGroup.java
index 33937c4f288..923fb851707 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/cluster/PlatformClusterGroup.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/cluster/PlatformClusterGroup.java
@@ -20,7 +20,6 @@ package
org.apache.ignite.internal.processors.platform.cluster;
import java.util.Collection;
import java.util.UUID;
import org.apache.ignite.DataRegionMetrics;
-import org.apache.ignite.DataStorageMetrics;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteCluster;
@@ -143,9 +142,6 @@ public class PlatformClusterGroup extends
PlatformAbstractTarget {
/** */
private static final int OP_DATA_REGION_METRICS_BY_NAME = 36;
- /** */
- private static final int OP_DATA_STORAGE_METRICS = 37;
-
/** */
private static final int OP_ENABLE_STATISTICS = 38;
@@ -188,14 +184,6 @@ public class PlatformClusterGroup extends
PlatformAbstractTarget {
break;
}
- case OP_DATA_STORAGE_METRICS: {
- DataStorageMetrics metrics = prj.ignite().dataStorageMetrics();
-
- writeDataStorageMetrics(writer, metrics);
-
- break;
- }
-
case OP_DATA_REGION_METRICS: {
Collection<DataRegionMetrics> metrics =
prj.ignite().dataRegionMetrics();
@@ -575,28 +563,4 @@ public class PlatformClusterGroup extends
PlatformAbstractTarget {
writer.writeLong(metrics.getOffHeapSize());
writer.writeLong(metrics.getOffheapUsedSize());
}
-
- /**
- * Writes data storage metrics.
- *
- * @param writer Writer.
- * @param metrics Metrics
- */
- private void writeDataStorageMetrics(BinaryRawWriter writer,
DataStorageMetrics metrics) {
- assert writer != null;
- assert metrics != null;
-
- writer.writeFloat(metrics.getWalLoggingRate());
- writer.writeFloat(metrics.getWalWritingRate());
- writer.writeInt(metrics.getWalArchiveSegments());
- writer.writeFloat(metrics.getWalFsyncTimeAverage());
- writer.writeLong(metrics.getLastCheckpointDuration());
- writer.writeLong(metrics.getLastCheckpointLockWaitDuration());
- writer.writeLong(metrics.getLastCheckpointMarkDuration());
- writer.writeLong(metrics.getLastCheckpointPagesWriteDuration());
- writer.writeLong(metrics.getLastCheckpointFsyncDuration());
- writer.writeLong(metrics.getLastCheckpointTotalPagesNumber());
- writer.writeLong(metrics.getLastCheckpointDataPagesNumber());
- writer.writeLong(metrics.getLastCheckpointCopiedOnWritePagesNumber());
- }
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/GridRestCommand.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/GridRestCommand.java
index 16dc5f03972..368a2c3b767 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/GridRestCommand.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/GridRestCommand.java
@@ -216,9 +216,6 @@ public enum GridRestCommand {
/** Data region metrics. */
DATA_REGION_METRICS("dataregion"),
- /** Data storage metrics. */
- DATA_STORAGE_METRICS("datastorage"),
-
/** Node state before its start. */
NODE_STATE_BEFORE_START("nodestatebeforestart"),
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/GridRestProcessor.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/GridRestProcessor.java
index 24f047e31c8..b3221f7212f 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/GridRestProcessor.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/GridRestProcessor.java
@@ -935,7 +935,6 @@ public class GridRestProcessor extends GridProcessorAdapter
implements IgniteRes
break;
case DATA_REGION_METRICS:
- case DATA_STORAGE_METRICS:
case CACHE_METRICS:
case CACHE_SIZE:
case CACHE_METADATA:
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/memory/MemoryMetricsCommandHandler.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/memory/MemoryMetricsCommandHandler.java
index 83ae052ee71..949b0a32aa6 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/memory/MemoryMetricsCommandHandler.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/handlers/memory/MemoryMetricsCommandHandler.java
@@ -19,7 +19,6 @@ package
org.apache.ignite.internal.processors.rest.handlers.memory;
import java.util.Collection;
import org.apache.ignite.DataRegionMetrics;
-import org.apache.ignite.DataStorageMetrics;
import org.apache.ignite.internal.GridKernalContext;
import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.internal.processors.rest.GridRestCommand;
@@ -30,17 +29,16 @@ import
org.apache.ignite.internal.util.future.GridFinishedFuture;
import org.apache.ignite.internal.util.typedef.internal.U;
import static
org.apache.ignite.internal.processors.rest.GridRestCommand.DATA_REGION_METRICS;
-import static
org.apache.ignite.internal.processors.rest.GridRestCommand.DATA_STORAGE_METRICS;
/**
- * Command handler for {@link DataStorageMetrics} or a collection of {@link
DataRegionMetrics}
+ * Command handler for a collection of {@link DataRegionMetrics}
*/
public class MemoryMetricsCommandHandler extends GridRestCommandHandlerAdapter
{
/**
* Supported commands.
*/
private static final Collection<GridRestCommand> SUPPORTED_COMMANDS =
U.sealList(
- DATA_STORAGE_METRICS, DATA_REGION_METRICS);
+ DATA_REGION_METRICS);
/**
* @param ctx Context.
@@ -67,12 +65,6 @@ public class MemoryMetricsCommandHandler extends
GridRestCommandHandlerAdapter {
case DATA_REGION_METRICS:
return new GridFinishedFuture<>(new
GridRestResponse(ctx.grid().dataRegionMetrics()));
- case DATA_STORAGE_METRICS:
- if
(ctx.config().getDataStorageConfiguration().isMetricsEnabled())
- return new GridFinishedFuture<>(new
GridRestResponse(ctx.grid().dataStorageMetrics()));
- else
- return new GridFinishedFuture<>(new
GridRestResponse("Storage metrics are not enabled"));
-
default:
return new GridFinishedFuture<>(new
GridRestResponse(GridRestResponse.STATUS_FAILED, "Unknown command"));
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorDataStorageConfiguration.java
b/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorDataStorageConfiguration.java
index 8dad47ce544..dbb941a763a 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorDataStorageConfiguration.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorDataStorageConfiguration.java
@@ -86,9 +86,6 @@ public class VisorDataStorageConfiguration extends
VisorDataTransferObject {
/** WAL archive path. */
private String walArchivePath;
- /** Metrics enabled flag. */
- private boolean metricsEnabled;
-
/** Wal mode. */
private WALMode walMode;
@@ -168,7 +165,6 @@ public class VisorDataStorageConfiguration extends
VisorDataTransferObject {
walSegmentSize = cfg.getWalSegmentSize();
walPath = cfg.getWalPath();
walArchivePath = cfg.getWalArchivePath();
- metricsEnabled = cfg.isMetricsEnabled();
walMode = cfg.getWalMode();
walTlbSize = cfg.getWalThreadLocalBufferSize();
walBufSize = cfg.getWalBufferSize();
@@ -297,13 +293,6 @@ public class VisorDataStorageConfiguration extends
VisorDataTransferObject {
return walArchivePath;
}
- /**
- * @return Metrics enabled flag.
- */
- public boolean isMetricsEnabled() {
- return metricsEnabled;
- }
-
/**
* @return Time interval in milliseconds.
*/
@@ -426,7 +415,6 @@ public class VisorDataStorageConfiguration extends
VisorDataTransferObject {
out.writeInt(walSegmentSize);
U.writeString(out, walPath);
U.writeString(out, walArchivePath);
- out.writeBoolean(metricsEnabled);
U.writeEnum(out, walMode);
out.writeInt(walTlbSize);
out.writeLong(walFlushFreq);
@@ -462,7 +450,6 @@ public class VisorDataStorageConfiguration extends
VisorDataTransferObject {
walSegmentSize = in.readInt();
walPath = U.readString(in);
walArchivePath = U.readString(in);
- metricsEnabled = in.readBoolean();
walMode = WALMode.fromOrdinal(in.readByte());
walTlbSize = in.readInt();
walFlushFreq = in.readLong();
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorNodeDataCollectorJob.java
b/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorNodeDataCollectorJob.java
index 6736afc4995..86ae5de2f7b 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorNodeDataCollectorJob.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorNodeDataCollectorJob.java
@@ -236,20 +236,6 @@ public class VisorNodeDataCollectorJob extends
VisorJob<VisorNodeDataCollectorTa
}
}
- /**
- * Collect persistence metrics.
- *
- * @param res Job result.
- */
- protected void persistenceMetrics(VisorNodeDataCollectorJobResult res) {
- try {
- res.setPersistenceMetrics(new
VisorPersistenceMetrics(ignite.dataStorageMetrics()));
- }
- catch (Exception e) {
- res.setPersistenceMetricsEx(new VisorExceptionWrapper(e));
- }
- }
-
/** {@inheritDoc} */
@Override protected VisorNodeDataCollectorJobResult
run(VisorNodeDataCollectorTaskArg arg) {
return run(new VisorNodeDataCollectorJobResult(), arg);
@@ -289,12 +275,7 @@ public class VisorNodeDataCollectorJob extends
VisorJob<VisorNodeDataCollectorTa
caches(res, arg);
if (debug)
- start0 = log(ignite.log(), "Collected caches", getClass(), start0);
-
- persistenceMetrics(res);
-
- if (debug)
- log(ignite.log(), "Collected persistence metrics", getClass(),
start0);
+ log(ignite.log(), "Collected caches", getClass(), start0);
res.setErrorCount(ignite.context().exceptionRegistry().errorCount());
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorNodeDataCollectorJobResult.java
b/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorNodeDataCollectorJobResult.java
index e3501572a65..c6c01c2a9de 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorNodeDataCollectorJobResult.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorNodeDataCollectorJobResult.java
@@ -84,12 +84,6 @@ public class VisorNodeDataCollectorJobResult extends
VisorDataTransferObject {
/** Whether pending exchange future exists. */
private boolean hasPendingExchange;
- /** Persistence metrics. */
- private VisorPersistenceMetrics persistenceMetrics;
-
- /** Exception while collecting persistence metrics. */
- private VisorExceptionWrapper persistenceMetricsEx;
-
/** Rebalance percent. */
private double rebalance;
@@ -275,36 +269,6 @@ public class VisorNodeDataCollectorJobResult extends
VisorDataTransferObject {
this.hasPendingExchange = hasPendingExchange;
}
- /**
- * Get persistence metrics.
- */
- public VisorPersistenceMetrics getPersistenceMetrics() {
- return persistenceMetrics;
- }
-
- /**
- * Set persistence metrics.
- *
- * @param persistenceMetrics Persistence metrics.
- */
- public void setPersistenceMetrics(VisorPersistenceMetrics
persistenceMetrics) {
- this.persistenceMetrics = persistenceMetrics;
- }
-
- /**
- * @return Exception caught during collecting persistence metrics.
- */
- public VisorExceptionWrapper getPersistenceMetricsEx() {
- return persistenceMetricsEx;
- }
-
- /**
- * @param persistenceMetricsEx Exception caught during collecting
persistence metrics.
- */
- public void setPersistenceMetricsEx(VisorExceptionWrapper
persistenceMetricsEx) {
- this.persistenceMetricsEx = persistenceMetricsEx;
- }
-
/**
* @return Rebalance progress.
*/
@@ -341,8 +305,6 @@ public class VisorNodeDataCollectorJobResult extends
VisorDataTransferObject {
out.writeLong(errCnt);
out.writeObject(readyTopVer);
out.writeBoolean(hasPendingExchange);
- out.writeObject(persistenceMetrics);
- out.writeObject(persistenceMetricsEx);
out.writeDouble(rebalance);
}
@@ -363,8 +325,6 @@ public class VisorNodeDataCollectorJobResult extends
VisorDataTransferObject {
errCnt = in.readLong();
readyTopVer = (VisorAffinityTopologyVersion)in.readObject();
hasPendingExchange = in.readBoolean();
- persistenceMetrics = (VisorPersistenceMetrics)in.readObject();
- persistenceMetricsEx = (VisorExceptionWrapper)in.readObject();
rebalance = (protoVer > V1) ? in.readDouble() : -1;
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorNodeDataCollectorTask.java
b/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorNodeDataCollectorTask.java
index 067c57ba180..06d538434f3 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorNodeDataCollectorTask.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorNodeDataCollectorTask.java
@@ -121,12 +121,6 @@ public class VisorNodeDataCollectorTask extends
VisorMultiNodeTask<VisorNodeData
if (jobRes.getIgfssEx() != null)
taskRes.getIgfssEx().put(nid, jobRes.getIgfssEx());
- if (jobRes.getPersistenceMetrics() != null)
- taskRes.getPersistenceMetrics().put(nid,
jobRes.getPersistenceMetrics());
-
- if (jobRes.getPersistenceMetricsEx() != null)
- taskRes.getPersistenceMetricsEx().put(nid,
jobRes.getPersistenceMetricsEx());
-
taskRes.getReadyAffinityVersions().put(nid,
jobRes.getReadyAffinityVersion());
taskRes.getPendingExchanges().put(nid, jobRes.isHasPendingExchange());
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorNodeDataCollectorTaskResult.java
b/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorNodeDataCollectorTaskResult.java
index f8eb8690ce2..9b0c0a13ea1 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorNodeDataCollectorTaskResult.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorNodeDataCollectorTaskResult.java
@@ -94,12 +94,6 @@ public class VisorNodeDataCollectorTaskResult extends
VisorDataTransferObject {
/** Whether pending exchange future exists from nodes. */
private Map<UUID, Boolean> pendingExchanges = new HashMap<>();
- /** All persistence metrics collected from nodes. */
- private Map<UUID, VisorPersistenceMetrics> persistenceMetrics = new
HashMap<>();
-
- /** Exceptions caught during collecting persistence metrics from nodes. */
- private Map<UUID, VisorExceptionWrapper> persistenceMetricsEx = new
HashMap<>();
-
/** Rebalance state on nodes. */
private Map<UUID, Double> rebalance = new HashMap<>();
@@ -130,8 +124,6 @@ public class VisorNodeDataCollectorTaskResult extends
VisorDataTransferObject {
igfssEx.isEmpty() &&
readyTopVers.isEmpty() &&
pendingExchanges.isEmpty() &&
- persistenceMetrics.isEmpty() &&
- persistenceMetricsEx.isEmpty() &&
rebalance.isEmpty();
}
@@ -261,20 +253,6 @@ public class VisorNodeDataCollectorTaskResult extends
VisorDataTransferObject {
return pendingExchanges;
}
- /**
- * All persistence metrics collected from nodes.
- */
- public Map<UUID, VisorPersistenceMetrics> getPersistenceMetrics() {
- return persistenceMetrics;
- }
-
- /**
- * @return Exceptions caught during collecting persistence metrics from
nodes.
- */
- public Map<UUID, VisorExceptionWrapper> getPersistenceMetricsEx() {
- return persistenceMetricsEx;
- }
-
/**
* @return Rebalance on nodes.
*/
@@ -312,8 +290,6 @@ public class VisorNodeDataCollectorTaskResult extends
VisorDataTransferObject {
igfssEx.putAll(res.getIgfssEx());
readyTopVers.putAll(res.getReadyAffinityVersions());
pendingExchanges.putAll(res.getPendingExchanges());
- persistenceMetrics.putAll(res.getPersistenceMetrics());
- persistenceMetricsEx.putAll(res.getPersistenceMetricsEx());
rebalance.putAll(res.getRebalance());
}
@@ -336,8 +312,6 @@ public class VisorNodeDataCollectorTaskResult extends
VisorDataTransferObject {
U.writeMap(out, igfssEx);
U.writeMap(out, readyTopVers);
U.writeMap(out, pendingExchanges);
- U.writeMap(out, persistenceMetrics);
- U.writeMap(out, persistenceMetricsEx);
U.writeMap(out, rebalance);
}
@@ -360,8 +334,6 @@ public class VisorNodeDataCollectorTaskResult extends
VisorDataTransferObject {
igfssEx = U.readMap(in);
readyTopVers = U.readMap(in);
pendingExchanges = U.readMap(in);
- persistenceMetrics = U.readMap(in);
- persistenceMetricsEx = U.readMap(in);
if (protoVer > V1)
rebalance = U.readMap(in);
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorPersistenceMetrics.java
b/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorPersistenceMetrics.java
deleted file mode 100644
index 6f506ca7fd7..00000000000
---
a/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorPersistenceMetrics.java
+++ /dev/null
@@ -1,463 +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.ignite.internal.visor.node;
-
-import java.io.IOException;
-import java.io.ObjectInput;
-import java.io.ObjectOutput;
-import org.apache.ignite.DataStorageMetrics;
-import org.apache.ignite.internal.util.typedef.internal.S;
-import org.apache.ignite.internal.visor.VisorDataTransferObject;
-
-/**
- * DTO object for {@link DataStorageMetrics}.
- */
-public class VisorPersistenceMetrics extends VisorDataTransferObject {
- /** */
- private static final long serialVersionUID = 0L;
-
- /** */
- private float walLoggingRate;
-
- /** */
- private float walWritingRate;
-
- /** */
- private int walArchiveSegments;
-
- /** */
- private float walFsyncTimeAvg;
-
- /** */
- private long walBufPollSpinRate;
-
- /** */
- private long walSz;
-
- /** */
- private long walLastRollOverTm;
-
- /** */
- private long cpTotalTm;
-
- /** */
- private long lastCpDuration;
-
- /** */
- private long lastCpStart;
-
- /** */
- private long lastCpLockWaitDuration;
-
- /** */
- private long lastCpMmarkDuration;
-
- /** */
- private long lastCpPagesWriteDuration;
-
- /** */
- private long lastCpFsyncDuration;
-
- /** */
- private long lastCpTotalPages;
-
- /** */
- private long lastCpDataPages;
-
- /** */
- private long lastCpCowPages;
-
- /** */
- private long dirtyPages;
-
- /** */
- private long pagesRead;
-
- /** */
- private long pagesWritten;
-
- /** */
- private long pagesReplaced;
-
- /** */
- private long offHeapSz;
-
- /** */
- private long offheapUsedSz;
-
- /** */
- private long usedCpBufPages;
-
- /** */
- private long usedCpBufSz;
-
- /** */
- private long cpBufSz;
-
- /** */
- private long totalSz;
-
- /** */
- private long storageSize;
-
- /** */
- private long sparseStorageSize;
-
- /**
- * Default constructor.
- */
- public VisorPersistenceMetrics() {
- // No-op.
- }
-
- /**
- * @param m Persistence metrics.
- */
- public VisorPersistenceMetrics(DataStorageMetrics m) {
- walLoggingRate = m.getWalLoggingRate();
- walWritingRate = m.getWalWritingRate();
- walArchiveSegments = m.getWalArchiveSegments();
- walFsyncTimeAvg = m.getWalFsyncTimeAverage();
- walBufPollSpinRate = m.getWalBuffPollSpinsRate();
- walSz = m.getWalTotalSize();
- walLastRollOverTm = m.getWalLastRollOverTime();
-
- cpTotalTm = m.getCheckpointTotalTime();
-
- lastCpDuration = m.getLastCheckpointDuration();
- lastCpStart = m.getLastCheckpointStarted();
- lastCpLockWaitDuration = m.getLastCheckpointLockWaitDuration();
- lastCpMmarkDuration = m.getLastCheckpointMarkDuration();
- lastCpPagesWriteDuration = m.getLastCheckpointPagesWriteDuration();
- lastCpFsyncDuration = m.getLastCheckpointFsyncDuration();
- lastCpTotalPages = m.getLastCheckpointTotalPagesNumber();
- lastCpDataPages = m.getLastCheckpointDataPagesNumber();
- lastCpCowPages = m.getLastCheckpointCopiedOnWritePagesNumber();
-
- dirtyPages = m.getDirtyPages();
- pagesRead = m.getPagesRead();
- pagesWritten = m.getPagesWritten();
- pagesReplaced = m.getPagesReplaced();
-
- offHeapSz = m.getOffHeapSize();
- offheapUsedSz = m.getOffheapUsedSize();
-
- usedCpBufPages = m.getUsedCheckpointBufferPages();
- usedCpBufSz = m.getUsedCheckpointBufferSize();
- cpBufSz = m.getCheckpointBufferSize();
-
- totalSz = m.getTotalAllocatedSize();
-
- storageSize = m.getStorageSize();
- sparseStorageSize = m.getSparseStorageSize();
- }
-
- /**
- * @return Average number of WAL records per second written during the
last time interval.
- */
- public float getWalLoggingRate() {
- return walLoggingRate;
- }
-
- /**
- * @return Average number of bytes per second written during the last time
interval.
- */
- public float getWalWritingRate() {
- return walWritingRate;
- }
-
- /**
- * @return Current number of WAL segments in the WAL archive.
- */
- public int getWalArchiveSegments() {
- return walArchiveSegments;
- }
-
- /**
- * @return Average WAL fsync duration in microseconds over the last time
interval.
- */
- public float getWalFsyncTimeAverage() {
- return walFsyncTimeAvg;
- }
-
- /**
- * @return WAL buffer poll spins number over the last time interval.
- */
- public long getWalBuffPollSpinsRate() {
- return walBufPollSpinRate;
- }
-
- /**
- * @return Total size in bytes for storage WAL files.
- */
- public long getWalTotalSize() {
- return walSz;
- }
-
- /**
- * @return Time of the last WAL segment rollover.
- */
- public long getWalLastRollOverTime() {
- return walLastRollOverTm;
- }
-
- /**
- * @return Total checkpoint time from last restart.
- */
- public long getCheckpointTotalTime() {
- return cpTotalTm;
- }
-
- /**
- * @return Total checkpoint duration in milliseconds.
- */
- public long getLastCheckpointingDuration() {
- return lastCpDuration;
- }
-
- /**
- * Returns time when the last checkpoint was started.
- *
- * @return Time when the last checkpoint was started.
- * */
- public long getLastCheckpointStarted() {
- return lastCpStart;
- }
-
- /**
- * @return Checkpoint lock wait time in milliseconds.
- */
- public long getLastCheckpointLockWaitDuration() {
- return lastCpLockWaitDuration;
- }
-
- /**
- * @return Checkpoint mark duration in milliseconds.
- */
- public long getLastCheckpointMarkDuration() {
- return lastCpMmarkDuration;
- }
-
- /**
- * @return Checkpoint pages write phase in milliseconds.
- */
- public long getLastCheckpointPagesWriteDuration() {
- return lastCpPagesWriteDuration;
- }
-
- /**
- * @return Checkpoint fsync time in milliseconds.
- */
- public long getLastCheckpointFsyncDuration() {
- return lastCpFsyncDuration;
- }
-
- /**
- * @return Total number of pages written during the last checkpoint.
- */
- public long getLastCheckpointTotalPagesNumber() {
- return lastCpTotalPages;
- }
-
- /**
- * @return Total number of data pages written during the last checkpoint.
- */
- public long getLastCheckpointDataPagesNumber() {
- return lastCpDataPages;
- }
-
- /**
- * @return Total number of pages copied to a temporary checkpoint buffer
during the last checkpoint.
- */
- public long getLastCheckpointCopiedOnWritePagesNumber() {
- return lastCpCowPages;
- }
-
- /**
- * @return Total dirty pages for the next checkpoint.
- */
- public long getDirtyPages() {
- return dirtyPages;
- }
-
- /**
- * @return The number of read pages from last restart.
- */
- public long getPagesRead() {
- return pagesRead;
- }
-
- /**
- * @return The number of written pages from last restart.
- */
- public long getPagesWritten() {
- return pagesWritten;
- }
-
- /**
- * @return The number of replaced pages from last restart.
- */
- public long getPagesReplaced() {
- return pagesReplaced;
- }
-
- /**
- * @return Total offheap size in bytes.
- */
- public long getOffHeapSize() {
- return offHeapSz;
- }
-
- /**
- * @return Total used offheap size in bytes.
- */
- public long getOffheapUsedSize() {
- return offheapUsedSz;
- }
-
- /**
- * @return Checkpoint buffer size in pages.
- */
- public long getUsedCheckpointBufferPages() {
- return usedCpBufPages;
- }
-
- /**
- * @return Checkpoint buffer size in bytes.
- */
- public long getUsedCheckpointBufferSize() {
- return usedCpBufSz;
- }
-
- /**
- * @return Checkpoint buffer size in bytes.
- */
- public long getCheckpointBufferSize() {
- return cpBufSz;
- }
-
- /**
- * @return Total size of memory allocated in bytes.
- */
- public long getTotalAllocatedSize() {
- return totalSz;
- }
-
- /**
- * @return Storage space allocated in bytes.
- */
- public long getStorageSize() {
- return storageSize;
- }
-
- /**
- * @return Storage space allocated adjusted for possible sparsity in bytes.
- */
- public long getSparseStorageSize() {
- return sparseStorageSize;
- }
-
- /** {@inheritDoc} */
- @Override public byte getProtocolVersion() {
- return V5;
- }
-
- /** {@inheritDoc} */
- @Override protected void writeExternalData(ObjectOutput out) throws
IOException {
- out.writeFloat(walLoggingRate);
- out.writeFloat(walWritingRate);
- out.writeInt(walArchiveSegments);
- out.writeFloat(walFsyncTimeAvg);
- out.writeLong(lastCpDuration);
- out.writeLong(lastCpLockWaitDuration);
- out.writeLong(lastCpMmarkDuration);
- out.writeLong(lastCpPagesWriteDuration);
- out.writeLong(lastCpFsyncDuration);
- out.writeLong(lastCpTotalPages);
- out.writeLong(lastCpDataPages);
- out.writeLong(lastCpCowPages);
-
- // V2
- out.writeLong(walBufPollSpinRate);
- out.writeLong(walSz);
- out.writeLong(walLastRollOverTm);
- out.writeLong(cpTotalTm);
- out.writeLong(dirtyPages);
- out.writeLong(pagesRead);
- out.writeLong(pagesWritten);
- out.writeLong(pagesReplaced);
- out.writeLong(offHeapSz);
- out.writeLong(offheapUsedSz);
- out.writeLong(usedCpBufPages);
- out.writeLong(usedCpBufSz);
- out.writeLong(cpBufSz);
- out.writeLong(totalSz);
-
- // V3
- out.writeLong(storageSize);
- out.writeLong(sparseStorageSize);
-
- // V4
- out.writeLong(lastCpStart);
- }
-
- /** {@inheritDoc} */
- @Override protected void readExternalData(byte protoVer, ObjectInput in)
throws IOException, ClassNotFoundException {
- walLoggingRate = in.readFloat();
- walWritingRate = in.readFloat();
- walArchiveSegments = in.readInt();
- walFsyncTimeAvg = in.readFloat();
- lastCpDuration = in.readLong();
- lastCpLockWaitDuration = in.readLong();
- lastCpMmarkDuration = in.readLong();
- lastCpPagesWriteDuration = in.readLong();
- lastCpFsyncDuration = in.readLong();
- lastCpTotalPages = in.readLong();
- lastCpDataPages = in.readLong();
- lastCpCowPages = in.readLong();
-
- if (protoVer > V1) {
- walBufPollSpinRate = in.readLong();
- walSz = in.readLong();
- walLastRollOverTm = in.readLong();
- cpTotalTm = in.readLong();
- dirtyPages = in.readLong();
- pagesRead = in.readLong();
- pagesWritten = in.readLong();
- pagesReplaced = in.readLong();
- offHeapSz = in.readLong();
- offheapUsedSz = in.readLong();
- usedCpBufPages = in.readLong();
- usedCpBufSz = in.readLong();
- cpBufSz = in.readLong();
- totalSz = in.readLong();
- }
-
- if (protoVer > V2) {
- storageSize = in.readLong();
- sparseStorageSize = in.readLong();
- }
-
- if (protoVer > V3)
- lastCpStart = in.readLong();
- }
-
- /** {@inheritDoc} */
- @Override public String toString() {
- return S.toString(VisorPersistenceMetrics.class, this);
- }
-}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorPersistentStoreConfiguration.java
b/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorPersistentStoreConfiguration.java
index 986f0ee0c54..dad02deefd5 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorPersistentStoreConfiguration.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/visor/node/VisorPersistentStoreConfiguration.java
@@ -62,9 +62,6 @@ public class VisorPersistentStoreConfiguration extends
VisorDataTransferObject {
/** WAL archive path. */
private String walArchivePath;
- /** Metrics enabled flag. */
- private boolean metricsEnabled;
-
/** Wal mode. */
private WALMode walMode;
@@ -109,7 +106,6 @@ public class VisorPersistentStoreConfiguration extends
VisorDataTransferObject {
walSegmentSize = cfg.getWalSegmentSize();
walStorePath = cfg.getWalPath();
walArchivePath = cfg.getWalArchivePath();
- metricsEnabled = cfg.isMetricsEnabled();
walMode = cfg.getWalMode();
tlbSize = cfg.getWalBufferSize();
walFlushFreq = cfg.getWalFlushFrequency();
@@ -190,13 +186,6 @@ public class VisorPersistentStoreConfiguration extends
VisorDataTransferObject {
return walArchivePath;
}
- /**
- * @return Metrics enabled flag.
- */
- public boolean isMetricsEnabled() {
- return metricsEnabled;
- }
-
/**
* @return Time interval in milliseconds.
*/
@@ -265,7 +254,6 @@ public class VisorPersistentStoreConfiguration extends
VisorDataTransferObject {
out.writeInt(walSegmentSize);
U.writeString(out, walStorePath);
U.writeString(out, walArchivePath);
- out.writeBoolean(metricsEnabled);
U.writeEnum(out, walMode);
out.writeInt(tlbSize);
out.writeLong(walFlushFreq);
@@ -288,7 +276,6 @@ public class VisorPersistentStoreConfiguration extends
VisorDataTransferObject {
walSegmentSize = in.readInt();
walStorePath = U.readString(in);
walArchivePath = U.readString(in);
- metricsEnabled = in.readBoolean();
walMode = WALMode.fromOrdinal(in.readByte());
tlbSize = in.readInt();
walFlushFreq = in.readLong();
diff --git
a/modules/core/src/main/java/org/apache/ignite/mxbean/DataStorageMetricsMXBean.java
b/modules/core/src/main/java/org/apache/ignite/mxbean/DataStorageMetricsMXBean.java
deleted file mode 100644
index c038a670a0e..00000000000
---
a/modules/core/src/main/java/org/apache/ignite/mxbean/DataStorageMetricsMXBean.java
+++ /dev/null
@@ -1,206 +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.ignite.mxbean;
-
-import org.apache.ignite.DataStorageMetrics;
-import org.apache.ignite.configuration.DataStorageConfiguration;
-import org.apache.ignite.spi.metric.MetricExporterSpi;
-import org.apache.ignite.spi.metric.ReadOnlyMetricManager;
-import org.apache.ignite.spi.metric.ReadOnlyMetricRegistry;
-import org.apache.ignite.spi.metric.jmx.JmxMetricExporterSpi;
-
-/**
- * An MX bean allowing to monitor and tune persistence metrics.
- *
- * @deprecated Check the {@link JmxMetricExporterSpi} with
"name=io.datastorage" instead.
- *
- * @see ReadOnlyMetricManager
- * @see ReadOnlyMetricRegistry
- * @see JmxMetricExporterSpi
- * @see MetricExporterSpi
- */
-@Deprecated
-public interface DataStorageMetricsMXBean extends DataStorageMetrics {
- /** {@inheritDoc} */
- @MXBeanDescription("Average number of WAL records per second written
during the last time interval.")
- @Override float getWalLoggingRate();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Average number of bytes per second written during the
last time interval.")
- @Override float getWalWritingRate();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Current number of WAL segments in the WAL archive.")
- @Override int getWalArchiveSegments();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Average WAL fsync duration in microseconds over the
last time interval.")
- @Override float getWalFsyncTimeAverage();
-
- /** {@inheritDoc} */
- @MXBeanDescription("WAL buffer poll spins number over the last time
interval.")
- @Override long getWalBuffPollSpinsRate();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Total size in bytes for storage wal files.")
- @Override long getWalTotalSize();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Time of the last WAL segment rollover.")
- @Override long getWalLastRollOverTime();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Total checkpoint time from last restart.")
- @Override long getCheckpointTotalTime();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Used checkpoint buffer size in pages.")
- @Override long getUsedCheckpointBufferPages();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Used checkpoint buffer size in bytes.")
- @Override long getUsedCheckpointBufferSize();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Total size in bytes for checkpoint buffer.")
- @Override long getCheckpointBufferSize();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Duration of the last checkpoint in milliseconds.")
- @Override long getLastCheckpointDuration();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Time when the last checkpoint was started.")
- @Override long getLastCheckpointStarted();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Duration of the checkpoint lock wait in milliseconds.")
- @Override long getLastCheckpointLockWaitDuration();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Duration of the checkpoint mark in milliseconds.")
- @Override long getLastCheckpointMarkDuration();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Duration of the checkpoint pages write in
milliseconds.")
- @Override long getLastCheckpointPagesWriteDuration();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Duration of the sync phase of the last checkpoint in
milliseconds.")
- @Override long getLastCheckpointFsyncDuration();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Total number of pages written during the last
checkpoint.")
- @Override long getLastCheckpointTotalPagesNumber();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Total number of data pages written during the last
checkpoint.")
- @Override long getLastCheckpointDataPagesNumber();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Number of pages copied to a temporary checkpoint
buffer during the last checkpoint.")
- @Override long getLastCheckpointCopiedOnWritePagesNumber();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Total dirty pages for the next checkpoint.")
- @Override long getDirtyPages();
-
- /** {@inheritDoc} */
- @MXBeanDescription("The number of read pages from last restart.")
- @Override long getPagesRead();
-
- /** {@inheritDoc} */
- @MXBeanDescription("The number of written pages from last restart.")
- @Override long getPagesWritten();
-
- /** {@inheritDoc} */
- @MXBeanDescription("The number of replaced pages from last restart.")
- @Override long getPagesReplaced();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Total offheap size in bytes.")
- @Override long getOffHeapSize();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Total used offheap size in bytes.")
- @Override long getOffheapUsedSize();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Total size of memory allocated in bytes.")
- @Override long getTotalAllocatedSize();
-
- /**
- * Enables persistence metrics collection on an Apache Ignite node.
- */
- @MXBeanDescription("Enables persistence metrics collection on an Apache
Ignite node.")
- public void enableMetrics();
-
- /**
- * Disables persistence metrics collection on an Apache Ignite node.
- */
- @MXBeanDescription("Disables persistence metrics collection on an Apache
Ignite node.")
- public void disableMetrics();
-
- /**
- * Sets time interval for rate-based metrics. Identical to setting
- * {@link DataStorageConfiguration#setMetricsRateTimeInterval(long)}
configuration property.
- *
- * @param rateTimeInterval Time interval (in milliseconds) used for
allocation and eviction rates calculations.
- * @deprecated Use {@link MetricsMxBean#configureHitRateMetric(String,
long)} instead.
- */
- @MXBeanDescription(
- "Sets time interval for pages allocation and eviction monitoring
purposes."
- )
- @Deprecated
- public void rateTimeInterval(
- @MXBeanParameter(name = "rateTimeInterval", description = "Time
interval (in milliseconds) to set.")
- long rateTimeInterval
- );
-
- /**
- * Sets a number of sub-intervals the whole {@link
#rateTimeInterval(long)} will be split into to calculate
- * rate-based metrics. Identical to setting {@link
DataStorageConfiguration#setMetricsSubIntervalCount(int)} configuration
- * property.
- *
- * @param subInts A number of sub-intervals.
- * @deprecated Use {@link MetricsMxBean#configureHitRateMetric(String,
long)} instead.
- */
- @MXBeanDescription(
- "Sets a number of sub-intervals to calculate allocation and eviction
rates metrics."
- )
- @Deprecated
- public void subIntervals(
- @MXBeanParameter(name = "subInts", description = "Number of
subintervals to set.") int subInts
- );
-
- /** {@inheritDoc} */
- @MXBeanDescription("Storage space allocated, in bytes.")
- @Override long getStorageSize();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Storage space allocated adjusted for possible
sparsity, in bytes.")
- @Override long getSparseStorageSize();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Getting the total number of logged bytes into the
WAL.")
- @Override long getWalWrittenBytes();
-
- /** {@inheritDoc} */
- @MXBeanDescription("Getting the total size of the compressed segments in
bytes.")
- @Override long getWalCompressedBytes();
-}
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgniteDataStorageMetricsSelfTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgniteDataStorageMetricsSelfTest.java
index 160be0a9bd8..abe7ebd2826 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgniteDataStorageMetricsSelfTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgniteDataStorageMetricsSelfTest.java
@@ -31,7 +31,6 @@ import java.util.function.UnaryOperator;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.ignite.DataRegionMetrics;
-import org.apache.ignite.DataStorageMetrics;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
@@ -60,7 +59,6 @@ import org.apache.ignite.internal.util.typedef.F;
import org.apache.ignite.internal.util.typedef.PAX;
import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.internal.util.typedef.internal.U;
-import org.apache.ignite.mxbean.DataStorageMetricsMXBean;
import org.apache.ignite.spi.metric.HistogramMetric;
import org.apache.ignite.spi.metric.LongMetric;
import org.apache.ignite.testframework.ListeningTestLogger;
@@ -236,12 +234,12 @@ public class IgniteDataStorageMetricsSelfTest extends
GridCommonAbstractTest {
assertTrue(waitForCondition(new PAX() {
@Override public boolean applyx() {
- DataStorageMetrics pMetrics = ig.dataStorageMetrics();
+ MetricRegistry pMetrics =
ig.context().metric().registry(DATASTORAGE_METRIC_PREFIX);
assertNotNull(pMetrics);
- return pMetrics.getLastCheckpointTotalPagesNumber() != 0 &&
- pMetrics.getLastCheckpointDataPagesNumber() != 0;
+ return
pMetrics.<LongMetric>findMetric("LastCheckpointTotalPagesNumber").value() != 0
&&
+
pMetrics.<LongMetric>findMetric("LastCheckpointDataPagesNumber").value() != 0;
}
}, 10_000));
@@ -391,9 +389,7 @@ public class IgniteDataStorageMetricsSelfTest extends
GridCommonAbstractTest {
long exp = walMgr(n).lastWritePointer().fileOffset() -
HEADER_RECORD_SIZE;
- assertEquals(exp,
dbMgr(n).persistentStoreMetrics().getWalWrittenBytes());
- assertEquals(exp, dsMetricsMXBean(n).getWalWrittenBytes());
- assertEquals(exp,
((LongAdderMetric)dsMetricRegistry(n).findMetric("WalWrittenBytes")).value());
+ assertEquals(exp,
dsMetricRegistry(n).<LongAdderMetric>findMetric("WalWrittenBytes").value());
}
/**
@@ -540,9 +536,7 @@ public class IgniteDataStorageMetricsSelfTest extends
GridCommonAbstractTest {
if (router.hasArchive())
totalSize += walMgr.totalSize(walFiles(router.getWalArchiveDir()));
- assertEquals(totalSize,
dbMgr(igniteEx).persistentStoreMetrics().getWalTotalSize());
- assertEquals(totalSize, dsMetricsMXBean(igniteEx).getWalTotalSize());
- assertEquals(totalSize,
((LongGauge)dsMetricRegistry(igniteEx).findMetric("WalTotalSize")).value());
+ assertEquals(totalSize,
dsMetricRegistry(igniteEx).<LongGauge>findMetric("WalTotalSize").value());
}
/**
@@ -619,16 +613,6 @@ public class IgniteDataStorageMetricsSelfTest extends
GridCommonAbstractTest {
return n.context().metric().registry(DATASTORAGE_METRIC_PREFIX);
}
- /**
- * Getting data storage MXBean.
- *
- * @param n Node.
- * @return MXBean.
- */
- private DataStorageMetricsMXBean dsMetricsMXBean(IgniteEx n) {
- return getMxBean(n.name(), "Persistent Store", "DataStorageMetrics",
DataStorageMetricsMXBean.class);
- }
-
/**
* Check that the metric of the total size compressed segment is working
correctly.
*
@@ -638,8 +622,6 @@ public class IgniteDataStorageMetricsSelfTest extends
GridCommonAbstractTest {
long exp =
Arrays.stream(walMgr(n).walArchiveFiles()).filter(FileDescriptor::isCompressed)
.mapToLong(fd -> fd.file().length()).sum();
- assertEquals(exp,
dbMgr(n).persistentStoreMetrics().getWalCompressedBytes());
- assertEquals(exp, dsMetricsMXBean(n).getWalCompressedBytes());
- assertEquals(exp,
((LongAdderMetric)dsMetricRegistry(n).findMetric("WalCompressedBytes")).value());
+ assertEquals(exp,
dsMetricRegistry(n).<LongAdderMetric>findMetric("WalCompressedBytes").value());
}
}
diff --git
a/modules/core/src/test/java/org/apache/ignite/testframework/junits/IgniteMock.java
b/modules/core/src/test/java/org/apache/ignite/testframework/junits/IgniteMock.java
index ffce687cbf6..eb7c31e79e7 100644
---
a/modules/core/src/test/java/org/apache/ignite/testframework/junits/IgniteMock.java
+++
b/modules/core/src/test/java/org/apache/ignite/testframework/junits/IgniteMock.java
@@ -23,7 +23,6 @@ import java.util.concurrent.ExecutorService;
import javax.management.MBeanServer;
import org.apache.ignite.DataRegionMetrics;
import org.apache.ignite.DataRegionMetricsAdapter;
-import org.apache.ignite.DataStorageMetrics;
import org.apache.ignite.Ignite;
import org.apache.ignite.IgniteAtomicLong;
import org.apache.ignite.IgniteAtomicReference;
@@ -474,11 +473,6 @@ public class IgniteMock implements Ignite {
return null;
}
- /** {@inheritDoc} */
- @Override public DataStorageMetrics dataStorageMetrics() {
- return null;
- }
-
/** {@inheritDoc} */
@Override public IgniteEncryption encryption() {
return null;
diff --git
a/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteProcessProxy.java
b/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteProcessProxy.java
index 49364f1a3e6..3b06a49b4b3 100644
---
a/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteProcessProxy.java
+++
b/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteProcessProxy.java
@@ -33,7 +33,6 @@ import java.util.function.Supplier;
import javax.cache.CacheException;
import org.apache.ignite.DataRegionMetrics;
import org.apache.ignite.DataRegionMetricsAdapter;
-import org.apache.ignite.DataStorageMetrics;
import org.apache.ignite.Ignite;
import org.apache.ignite.IgniteAtomicLong;
import org.apache.ignite.IgniteAtomicReference;
@@ -821,11 +820,6 @@ public class IgniteProcessProxy implements IgniteEx {
throw new UnsupportedOperationException("Operation isn't supported
yet.");
}
- /** {@inheritDoc} */
- @Override public DataStorageMetrics dataStorageMetrics() {
- throw new UnsupportedOperationException("Operation isn't supported
yet.");
- }
-
/** {@inheritDoc} */
@Override public IgniteEncryption encryption() {
throw new UnsupportedOperationException("Operation isn't supported
yet.");
diff --git
a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ApiParity/DataStorageMetricsParityTest.cs
b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ApiParity/DataStorageMetricsParityTest.cs
deleted file mode 100644
index 92ffddf838f..00000000000
---
a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ApiParity/DataStorageMetricsParityTest.cs
+++ /dev/null
@@ -1,62 +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.
- */
-
-namespace Apache.Ignite.Core.Tests.ApiParity
-{
- using NUnit.Framework;
-
- /// <summary>
- /// Tests that <see cref="IDataStorageMetrics"/> has all APIs from Java
Ignite interface.
- /// </summary>
- [Explicit(ParityTest.IgnoreReason)]
- public class DataStorageMetricsParityTest
- {
- /** Properties that are missing on .NET side. */
- private static readonly string[] MissingProperties =
- {
- // IGNITE-7305
- "WalBuffPollSpinsRate",
- "WalTotalSize",
- "WalLastRollOverTime",
- "CheckpointTotalTime",
- "DirtyPages",
- "PagesRead",
- "PagesWritten",
- "PagesReplaced",
- "OffHeapSize",
- "OffheapUsedSize",
- "TotalAllocatedSize",
- "UsedCheckpointBufferPages",
- "UsedCheckpointBufferSize",
- "CheckpointBufferSize",
- // IGNITE-10332
- "StorageSize",
- "SparseStorageSize"
- };
-
- /// <summary>
- /// Tests the API parity.
- /// </summary>
- [Test]
- public void TestDataStorageMetrics()
- {
- ParityTest.CheckInterfaceParity(
-
@"modules\core\src\main\java\org\apache\ignite\DataStorageMetrics.java",
- typeof(IDataStorageMetrics), knownMissingMembers:
MissingProperties);
- }
- }
-}
diff --git
a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/DataStorageMetricsTest.cs
b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/DataStorageMetricsTest.cs
deleted file mode 100644
index d84d35f6dd2..00000000000
---
a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/DataStorageMetricsTest.cs
+++ /dev/null
@@ -1,106 +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.
- */
-
-namespace Apache.Ignite.Core.Tests.Cache
-{
- using System;
- using System.IO;
- using System.Linq;
- using Apache.Ignite.Core.Configuration;
- using NUnit.Framework;
-
- /// <summary>
- /// Tests <see cref="IDataStorageMetrics"/>.
- /// </summary>
- public class DataStorageMetricsTest
- {
- /** Temp dir for WAL. */
- private readonly string _tempDir = PathUtils.GetTempDirectoryName();
-
- /// <summary>
- /// Tests the data storage metrics.
- /// </summary>
- [Test]
- public void TestDataStorageMetrics()
- {
- var cfg = new IgniteConfiguration(TestUtils.GetTestConfiguration())
- {
- DataStorageConfiguration = new DataStorageConfiguration
- {
- CheckpointFrequency = TimeSpan.FromSeconds(5),
- MetricsEnabled = true,
- WalMode = WalMode.LogOnly,
- DefaultDataRegionConfiguration = new
DataRegionConfiguration
- {
- PersistenceEnabled = true,
- Name = "foobar"
- }
- },
- WorkDirectory = _tempDir
- };
-
- using (var ignite = Ignition.Start(cfg))
- {
- ignite.GetCluster().SetActive(true);
-
- var cache = ignite.CreateCache<int, object>("c");
-
- cache.PutAll(Enumerable.Range(1, 10)
- .ToDictionary(x => x, x => (object) new {Name =
x.ToString(), Id = x}));
-
- // Wait for checkpoint and metrics update and verify.
- IDataStorageMetrics metrics = null;
-
- Assert.IsTrue(TestUtils.WaitForCondition(() =>
- {
- // ReSharper disable once AccessToDisposedClosure
- metrics = ignite.GetDataStorageMetrics();
-
- return metrics.LastCheckpointTotalPagesNumber > 0;
- }, 10000));
-
- Assert.IsNotNull(metrics);
-
- Assert.AreEqual(0, metrics.WalArchiveSegments);
- Assert.Greater(metrics.WalFsyncTimeAverage, 0);
-
- Assert.GreaterOrEqual(metrics.LastCheckpointTotalPagesNumber,
1);
- Assert.AreEqual(0, metrics.LastCheckpointDataPagesNumber);
-
Assert.GreaterOrEqual(metrics.LastCheckpointCopiedOnWritePagesNumber, 0);
- Assert.Greater(TimeSpan.FromSeconds(1),
metrics.LastCheckpointLockWaitDuration);
-
- Assert.Greater(metrics.LastCheckpointPagesWriteDuration,
TimeSpan.Zero);
- Assert.Greater(metrics.LastCheckpointMarkDuration,
TimeSpan.Zero);
- Assert.Greater(metrics.LastCheckpointDuration, TimeSpan.Zero);
- Assert.Greater(metrics.LastCheckpointFsyncDuration,
TimeSpan.Zero);
-
- Assert.Greater(metrics.LastCheckpointDuration,
metrics.LastCheckpointMarkDuration);
- Assert.Greater(metrics.LastCheckpointDuration,
metrics.LastCheckpointPagesWriteDuration);
- Assert.Greater(metrics.LastCheckpointDuration,
metrics.LastCheckpointFsyncDuration);
- }
- }
-
- /// <summary>
- /// Tears down the test.
- /// </summary>
- [TearDown]
- public void TearDown()
- {
- Directory.Delete(_tempDir, true);
- }
- }
-}
diff --git
a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/PersistenceTest.cs
b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/PersistenceTest.cs
index 61678b11b0a..5d939e65201 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/PersistenceTest.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/PersistenceTest.cs
@@ -113,9 +113,6 @@ namespace Apache.Ignite.Core.Tests.Cache
});
cache[1] = 1;
- // Check some metrics.
- CheckDataStorageMetrics(ignite);
-
// Create cache with non-persistent region.
var volatileCache = ignite.CreateCache<int, int>(new
CacheConfiguration
{
@@ -156,15 +153,6 @@ namespace Apache.Ignite.Core.Tests.Cache
}
}
- /// <summary>
- /// Checks that data storage metrics reflect some write operations.
- /// </summary>
- private static void CheckDataStorageMetrics(IIgnite ignite)
- {
- var metrics = ignite.GetDataStorageMetrics();
- Assert.Greater(metrics.WalLoggingRate, 0);
- }
-
/// <summary>
/// Tests the grid activation with persistence (inactive by default).
/// </summary>
diff --git
a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/PersistentStoreTestObsolete.cs
b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/PersistentStoreTestObsolete.cs
index 4cc31a8b3a8..dd3d2e2ccce 100644
---
a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/PersistentStoreTestObsolete.cs
+++
b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/PersistentStoreTestObsolete.cs
@@ -74,11 +74,6 @@ namespace Apache.Ignite.Core.Tests.Cache
var cache = ignite.CreateCache<int, int>(cacheName);
cache[1] = 1;
-
- // Check some metrics.
- var metrics = ignite.GetDataStorageMetrics();
- Assert.Greater(metrics.WalLoggingRate, 0);
- Assert.Greater(metrics.WalFsyncTimeAverage, 0);
}
// Verify directories.
diff --git
a/modules/platforms/dotnet/Apache.Ignite.Core/Configuration/DataStorageConfiguration.cs
b/modules/platforms/dotnet/Apache.Ignite.Core/Configuration/DataStorageConfiguration.cs
index b8cfe095571..81d1b91e429 100644
---
a/modules/platforms/dotnet/Apache.Ignite.Core/Configuration/DataStorageConfiguration.cs
+++
b/modules/platforms/dotnet/Apache.Ignite.Core/Configuration/DataStorageConfiguration.cs
@@ -447,7 +447,7 @@ namespace Apache.Ignite.Core.Configuration
/// <summary>
/// Gets or sets a value indicating whether to enable data storage
metrics.
- /// See <see cref="IIgnite.GetDataStorageMetrics"/>.
+ /// See <see cref="IIgnite.GetMemoryMetrics()"/>.
/// </summary>
public bool MetricsEnabled { get; set; }
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/IDataStorageMetrics.cs
b/modules/platforms/dotnet/Apache.Ignite.Core/IDataStorageMetrics.cs
deleted file mode 100644
index 6f3562d94cc..00000000000
--- a/modules/platforms/dotnet/Apache.Ignite.Core/IDataStorageMetrics.cs
+++ /dev/null
@@ -1,87 +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.
- */
-
-namespace Apache.Ignite.Core
-{
- using System;
-
- /// <summary>
- /// Persistent store metrics.
- /// </summary>
- public interface IDataStorageMetrics
- {
- /// <summary>
- /// Gets the average number of WAL records per second written during
the last time interval.
- /// </summary>
- float WalLoggingRate { get; }
-
- /// <summary>
- /// Gets the average number of bytes per second written during the
last time interval.
- /// </summary>
- float WalWritingRate { get; }
-
- /// <summary>
- /// Gets the current number of WAL segments in the WAL archive.
- /// </summary>
- int WalArchiveSegments { get; }
-
- /// <summary>
- /// Gets the average WAL fsync duration in microseconds over the last
time interval.
- /// </summary>
- float WalFsyncTimeAverage { get; }
-
- /// <summary>
- /// Gets the duration of the last checkpoint.
- /// </summary>
- TimeSpan LastCheckpointDuration { get; }
-
- /// <summary>
- /// Gets the duration of last checkpoint lock wait.
- /// </summary>
- TimeSpan LastCheckpointLockWaitDuration { get; }
-
- /// <summary>
- /// Gets the duration of last checkpoint mark phase.
- /// </summary>
- TimeSpan LastCheckpointMarkDuration { get; }
-
- /// <summary>
- /// Gets the duration of last checkpoint pages write phase.
- /// </summary>
- TimeSpan LastCheckpointPagesWriteDuration { get; }
-
- /// <summary>
- /// Gets the duration of the sync phase of the last checkpoint.
- /// </summary>
- TimeSpan LastCheckpointFsyncDuration { get; }
-
- /// <summary>
- /// Gets the total number of pages written during the last checkpoint.
- /// </summary>
- long LastCheckpointTotalPagesNumber { get; }
-
- /// <summary>
- /// Gets the number of data pages written during the last checkpoint.
- /// </summary>
- long LastCheckpointDataPagesNumber { get; }
-
- /// <summary>
- /// Gets the number of pages copied to a temporary checkpoint buffer
during the last checkpoint.
- /// </summary>
- long LastCheckpointCopiedOnWritePagesNumber { get; }
- }
-}
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/IIgnite.cs
b/modules/platforms/dotnet/Apache.Ignite.Core/IIgnite.cs
index b2a7a4b6393..0b9c67ddcda 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/IIgnite.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/IIgnite.cs
@@ -435,7 +435,6 @@ namespace Apache.Ignite.Core
/// Gets a collection of memory metrics, one for each
/// <see cref="DataStorageConfiguration.DataRegionConfigurations"/>.
/// <para />
- /// Metrics should be enabled with <see
cref="DataStorageConfiguration.MetricsEnabled"/>.
/// </summary>
ICollection<IDataRegionMetrics> GetDataRegionMetrics();
@@ -448,14 +447,6 @@ namespace Apache.Ignite.Core
/// <param name="dataRegionName">Name of the data region.</param>
IDataRegionMetrics GetDataRegionMetrics(string dataRegionName);
- /// <summary>
- /// Gets the persistent store metrics.
- /// <para />
- /// To enable metrics set <see
cref="DataStorageConfiguration.MetricsEnabled"/> property
- /// in <see cref="IgniteConfiguration.DataStorageConfiguration"/>.
- /// </summary>
- IDataStorageMetrics GetDataStorageMetrics();
-
/// <summary>
/// Adds cache configuration template. Name should contain *.
/// Template settings are applied to a cache created with <see
cref="CreateCache{K,V}(string)"/> if specified
diff --git
a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cluster/ClusterGroupImpl.cs
b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cluster/ClusterGroupImpl.cs
index c99e35fecd8..773ab4487ae 100644
---
a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cluster/ClusterGroupImpl.cs
+++
b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cluster/ClusterGroupImpl.cs
@@ -146,9 +146,6 @@ namespace Apache.Ignite.Core.Impl.Cluster
/** */
private const int OpDataRegionMetricsByName = 36;
- /** */
- private const int OpDataStorageMetrics = 37;
-
/** */
private const int OpEnableStatistics = 38;
@@ -676,15 +673,6 @@ namespace Apache.Ignite.Core.Impl.Cluster
stream => stream.ReadBool() ? new
DataRegionMetrics(Marshaller.StartUnmarshal(stream, false)) : null);
}
- /// <summary>
- /// Gets the data storage metrics.
- /// </summary>
- public IDataStorageMetrics GetDataStorageMetrics()
- {
- return DoInOp(OpDataStorageMetrics, stream =>
- new DataStorageMetrics(Marshaller.StartUnmarshal(stream,
false)));
- }
-
/// <summary>
/// Changes Ignite grid state to active or inactive.
/// </summary>
diff --git
a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/DataStorageMetrics.cs
b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/DataStorageMetrics.cs
deleted file mode 100644
index 58b3b373c53..00000000000
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/DataStorageMetrics.cs
+++ /dev/null
@@ -1,87 +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.
- */
-
-namespace Apache.Ignite.Core.Impl
-{
- using System;
- using System.Diagnostics;
- using Apache.Ignite.Core.Binary;
- using Apache.Ignite.Core.Impl.Binary;
-
- /// <summary>
- /// Data storage metrics.
- /// </summary>
- internal class DataStorageMetrics : IDataStorageMetrics
- {
- /// <summary>
- /// Initializes a new instance of the <see cref="DataStorageMetrics"/>
class.
- /// </summary>
- public DataStorageMetrics(IBinaryRawReader reader)
- {
- Debug.Assert(reader != null);
-
- WalLoggingRate = reader.ReadFloat();
- WalWritingRate = reader.ReadFloat();
- WalArchiveSegments = reader.ReadInt();
- WalFsyncTimeAverage = reader.ReadFloat();
- LastCheckpointDuration = reader.ReadLongAsTimespan();
- LastCheckpointLockWaitDuration = reader.ReadLongAsTimespan();
- LastCheckpointMarkDuration = reader.ReadLongAsTimespan();
- LastCheckpointPagesWriteDuration = reader.ReadLongAsTimespan();
- LastCheckpointFsyncDuration = reader.ReadLongAsTimespan();
- LastCheckpointTotalPagesNumber = reader.ReadLong();
- LastCheckpointDataPagesNumber = reader.ReadLong();
- LastCheckpointCopiedOnWritePagesNumber = reader.ReadLong();
- }
-
- /** <inheritdoc /> */
- public float WalLoggingRate { get; private set; }
-
- /** <inheritdoc /> */
- public float WalWritingRate { get; private set; }
-
- /** <inheritdoc /> */
- public int WalArchiveSegments { get; private set; }
-
- /** <inheritdoc /> */
- public float WalFsyncTimeAverage { get; private set; }
-
- /** <inheritdoc /> */
- public TimeSpan LastCheckpointDuration { get; private set; }
-
- /** <inheritdoc /> */
- public TimeSpan LastCheckpointLockWaitDuration { get; private set; }
-
- /** <inheritdoc /> */
- public TimeSpan LastCheckpointMarkDuration { get; private set; }
-
- /** <inheritdoc /> */
- public TimeSpan LastCheckpointPagesWriteDuration { get; private set; }
-
- /** <inheritdoc /> */
- public TimeSpan LastCheckpointFsyncDuration { get; private set; }
-
- /** <inheritdoc /> */
- public long LastCheckpointTotalPagesNumber { get; private set; }
-
- /** <inheritdoc /> */
- public long LastCheckpointDataPagesNumber { get; private set; }
-
- /** <inheritdoc /> */
- public long LastCheckpointCopiedOnWritePagesNumber { get; private set;
}
- }
-}
\ No newline at end of file
diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Ignite.cs
b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Ignite.cs
index 1438b4688e9..d1190c6641a 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Ignite.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Ignite.cs
@@ -50,7 +50,6 @@ namespace Apache.Ignite.Core.Impl
using Apache.Ignite.Core.Lifecycle;
using Apache.Ignite.Core.Log;
using Apache.Ignite.Core.Messaging;
- using Apache.Ignite.Core.PersistentStore;
using Apache.Ignite.Core.Services;
using Apache.Ignite.Core.Transactions;
using UU = Apache.Ignite.Core.Impl.Unmanaged.UnmanagedUtils;
@@ -986,12 +985,6 @@ namespace Apache.Ignite.Core.Impl
return _prj.GetDataRegionMetrics(memoryPolicyName);
}
- /** <inheritdoc /> */
- public IDataStorageMetrics GetDataStorageMetrics()
- {
- return _prj.GetDataStorageMetrics();
- }
-
/** <inheritdoc /> */
public void AddCacheConfiguration(CacheConfiguration configuration)
{
diff --git
a/modules/platforms/dotnet/Apache.Ignite.Core/PersistentStore/PersistentStoreConfiguration.cs
b/modules/platforms/dotnet/Apache.Ignite.Core/PersistentStore/PersistentStoreConfiguration.cs
index 9ae0a0bb882..aec4c3ae549 100644
---
a/modules/platforms/dotnet/Apache.Ignite.Core/PersistentStore/PersistentStoreConfiguration.cs
+++
b/modules/platforms/dotnet/Apache.Ignite.Core/PersistentStore/PersistentStoreConfiguration.cs
@@ -300,7 +300,7 @@ namespace Apache.Ignite.Core.PersistentStore
/// <summary>
/// Gets or sets a value indicating whether to enable persistent store
metrics.
- /// See <see cref="IIgnite.GetDataStorageMetrics"/>.
+ /// See <see cref="IIgnite.GetMemoryMetrics()"/>.
/// </summary>
public bool MetricsEnabled { get; set; }
diff --git
a/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java
b/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java
index 65d565c29ee..05874457e88 100644
---
a/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java
+++
b/modules/rest-http/src/main/java/org/apache/ignite/internal/processors/rest/protocols/http/jetty/GridJettyRestHandler.java
@@ -723,7 +723,6 @@ public class GridJettyRestHandler extends AbstractHandler {
}
case DATA_REGION_METRICS:
- case DATA_STORAGE_METRICS:
case NAME:
case VERSION:
case PROBE: {
diff --git
a/modules/spring/src/main/java/org/apache/ignite/IgniteSpringBean.java
b/modules/spring/src/main/java/org/apache/ignite/IgniteSpringBean.java
index c10af90d36a..d7955b567b5 100644
--- a/modules/spring/src/main/java/org/apache/ignite/IgniteSpringBean.java
+++ b/modules/spring/src/main/java/org/apache/ignite/IgniteSpringBean.java
@@ -304,13 +304,6 @@ public class IgniteSpringBean implements Ignite,
DisposableBean, SmartInitializi
return g.dataRegionMetrics(memPlcName);
}
- /** {@inheritDoc} */
- @Override public DataStorageMetrics dataStorageMetrics() {
- checkIgnite();
-
- return g.dataStorageMetrics();
- }
-
/** {@inheritDoc} */
@Override public IgniteEncryption encryption() {
checkIgnite();