ignite-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dmitry Karachentsev <dkarachent...@gridgain.com>
Subject Re: Quick questions on Evictions
Date Tue, 05 Sep 2017 06:48:59 GMT
Hi John,

1. Actually it is. By default data page eviction is disabled 
(DataPageEvictionMode.DISABLED) and when no memory left, it will throw 
2. If you have enabled persistence - no data will be lost, dirty pages 
will be written do disk. In other words Ignite starts swapping pages 
between memory and drive using RANDOM_LRU eviction mode.
3. Ignite 2.0+ works only with pages, so you cannot set eviction per 
entry. If page was modified - it will be marked as dirty and fully 
written to disk.


04.09.2017 21:33, John Wilson пишет:
> I appreciate the nice explanation. I got a few more questions:
>  1. For the case where on-heap caching and persistent are both
>     disabled, why does Ignite throw out out-dated pages from off-heap?
>     Why not throw OOM error since the out-dated pages are not backed
>     by persistent store and throwing away results in data loss?
>  2. For off-heap eviction with persistent store enabled, will entries
>     evicted from data pages be written to disk (in case they are
>     dirty) or will they be thrown away (which would imply that entries
>     eligible for eviction must be clean and have already been written
>     to disk by checkpointing)?
>  3.  Checkpointing works by locating dirty pages and writing them out.
>     If a single entry in a data page is dirty (has been updated since
>     the last check pointing), will checkpointing write the entire data
>     page (all entries) to the partition files or just the dirty entry?
> Thanks!
> On Mon, Sep 4, 2017 at 8:17 AM, dkarachentsev 
> <dkarachentsev@gridgain.com <mailto:dkarachentsev@gridgain.com>> wrote:
>     Hi,
>     Assume you have disabled onheapCahe and disabled persistence. In
>     that case
>     you may configure only datapage eviction mode, then outdated pages
>     will be
>     thrown away, when no free memory will be available for Ignite.
>     Also you
>     cannot configure per-entry eviction.
>     OK, if you enable onheapCache, then Ignite will store on heap
>     every entry
>     that was read from off-heap (or disk). Next reads of it will not
>     require
>     off-heap readings, and every update will write to off-heap. To
>     limit size of
>     onheapCache you may set CacheConfiguration.setEvictionPolicy(),
>     but it will
>     not evict off-heap entries.
>     So, off-heap eviction may be controlled with DataPageEvictionMode
>     only, and
>     as you suggested, it clears entries one-by-one from page, checking for
>     current locks (transaction locks as well). If entry is locked, it
>     won't be
>     evicted.
>     Thanks!
>     -Dmitry.
>     --
>     Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>     <http://apache-ignite-users.70518.x6.nabble.com/>

View raw message