[infinispan-dev] New Cache Entry Notifications

Galder Zamarreño galder at redhat.com
Wed Feb 5 10:05:34 EST 2014


On 05 Feb 2014, at 15:38, Mircea Markus <mmarkus at redhat.com> wrote:

> 
> On Feb 3, 2014, at 4:07 PM, Galder Zamarreño <galder at redhat.com> wrote:
> 
>>> 
>>> On Jan 23, 2014, at 5:48 PM, William Burns <mudokonman at gmail.com> wrote:
>>> 
>>>> Hello all,
>>>> 
>>>> I have been working with notifications and most recently I have come
>>>> to look into events generated when a new entry is created.  Now
>>>> normally I would just expect a CacheEntryCreatedEvent to be raised.
>>>> However we currently raise a CacheEntryModifiedEvent event and then a
>>>> CacheEntryCreatedEvent.  I notice that there are comments around the
>>>> code saying that tests require both to be fired.
>>> 
>>> it doesn't sound right to me: modified is different than created.
>> 
>> I’ve lost count the number of times I’ve raised this up in the dev mailing list :|
>> 
>> And, if CacheEntryModifiedEvent has a method called isCreated(), is cos I added it in order to differentiate between a modify and a create without breaking backwards compatibility and expectations of events to be received. Just need to trace back the jira issue number, and associated forum threads ;) :p
> 
> Sorry for missing this till now :-) If it was raised that frequently through, must be because people are confused about it. As we're having a major release next, I think we should get this right, even if breaking backward compatibility, and document it as such in the migration guide.
> 
>> 
>>> 
>>>> 
>>>> I am wondering if anyone has an objection to only raising a
>>>> CacheEntryCreatedEvent on a new cache entry being created.  
>> 
>> It’d break expectations of existing applications that expect certain events. It’s a very difficult one to swallow.
> 
> we're at a major now, so we should break compatibility if it makes sense.
> 
>> 
>> Plus, there’s JCache specifications, which adds listeners, and gets them right. Eventually everyone should move towards that.
> 
> Not sure I understand: JCache raises both an "created" and a "modified" event when an entry is created? or just "created" events? 

JCache differentiates between an entry being created vs being updated, and hence it sends different events depending of which case it is. See JCacheListenerAdapter and JCacheListenerNotifier classes in our JCache impl.

> 
> Cheers,
> -- 
> Mircea Markus
> Infinispan lead (www.infinispan.org)
> 
> 
> 
> 
> 
> _______________________________________________
> infinispan-dev mailing list
> infinispan-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/infinispan-dev


--
Galder Zamarreño
galder at redhat.com
twitter.com/galderz

Project Lead, Escalante
http://escalante.io

Engineer, Infinispan
http://infinispan.org




More information about the infinispan-dev mailing list