ignite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrey Kornev <andrewkor...@hotmail.com>
Subject EntryProcessor execution semantics
Date Wed, 25 Nov 2015 17:43:14 GMT

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.

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message