You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ni...@apache.org on 2018/04/02 13:03:35 UTC

ignite git commit: IGNITE-6630: Incorrect time units of average transaction commit/rollback duration cache metrics. - Fixes #2854.

Repository: ignite
Updated Branches:
  refs/heads/master 9111bf072 -> 122816e94


IGNITE-6630: Incorrect time units of average transaction commit/rollback duration cache metrics. - Fixes #2854.

Signed-off-by: Nikolay Izhikov <ni...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/122816e9
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/122816e9
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/122816e9

Branch: refs/heads/master
Commit: 122816e94ff7a4bab50aa5ae548655b0e6459100
Parents: 9111bf0
Author: pereslegin-pa <xx...@gmail.com>
Authored: Mon Apr 2 15:53:12 2018 +0300
Committer: Nikolay Izhikov <ni...@apache.org>
Committed: Mon Apr 2 15:53:12 2018 +0300

----------------------------------------------------------------------
 .../cache/transactions/IgniteTxLocalStateAdapter.java        | 8 +++++---
 .../cache/GridCacheTransactionalAbstractMetricsSelfTest.java | 8 ++++++--
 2 files changed, 11 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/122816e9/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalStateAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalStateAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalStateAdapter.java
index d823558..4943aac 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalStateAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalStateAdapter.java
@@ -17,6 +17,7 @@
 
 package org.apache.ignite.internal.processors.cache.transactions;
 
+import java.util.concurrent.TimeUnit;
 import org.apache.ignite.internal.processors.cache.GridCacheContext;
 import org.apache.ignite.internal.util.typedef.internal.U;
 
@@ -31,11 +32,12 @@ public abstract class IgniteTxLocalStateAdapter implements IgniteTxLocalState {
      */
     protected final void onTxEnd(GridCacheContext cacheCtx, IgniteInternalTx tx, boolean commit) {
         if (cacheCtx.statisticsEnabled()) {
-            // Convert start time from ms to ns.
+            long durationNanos = TimeUnit.MILLISECONDS.toNanos(U.currentTimeMillis() - tx.startTime());
+
             if (commit)
-                cacheCtx.cache().metrics0().onTxCommit((U.currentTimeMillis() - tx.startTime()) * 1000);
+                cacheCtx.cache().metrics0().onTxCommit(durationNanos);
             else
-                cacheCtx.cache().metrics0().onTxRollback((U.currentTimeMillis() - tx.startTime()) * 1000);
+                cacheCtx.cache().metrics0().onTxRollback(durationNanos);
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/ignite/blob/122816e9/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTransactionalAbstractMetricsSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTransactionalAbstractMetricsSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTransactionalAbstractMetricsSelfTest.java
index fcb5261..0ab5bc4 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTransactionalAbstractMetricsSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTransactionalAbstractMetricsSelfTest.java
@@ -238,7 +238,9 @@ public abstract class GridCacheTransactionalAbstractMetricsSelfTest extends Grid
 
                 if (put) {
                     assertEquals(TX_CNT, cacheMetrics.getCacheTxCommits());
-                    assert cacheMetrics.getAverageTxCommitTime() > 0;
+
+                    // Expected metric value should be in microseconds.
+                    assert cacheMetrics.getAverageTxCommitTime() > 1000 : cacheMetrics.getAverageTxCommitTime();
                 }
             }
             else {
@@ -286,7 +288,9 @@ public abstract class GridCacheTransactionalAbstractMetricsSelfTest extends Grid
 
                 if (put) {
                     assertEquals(TX_CNT, cacheMetrics.getCacheTxRollbacks());
-                    assert cacheMetrics.getAverageTxRollbackTime() > 0;
+
+                    // Expected metric value should be in microseconds.
+                    assert cacheMetrics.getAverageTxRollbackTime() > 1000 : cacheMetrics.getAverageTxRollbackTime();
                 }
             }
             else {