Hello,

I'd like to ask the community members to share their thoughts/opinions on the 
following subject.

JCache provides a way to atomically execute one or more actions against a cache 
entry using the Entry Processor mechanism. The Cache interface exposes an 
invoke() method that takes a key of the cache entry to be acted upon and an 
instance of the EntryProcessor interface as its parameters. When invoked, the 
entry processor will be passed an instance of JCache's MutableEntry which gives 
the processor exclusive access to the cache entry for the duration of the 
EntryProcessor.process() call. Great feature for delta updates, in-place 
compute, coordination/agreement (a la zookeeper), and so on!

Now, if one were to put his Ignite user hat on, what execution semantics would 
you as a user expect? Specifically,
1) the EntryProcessor is executed on the key's primary node as well as all 
backup nodes.
2) the EntryProcessor is executed only on the key's primary node.
3) something else.

Unfortunately JCache spec doesn't provide much details on this feature. Ignite 
documentation is silent, too.

Thanks
Andrey
                                          

Reply via email to