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

Reply via email to