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

Alexey Kuznetsov commented on IGNITE-6846:
------------------------------------------

[~vkulichenko]
"8. And once again, it should be consistent with other operations  Invoke is a 
regular cache operation; the only difference is that it can do both read and 
update/remove in one go. Let's not overcomplicate this."
Imagine, we perform regular get operation.The value would be extracted from 
near cache on the same node.As a result 'get' metric would be incremented on 
local node.

Now, consider performing invoke:
{code:java}
                cache0.invoke(i, new CacheEntryProcessor<Integer, Integer, 
Object>() {
                    @Override public Object process(MutableEntry<Integer, 
Integer> entry,
                        Object... arguments) throws EntryProcessorException {
                        entry.getValue();

                        return null;
                    }
                });
{code}
It would be executed on primary node(a-priory), and 'read-only invoke' metric 
must be incremented on primary node only(not on local node!).

So, how could they be consistent with each other? 


> Add metrics for entry processor invocations
> -------------------------------------------
>
>                 Key: IGNITE-6846
>                 URL: https://issues.apache.org/jira/browse/IGNITE-6846
>             Project: Ignite
>          Issue Type: Improvement
>          Components: cache
>    Affects Versions: 2.3
>            Reporter: Valentin Kulichenko
>            Assignee: Alexey Kuznetsov
>            Priority: Critical
>              Labels: iep-6
>             Fix For: 2.4
>
>
> {{CacheMetrics}} object has multiple metrics for various cache operations 
> like {{get}}, {{put}} and {{remove}}, but nothing for 
> {{invoke}}/{{EntryProcessor}}. It makes sense to add such metrics, for 
> example:
> * Total number of `invoke` operations executed.
> * Number of `invoke` operations that included updates.
> * Number of read-only `invoke` operations.
> * Min/max/avg execution time.
> * ...



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to