You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by Raymond Wilson <ra...@trimble.com> on 2018/02/13 21:28:37 UTC

Write ahead log and early eviction of new elements

I have a scenario I would like to validate when using Ignite Persistence.



I understand when I add an element to a cache that element is serialized,
placed into the local memory for the cache on that server and then placed
into the WAL pending checkpointing (merging into the persistence store).



What happens if the newly added element is evicted and then re-read from
the cache by the client before the next checkpoint occurs?



Thanks,

Raymond.

Re: Write ahead log and early eviction of new elements

Posted by Denis Magda <dm...@apache.org>.
My guess before the entry (element) gets evicted it will be synced to a respective partition file on disk forcibly so that you can grab it from there later. 

Ignite persistence experts please confirm my understanding.

โ€”
Denis

> On Feb 13, 2018, at 1:28 PM, Raymond Wilson <ra...@trimble.com> wrote:
> 
> I have a scenario I would like to validate when using Ignite Persistence.
>  
> I understand when I add an element to a cache that element is serialized, placed into the local memory for the cache on that server and then placed into the WAL pending checkpointing (merging into the persistence store).
>  
> What happens if the newly added element is evicted and then re-read from the cache by the client before the next checkpoint occurs?
>  
> Thanks,
> Raymond.
>  


Re: Write ahead log and early eviction of new elements

Posted by Denis Magda <dm...@apache.org>.
My guess before the entry (element) gets evicted it will be synced to a respective partition file on disk forcibly so that you can grab it from there later. 

Ignite persistence experts please confirm my understanding.

โ€”
Denis

> On Feb 13, 2018, at 1:28 PM, Raymond Wilson <ra...@trimble.com> wrote:
> 
> I have a scenario I would like to validate when using Ignite Persistence.
>  
> I understand when I add an element to a cache that element is serialized, placed into the local memory for the cache on that server and then placed into the WAL pending checkpointing (merging into the persistence store).
>  
> What happens if the newly added element is evicted and then re-read from the cache by the client before the next checkpoint occurs?
>  
> Thanks,
> Raymond.
>  


RE: Write ahead log and early eviction of new elements

Posted by Raymond Wilson <ra...@trimble.com>.
Thanks for the clarification Mike ๐Ÿ˜Š

-----Original Message-----
From: Mikhail [mailto:michael.cherkasov@gmail.com]
Sent: Thursday, February 15, 2018 5:15 AM
To: user@ignite.apache.org
Subject: Re: Write ahead log and early eviction of new elements

Hi Raymond,

>I understand when I add an element to a cache that element is
>serialized, placed into the local memory for the cache on that server
>and then placed into the WAL pending checkpointing (merging into the
>persistence store).

First, the update will be written into WAL and only then into local memory.


>What happens if the newly added element is evicted and  then re-read
>from the cache by the client before the next checkpoint  occurs?

What do you mean by "evicted"? Ignite evicts memory pages to a disk if
there's not enough space to save new record or it needs to load a page from
disk and for this purpose, it will evict some page from memory.
But it will evict the only page that is already saved to the disk.

Thanks,
Mike.






--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/

Re: Write ahead log and early eviction of new elements

Posted by Dmitry Pavlov <dp...@gmail.com>.
Hi Michail,

To avoid confusion between real evictions and PDS-enabled region pages
rotation with disk we've desided to call second process as 'page
replacement'.

In future releases all messages related to page purge to disk will contain
'page replacement' instead of eviction. Hope it helps to separate these two
process.

Sincerely,
Dmitriy Pavlov

ัั€, 14 ั„ะตะฒั€. 2018 ะณ. ะฒ 19:14, Mikhail <mi...@gmail.com>:

> Hi Raymond,
>
> >I understand when I add an element to a cache that element is serialized,
> >placed into the local memory for the cache on that server and then placed
> >into the WAL pending checkpointing (merging into the persistence store).
>
> First, the update will be written into WAL and only then into local memory.
>
>
> >What happens if the newly added element is evicted and
> > then re-read from the cache by the client before the next checkpoint
> > occurs?
>
> What do you mean by "evicted"? Ignite evicts memory pages to a disk if
> there's not enough space to save new record or it needs to load a page from
> disk and for this purpose, it will evict some page from memory.
> But it will evict the only page that is already saved to the disk.
>
> Thanks,
> Mike.
>
>
>
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>

Re: Write ahead log and early eviction of new elements

Posted by Mikhail <mi...@gmail.com>.
Hi Raymond,

>I understand when I add an element to a cache that element is serialized, 
>placed into the local memory for the cache on that server and then placed 
>into the WAL pending checkpointing (merging into the persistence store).

First, the update will be written into WAL and only then into local memory.

 
>What happens if the newly added element is evicted and
> then re-read from the cache by the client before the next checkpoint
> occurs?

What do you mean by "evicted"? Ignite evicts memory pages to a disk if
there's not enough space to save new record or it needs to load a page from
disk and for this purpose, it will evict some page from memory.
But it will evict the only page that is already saved to the disk.

Thanks,
Mike.






--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/