ignite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Valentin Kulichenko <valentin.kuliche...@gmail.com>
Subject Re: CacheConfiguration reusage issues with EvictionPolicy enabled.
Date Fri, 20 Oct 2017 22:51:56 GMT
I don't think it's a big problem. But it would be great if someone better
experienced in Hadoop stuff chimes in.

-Val

On Fri, Oct 20, 2017 at 8:50 AM, Andrey Mashenkov <
andrey.mashenkov@gmail.com> wrote:

> Val,
>
> It doesn't look possible to do without refactoring.
> I've make a PR#2896 [1] with a fix and want to someone look at it
> as I'm not familiar with Hadoop module.
>
> Will it be ok to left it "as is" for now and create a ticket for
> refactoring?
>
>
> On Fri, Oct 20, 2017 at 3:15 AM, Valentin Kulichenko <
> valentin.kulichenko@gmail.com> wrote:
>
> > Andrey,
> >
> > Using factory instead of policy instance in configuration makes sense to
> > me, I think we should do this change.
> >
> > As for Hadoop module issue, is it possible to do the mentioned validation
> > after creating the policy? I think that should fix the problem.
> >
> > -Val
> >
> > On Thu, Oct 19, 2017 at 7:50 AM Andrey Mashenkov <
> > andrey.mashenkov@gmail.com>
> > wrote:
> >
> > > Hi Igniters,
> > >
> > > I'm working on a ticket IGNITE-6649 [1] and got stuck.
> > > Currently, we allow user to set EvictionPolicy instance into
> > configuration
> > > instead of factory.
> > > The leads to some isses when user tries to reuse EvictionPolicy
> instance,
> > > e.g. it doesn't clean its queue on cache stop.
> > >
> > > Seems, we should replace EvictionPolicy with its factory as policy
> objec
> > is
> > > a statefull object and current approach is error prone.
> > >
> > > The issue I faced is that we make checks for EvicitonPolicy derives
> some
> > > known class in several code places.
> > > E.g. in HadoopModule you can find IgfsPerBlockLruEvictionPolicy usages.
> > > What will be correct way to overwork this with using facrories?
> > >
> > >
> > > Also, I've noticed that we check EvictionPolicy instances if they
> > implement
> > > LifecycleAware interface and no one policy available out-of-box really
> > > implements it.
> > > The second way here is to make these EvictionPolicies implements
> > > LifecycleAware interface and gracefully clean their queues.
> > > This will resolve the issue for case when user recreate cache with same
> > > configuration instance,
> > > but seem will not help in case when user share EvictionPolicy instance
> > for
> > > several caches.
> > >
> > >
> > > Also`EvictionPolicies has non-transient "queue" field, so queue may
> leak
> > to
> > > another node.
> > > I'm not sure it can happens, I'll check.
> > >
> > > Thoughts?
> > >
> > >
> > >
> > > [1] https://issues.apache.org/jira/browse/IGNITE-6649
> > >
> > > --
> > > Best regards,
> > > Andrey V. Mashenkov
> > >
> >
>
>
>
> --
> Best regards,
> Andrey V. Mashenkov
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message