You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by Aleksey Kuznetsov <al...@gmail.com> on 2018/06/19 10:10:59 UTC

Entries are not loaded into cache during cache store loading

Hi, Igniters!

During test bug fixing [1], I stumbled on the following issue:
When we perform cache store loading and start several nodes
simulateneously, some entries might not be loaded into cache.

Entry is loaded in `GridDhtCacheAdapter#loadEntry`, but it fails on
`ctx.group().topology().localPartition()`
because partition is moved to another node during rebalancing.

One possible solution to this issue is to block PME if cache store loading
is in progress.
But there is drawback: PME might hang for a long period and will lead to
massive data rebalancing.

Another solution is to cancel cache store loading if PME is started.
Exception should be thrown to user, so he has got possibility to reinitiate
cache store loading procedure.

Personally, I like first solution more: user might prefer PME hang than
canceling cache store loading.
I think, we should warn user about PME hang when he starts cache store
loading.

What do u think on this issue ?

[1] : https://issues.apache.org/jira/browse/IGNITE-4210

Re: Entries are not loaded into cache during cache store loading

Posted by Aleksey Kuznetsov <al...@gmail.com>.
Hi, Nikolay.

Yes.

вт, 19 июн. 2018 г. в 13:18, Nikolay Izhikov <ni...@apache.org>:

> Hello, Aleksey.
>
> By "cache store" you mean 3-d party cache store [1] ?
>
> https://apacheignite.readme.io/docs/3rd-party-store
>
> В Вт, 19/06/2018 в 13:10 +0300, Aleksey Kuznetsov пишет:
> > Hi, Igniters!
> >
> > During test bug fixing [1], I stumbled on the following issue:
> > When we perform cache store loading and start several nodes
> > simulateneously, some entries might not be loaded into cache.
> >
> > Entry is loaded in `GridDhtCacheAdapter#loadEntry`, but it fails on
> > `ctx.group().topology().localPartition()`
> > because partition is moved to another node during rebalancing.
> >
> > One possible solution to this issue is to block PME if cache store
> loading
> > is in progress.
> > But there is drawback: PME might hang for a long period and will lead to
> > massive data rebalancing.
> >
> > Another solution is to cancel cache store loading if PME is started.
> > Exception should be thrown to user, so he has got possibility to
> reinitiate
> > cache store loading procedure.
> >
> > Personally, I like first solution more: user might prefer PME hang than
> > canceling cache store loading.
> > I think, we should warn user about PME hang when he starts cache store
> > loading.
> >
> > What do u think on this issue ?
> >
> > [1] : https://issues.apache.org/jira/browse/IGNITE-4210

Re: Entries are not loaded into cache during cache store loading

Posted by Nikolay Izhikov <ni...@apache.org>.
Hello, Aleksey.

By "cache store" you mean 3-d party cache store [1] ?

https://apacheignite.readme.io/docs/3rd-party-store

В Вт, 19/06/2018 в 13:10 +0300, Aleksey Kuznetsov пишет:
> Hi, Igniters!
> 
> During test bug fixing [1], I stumbled on the following issue:
> When we perform cache store loading and start several nodes
> simulateneously, some entries might not be loaded into cache.
> 
> Entry is loaded in `GridDhtCacheAdapter#loadEntry`, but it fails on
> `ctx.group().topology().localPartition()`
> because partition is moved to another node during rebalancing.
> 
> One possible solution to this issue is to block PME if cache store loading
> is in progress.
> But there is drawback: PME might hang for a long period and will lead to
> massive data rebalancing.
> 
> Another solution is to cancel cache store loading if PME is started.
> Exception should be thrown to user, so he has got possibility to reinitiate
> cache store loading procedure.
> 
> Personally, I like first solution more: user might prefer PME hang than
> canceling cache store loading.
> I think, we should warn user about PME hang when he starts cache store
> loading.
> 
> What do u think on this issue ?
> 
> [1] : https://issues.apache.org/jira/browse/IGNITE-4210