As I can see from GridCacheSwapManager code Ignite doesn't fire eviction events from offheap.
On offheap evict GridCacheSwapManager does teh following: 1. Updates onOffheapEvict metric if enabled 2. Fires EVT_CACHE_OBJECT_SWAPPED event if swap enabled. On Tue, May 17, 2016 at 3:44 AM, Dmitriy Setrakyan <dsetrak...@apache.org> wrote: > Guys, > > Resending this question to the dev list. Doesn’t Ignite fire an eviction > event whenever an entry is evicted from off-heap memory? > > D. > > ---------- Forwarded message ---------- > From: Alexei Scherbakov <alexey.scherbak...@gmail.com> > Date: Mon, May 16, 2016 at 1:33 AM > Subject: Re: Eviction Events with offheap values > To: u...@ignite.apache.org > > > Andrey, thanks for the clarification. > > Abraham, it seems EvictionPolicy is not appropriate solution for your case. > BTW, why user session expiration logic is related to cache size ? > In case user sessions expire by timeout the more appropriate solution would > be listening to > EVT_CACHE_OBJECT_EXPIRED event. > You can also set eager expiration by calling > CacheConfiguration.setEagerTtl(true) > to make Ignite expire values automatically. > > Did this help? > > > 2016-05-13 19:49 GMT+03:00 Andrey Gura <ag...@gridgain.com>: > > > Alexei, Abraham, > > > > Eviction policy configuration doesn't make sense for OFFHEAP_TIERED mode. > > Eviction policy works only for on heap entries in order to evict entries > to > > offheap. > > > > For eviction of entries from offheap memory Ignite internaly uses other > > LRU eviction policy and there is no way to change this behaviour via > > configuration. > > > > On Thu, May 12, 2016 at 7:14 PM, Alexei Scherbakov < > > alexey.scherbak...@gmail.com> wrote: > > > >> Hi, > >> > >> I was not able to reproduce your case. > >> In my test I have correct old value on eviction event. > >> Please provide a reproducer. > >> > >> BTW: what are you trying to accomplish? Generally events are not very > >> good for cluster performance and may not be delivered in case of the > >> listener node failure. > >> > >> 2016-05-10 9:26 GMT+03:00 abraham <a.muel...@qriously.com>: > >> > >>> Hi, > >>> > >>> I am re-posting an earlier message to which I did not get any replies > >>> because I was not subscribed to the mailing list: > >>> > >>> I am trying to get the values from the eviction events. This works fine > >>> with > >>> the ONHEAP_TIERED version but not with OFFHEAP_VALUES and > OFFHEAP_TIERED > >>> - > >>> in that cases the hasOldValue is true but the actual value is null. > >>> > >>> What we are trying to accomplish is to persist entries to a database > only > >>> when they either get removed, expired or evicted because the max cache > >>> size > >>> is reached and it looks like those events are the only way to > accomplish > >>> this. > >>> > >>> A quick glance at the code would suggest that in the > >>> org.apache.ignite.internal.processors.cache.GridCacheEvictionManager > one > >>> could replace line 708 from > >>> > >>> CacheObject oldVal = recordable ? entry.rawGet() : null; > >>> > >>> to > >>> > >>> CacheObject oldVal = recordable ? entry.rawGetOrUnmarshal(false) : > null; > >>> > >>> to get the values attached to the events. Would that work? > >>> > >>> Thanks, > >>> > >>> Abraham > >>> > >>> > >>> > >>> -- > >>> View this message in context: > >>> > http://apache-ignite-users.70518.x6.nabble.com/Eviction-Events-with-offheap-values-tp4853.html > >>> Sent from the Apache Ignite Users mailing list archive at Nabble.com. > >>> > >> > >> > >> > >> -- > >> > >> Best regards, > >> Alexei Scherbakov > >> > > > > > > > > -- > > Andrey Gura > > GridGain Systems, Inc. > > www.gridgain.com > > > > > > -- > > Best regards, > Alexei Scherbakov > -- Andrey Gura GridGain Systems, Inc. www.gridgain.com