Folks,

I’ve updated the documentation avoiding any misunderstanding - " If Ignite 
Persistence is enabled then the page-based evictions have no effect because the 
oldest pages will be evicted from RAM automatically if there is not enough 
space available.”

https://apacheignite.readme.io/v2.1/docs/evictions 
<https://apacheignite.readme.io/v2.1/docs/evictions>

BTW, why can’t we make the eviction customizable when the store is used? Don’t 
see any issue with that from the user perspective.

—
Denis

> On Aug 10, 2017, at 2:18 AM, Ivan Rakov <ivan.glu...@gmail.com> wrote:
> 
> Hi!
> 
> 
> I'm afraid, description of page-based eviction in documentation is not quite 
> correct.
> Page-based eviction (RANDOM_LRU or RANDOM_2_LRU) can be activated only if 
> persistent store is disabled. It defines algorithm for choosing page in RAM 
> to remove all contents completely.
> On the other hand, when persistent store is enabled, eviction from RAM to 
> disk is enabled by default and is not customizable by user. So answer to 
> first question 1 is no - you shouldn't specify anything in configuration to 
> make disk eviction work.
> 
> About question 2 - You will lose partition after crash of N1. Losing of 
> partition is always undesirable scenario. By default, partition will be 
> reset, and you can't say for sure which version of partition (old from disk 
> or new from another node) will be resolved as actual after join of N1.
> Safe solution - configure backup nodes. Your data will be safe at N3.
> Another safe solution - set safe partition loss policy (e.g. 
> PartitionLossPolicy.READ_WRITE_SAFE). All reads/writes from lost partition 
> will throw an exception until crashed node N1 returns to the topology. After 
> that, "1" entry will be recovered.
> 
> 
> Thanks for raising this topic, we'll fix the documentation soon.
> Best Regards, 
> Ivan Rakov
> 
> On 10.08.2017 5:38, userx wrote:
>> Hi team,
>> 
>> I was going through the documentation of durable memory at
>> https://apacheignite.readme.io/docs/durable-memory 
>> <https://apacheignite.readme.io/docs/durable-memory>
>> 
>> As per the documentation, durable memory comes into picture when
>> PersistentStore configuration is enabled. Now durable memory uses both
>> RAM(hot data) and disk (superset). When the RAM part reaches a threshold
>> (80% by default as per the documentation), the durable data retains only hot
>> data in RAM and rest on the disk.
>> 
>> QUESTION 1
>> So does that mean that there is a default eviction policy which comes into
>> existence ? Or does the user explicitly has to mention the same in
>> configuration ? What happens if he does not mention the eviction policy in
>> configuration ?
>> 
>> Suppose there are 2 nodes N1 (different physical box) and N2 (different
>> physical box) and the data is distributed in PARTITIONED mode and persistent
>> store is enabled. 
>> 
>> Here is the example of entries
>> 
>> N1-> "1","X"
>> N2-> "2","Y"
>> 
>> QUESTION 2
>> Suppose N1 crashes and goes down and does not come up at all for say 5
>> hours. Is "1" retrievable at all during that time if N1 went down after an
>> entry to its WAL file or we loose N1 ? If say the entry was not able to be
>> made in WAL file and should we have configured a back up as N3 (different
>> physical box), would it have saved "1" ?
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> --
>> View this message in context: 
>> http://apache-ignite-users.70518.x6.nabble.com/Persistent-store-and-eviction-policy-tp16092.html
>>  
>> <http://apache-ignite-users.70518.x6.nabble.com/Persistent-store-and-eviction-policy-tp16092.html>
>> Sent from the Apache Ignite Users mailing list archive at Nabble.com.
> 

Reply via email to