On Oct 31, 2013, at 1:19 PM, Bela Ban <[email protected]> wrote:

> On 10/31/13 1:05 PM, Mircea Markus wrote:
>> 
>> On Oct 31, 2013, at 7:10 AM, Bela Ban <[email protected]> wrote:
>> 
>>> Just to clarify, can you comment on whether the statements below are true ?
>>> 
>>> #1 When mode=repl is used, the event itself is never broadcast; it is
>>> always local and no communication is needed
>> 
>> yes. for replicated caches we should handle this as a local listener.
>> 
>>> 
>>> #2 when mode=dist, is the event broadcast synchronously or
>>> asynchronously, can this be configured ? I think it doesn't make sense
>>> to broadcast the event synchronously in dist-async, for instance.
>> 
>> there are two levels of asynchronicity:
>> - the cluster is configured to be asyn
>> - the listeners can be configured to be notified in an async thread 
>> (@Listener async=true)
>> In both situations the notification from the event should be broadcasted 
>> asynchronously
> 
> Ah, ok, so the events are *always* async ?

Not always async actually: if we have an sync cluster and the listener is 
configured as @Listener(sync=true)[1] then the notification is processed 
synchronously and the ordering guarantee honored. 
If either the cluster is configured with async replication/distribution or 
@Listener(sync=false) then the events can be delivered *async* from the nodes 
were the filter is registered. This should be documents.

[1] 
http://docs.jboss.org/infinispan/6.0/apidocs/org/infinispan/notifications/Listener.html#sync()

> +1 in general, but there's a 
> point where you mentioned ordering, and ordering might get destroyed if 
> you switch to async.

Cheers,
-- 
Mircea Markus
Infinispan lead (www.infinispan.org)





_______________________________________________
infinispan-dev mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/infinispan-dev

Reply via email to