You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by na...@apache.org on 2021/10/15 14:26:44 UTC
[ignite] branch master updated: IGNITE-15666 The remove metric
value is different for sync and async methods (#9494)
This is an automated email from the ASF dual-hosted git repository.
namelchev 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 73a687d IGNITE-15666 The remove metric value is different for sync and async methods (#9494)
73a687d is described below
commit 73a687d815a379bf53a3c528a01381089eba003c
Author: Nikita Amelchev <ns...@gmail.com>
AuthorDate: Fri Oct 15 17:26:21 2021 +0300
IGNITE-15666 The remove metric value is different for sync and async methods (#9494)
---
.../processors/cache/GridCacheAdapter.java | 2 +-
.../cache/GridCacheAbstractMetricsSelfTest.java | 37 ++++++++++++++++++++++
2 files changed, 38 insertions(+), 1 deletion(-)
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
index 5a6bc97..662b9ab 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
@@ -3373,7 +3373,7 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
boolean rmv = remove0(key, filter);
- if (statsEnabled && rmv)
+ if (statsEnabled)
metrics0().addRemoveTimeNanos(System.nanoTime() - start);
if (performanceStatsEnabled)
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractMetricsSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractMetricsSelfTest.java
index caa0015..077b6a9 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractMetricsSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractMetricsSelfTest.java
@@ -48,6 +48,7 @@ import org.apache.ignite.internal.util.lang.GridAbsPredicateX;
import org.apache.ignite.internal.util.typedef.F;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.lang.IgniteFuture;
+import org.apache.ignite.spi.metric.LongMetric;
import org.apache.ignite.spi.metric.Metric;
import org.apache.ignite.transactions.Transaction;
import org.junit.Test;
@@ -1525,6 +1526,42 @@ public abstract class GridCacheAbstractMetricsSelfTest extends GridCacheAbstract
assertTrue(waitForCondition(() -> stream(getAllTime.value()).sum() == 2, getTestTimeout()));
}
+ /** */
+ @Test
+ public void testRemoveTimeTotal() throws Exception {
+ IgniteCache<Integer, Integer> cache = grid(0).cache(DEFAULT_CACHE_NAME);
+
+ LongMetric removeTimeTotal = metric("RemoveTimeTotal");
+
+ assertEquals(0, removeTimeTotal.value());
+
+ // 1. Check remove of a non-existing key.
+ cache.remove(-1);
+
+ assertTrue(removeTimeTotal.value() > 0);
+
+ removeTimeTotal.reset();
+
+ cache.removeAsync(-1).get();
+
+ assertTrue(waitForCondition(() -> removeTimeTotal.value() > 0, getTestTimeout()));
+
+ removeTimeTotal.reset();
+
+ // 2. Check remove of an existing key.
+ cache.put(1, 1);
+ cache.remove(1);
+
+ assertTrue(removeTimeTotal.value() > 0);
+
+ removeTimeTotal.reset();
+
+ cache.put(1, 1);
+ cache.removeAsync(1).get();
+
+ assertTrue(waitForCondition(() -> removeTimeTotal.value() > 0, getTestTimeout()));
+ }
+
/**
* @param name Metric name to find.
* @return Metric.