On 05 Feb 2014, at 15:38, Mircea Markus <mmarkus(a)redhat.com> wrote:
On Feb 3, 2014, at 4:07 PM, Galder Zamarreño <galder(a)redhat.com> wrote:
>>
>> On Jan 23, 2014, at 5:48 PM, William Burns <mudokonman(a)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(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/infinispan-dev
--
Galder Zamarreño
galder(a)redhat.com
twitter.com/galderz
Project Lead, Escalante
http://escalante.io
Engineer, Infinispan
http://infinispan.org