Re: How to monitor page eviction ?

2018-02-21 Thread Sergey Bezrukov
Hi, Ivan, thanks for your response. We found that cause of data loss was in
our code (incorrect datastreamer usage), so our favorite IMDG isn't
responsible for it.


Best regards,
Sergey

20 февр. 2018 г. 19:04 пользователь "Ivan Rakov" 
написал:

Sergey,

Pages can't be evicted unless you configure data page eviction mode (see
DataPageEvictionMode). If page eviction is disabled and you still miss your
data, the problem is caused by something else.

Regarding message in log about page eviction start: there's a ticket about
it, but unfortunately it's stuck in Patch Available state:
https://issues.apache.org/jira/browse/IGNITE-5151
I'll find committer who'll merge it to the master.
If you still want to know whether eviction happened, I can suggest you a
workaround. Try calling org.apache.ignite.internal.pro
cessors.cache.persistence.DataRegionMetricsImpl#getTotalAllocatedSize. If
it shows >90% of your data region maximum size
(DataRegionConfiguration#maxSize), page eviction should have started.

Best Regards,
Ivan Rakov


On 20.02.2018 18:34, Sergey Bezrukov wrote:

> Hi,
>
> we use Ignite as DataGrid and want to store data in cache forever as
> we, for sure, have enough RAM to fit in. These data are just
> dictionaries, less than 1M recordrs each.
>
> Our deployment for now is 3 server nodes with several caches, each
> configured in "replicated:" mode, There are one "master-service" for
> particular cache which is only responsible for cache update/load and
> tens of readonly "consumers". We use standart off-heap configuration
> without Persistence.
>
> According to docs, there is no expire policy configured by default, so
> I assumed we're limited by RAM only. But today I found some data
> missing and the only explanation I have for now is that those pages
> were evicted for some reason.  Is there any way to find out when and
> why page eviction take place for certain cache? Can we log it on
> server nodes for future analysis?
>
> Thanks.
> --
> Sergey Bezrukov
>


Re: How to monitor page eviction ?

2018-02-20 Thread Ivan Rakov

Sergey,

Pages can't be evicted unless you configure data page eviction mode (see 
DataPageEvictionMode). If page eviction is disabled and you still miss 
your data, the problem is caused by something else.


Regarding message in log about page eviction start: there's a ticket 
about it, but unfortunately it's stuck in Patch Available state: 
https://issues.apache.org/jira/browse/IGNITE-5151

I'll find committer who'll merge it to the master.
If you still want to know whether eviction happened, I can suggest you a 
workaround. Try calling 
org.apache.ignite.internal.processors.cache.persistence.DataRegionMetricsImpl#getTotalAllocatedSize. 
If it shows >90% of your data region maximum size 
(DataRegionConfiguration#maxSize), page eviction should have started.


Best Regards,
Ivan Rakov

On 20.02.2018 18:34, Sergey Bezrukov wrote:

Hi,

we use Ignite as DataGrid and want to store data in cache forever as
we, for sure, have enough RAM to fit in. These data are just
dictionaries, less than 1M recordrs each.

Our deployment for now is 3 server nodes with several caches, each
configured in "replicated:" mode, There are one "master-service" for
particular cache which is only responsible for cache update/load and
tens of readonly "consumers". We use standart off-heap configuration
without Persistence.

According to docs, there is no expire policy configured by default, so
I assumed we're limited by RAM only. But today I found some data
missing and the only explanation I have for now is that those pages
were evicted for some reason.  Is there any way to find out when and
why page eviction take place for certain cache? Can we log it on
server nodes for future analysis?

Thanks.
--
Sergey Bezrukov




How to monitor page eviction ?

2018-02-20 Thread Sergey Bezrukov
Hi,

we use Ignite as DataGrid and want to store data in cache forever as
we, for sure, have enough RAM to fit in. These data are just
dictionaries, less than 1M recordrs each.

Our deployment for now is 3 server nodes with several caches, each
configured in "replicated:" mode, There are one "master-service" for
particular cache which is only responsible for cache update/load and
tens of readonly "consumers". We use standart off-heap configuration
without Persistence.

According to docs, there is no expire policy configured by default, so
I assumed we're limited by RAM only. But today I found some data
missing and the only explanation I have for now is that those pages
were evicted for some reason.  Is there any way to find out when and
why page eviction take place for certain cache? Can we log it on
server nodes for future analysis?

Thanks.
--
Sergey Bezrukov