You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Pavel Pereslegin (JIRA)" <ji...@apache.org> on 2018/03/29 12:31:01 UTC

[jira] [Commented] (IGNITE-6630) Incorrect time units of average transaction commit/rollback duration cache metrics.

    [ https://issues.apache.org/jira/browse/IGNITE-6630?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16418899#comment-16418899 ] 

Pavel Pereslegin commented on IGNITE-6630:
------------------------------------------

Hello [~NIzhikov],
tests looks good, could you merge these changes?

> Incorrect time units of average transaction commit/rollback duration cache metrics.
> -----------------------------------------------------------------------------------
>
>                 Key: IGNITE-6630
>                 URL: https://issues.apache.org/jira/browse/IGNITE-6630
>             Project: Ignite
>          Issue Type: Bug
>    Affects Versions: 2.2
>            Reporter: Pavel Pereslegin
>            Assignee: Pavel Pereslegin
>            Priority: Minor
>              Labels: metrics, newbie
>             Fix For: 2.5
>
>
> AverageTxCommitTime and AverageTxRollbackTime metrics in CacheMetrics counts in milliseconds instead of microseconds as pointed in javadoc.
> Simple junit reproducer:
> {code:java}
> public class CacheMetricsTxAvgTimeTest extends GridCommonAbstractTest {
>     /** */
>     private <K, V> CacheConfiguration<K, V> cacheConfiguration(String name) {
>         CacheConfiguration<K, V> cacheConfiguration = new CacheConfiguration<>(name);
>         cacheConfiguration.setCacheMode(CacheMode.PARTITIONED);
>         cacheConfiguration.setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL);
>         cacheConfiguration.setStatisticsEnabled(true);
>         return cacheConfiguration;
>     }
>     /** */
>     public void testTxCommitDuration() throws Exception {
>         try ( Ignite node = startGrid(0)) {
>             IgniteCache<Object, Object> cache = node.createCache(cacheConfiguration(DEFAULT_CACHE_NAME));
>             try (Transaction tx = node.transactions().txStart()) {
>                 cache.put(1, 1);
>                 // Await 1 second.
>                 U.sleep(1_000);
>                 tx.commit();
>             }
>             // Documentation says that this metric is in microseconds.
>             float commitTime = cache.metrics().getAverageTxCommitTime();
>             // But this assertion will fail because it in milliseconds and returns only ~1000.
>             assert commitTime >= 1_000_000;
>         }
>     }
> }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)