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

Amelchev Nikita commented on IGNITE-12728:
------------------------------------------

[~agura], Hi. Andrey, 
 I want to fix the inconsistent metric collecting from sync and async putAll 
methods.
 For now, batch metric update their single metrics:
{noformat}
getAll  -  CacheMetricsImpl#addGetTimeNanos
getAllAsync  -  CacheMetricsImpl#addGetTimeNanos

removeAll  -  CacheMetricsImpl#addRemoveTimeNanos
removeAllAsync   -  CacheMetricsImpl#addRemoveTimeNanos

putAll  -  CacheMetricsImpl#addPutTimeNanos
putAllAsync  -  ??? (no metrics)
{noformat}
 I suggest to fix with updating CacheMetricsImpl#addPutTimeNanos as sync 
version do.
 
I also agree that we should separate batch metrics, but let's file another 
ticket for this?


> The cache#putAllAsync method does not collect statistics
> --------------------------------------------------------
>
>                 Key: IGNITE-12728
>                 URL: https://issues.apache.org/jira/browse/IGNITE-12728
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Amelchev Nikita
>            Assignee: Amelchev Nikita
>            Priority: Major
>              Labels: IEP-35
>             Fix For: 2.9
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> The cache#putAllAsync method does not collect statistics.
> The reproducer for {{GridCacheAbstractMetricsSelfTest}}:
> {noformat}
>     @Test
>     public void testPutAllAsyncAvgTime() throws Exception {
>         IgniteCache<Integer, Integer> cache = 
> grid(0).cache(DEFAULT_CACHE_NAME);
>         assertEquals(0.0, cache.localMetrics().getAveragePutTime(), 0.0);
>         assertEquals(0, cache.localMetrics().getCachePuts());
>         Map<Integer, Integer> values = new HashMap<>();
>         values.put(1, 1);
>         values.put(2, 2);
>         values.put(3, 3);
>         IgniteFuture<Void> fut = cache.putAllAsync(values);
>         fut.get();
>         assertTrue(waitForCondition(() -> 
> cache.localMetrics().getAveragePutTime() > 0, 30_000));
>         assertEquals(values.size(), cache.localMetrics().getCachePuts());
>     }
> {noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to