ignite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ALEKSEY KUZNETSOV <alkuznetsov...@gmail.com>
Subject Re: TouchedExpiryPolicy works incorrect in some cases IGNITE-4401
Date Mon, 17 Apr 2017 07:44:23 GMT
Why do u think so.
First of all, the output above is not correct. After 3 iteration key-value
API strats to return empty value.

Every 5 seconds(iteration sleep time) repository.getAttributes("1").size()
is got called. Which makes an entry "touch" and the entry wont be expired
for as long as 10 seconds.

Expiry policy says:

An {@link ExpiryPolicy} that defines the expiry {@link Duration}
* of a Cache Entry based on when it was last touched. A touch includes
** creation, update or **access**.*


пт, 14 апр. 2017 г. в 18:42, Denis Magda <dmagda@apache.org>:

> The iteration happens multiple time which means that the key-value API had
> to return an empty result set on second or third iteration. But this never
> happens.
>
> In any case, do you want to find a root of the issue and fix it?
> Otherwise, we can update the description and wait while someone else fixes
> it.
>
> —
> Denis
>
> > On Apr 14, 2017, at 1:33 AM, ALEKSEY KUZNETSOV <alkuznetsov.sb@gmail.com>
> wrote:
> >
> > Because expiry time is 10 seconds, while loop iterates every 5 seconds
> >
> > пт, 14 апр. 2017 г. в 11:32, ALEKSEY KUZNETSOV <alkuznetsov.sb@gmail.com
> >:
> >
> >> No, the bug is in SQL query, not key-value storage.
> >>
> >> пт, 14 апр. 2017 г. в 11:11, Vladislav Pyatkov <vldpyatkov@gmail.com>:
> >>
> >>> Denis, Aleksey,
> >>>
> >>> It is correct, remember I have already said something like[1].
> >>> I have no idea, why this happened in this case with SQL.
> >>>
> >>> [1]:
> >>>
> >>>
> http://apache-ignite-developers.2346864.n4.nabble.com/TouchedExpiryPolicy-works-incorrect-in-some-cases-IGNITE-4401-td16349.html#a16356
> >>>
> >>> On Fri, Apr 14, 2017 at 4:29 AM, Denis Magda <dmagda@apache.org>
> wrote:
> >>>
> >>>> I could reproduce the issue and this should be what Denis K. meant by
> >>>> saying “expiration policy works incorrectly”.
> >>>>
> >>>> If you remove the expiration policy from the caches' configuration
> then
> >>>> the issue disappears. In general, SQL engine processes an expiration
> >>> event
> >>>> properly because the SQL queries return an empty result set as
> expected
> >>> but
> >>>> something doesn’t work well with key-value operations.
> >>>>
> >>>> *Denis K*, *Vlad P.*, as creators of the ticket please confirm that
> this
> >>>> is the case.
> >>>>
> >>>> Please keep debugging this and switch to the latest Ignite version.
> >>>>
> >>>> —
> >>>> Denis
> >>>>
> >>>>
> >>>>> On Apr 13, 2017, at 4:22 AM, ALEKSEY KUZNETSOV <
> >>> alkuznetsov.sb@gmail.com>
> >>>> wrote:
> >>>>>
> >>>>> any feedback?
> >>>>>
> >>>>> чт, 13 апр. 2017 г. в 11:51, ALEKSEY KUZNETSOV <
> >>> alkuznetsov.sb@gmail.com
> >>>>> :
> >>>>>
> >>>>>> You should run ExpiryPolicyTest. The output should contain strings
> >>> like
> >>>>>> contains? new AffinityKey("1", "1"): and contains?2 new
> >>>> AffinityKey("1", "
> >>>>>> 1"): and empty cursor? =
> >>>>>> If you look at them you will see, that cache contains affinity
key
> >>> new
> >>>>>> AffinityKey("1", "1") whereas cursor is empty(on second iteration).
> >>> From
> >>>>>> this output you can conclude SQL query returns icorrect data(empty
> >>>> value)
> >>>>>>
> >>>>>>
> >>>>>> чт, 13 апр. 2017 г. в 3:42, Denis Magda <dmagda@apache.org>:
> >>>>>>
> >>>>>>> Bluntly speaking I have no idea where to look and what to
expect.
> >>> This
> >>>> is
> >>>>>>> output of the test execution of my machine:
> >>>>>>>
> >>>>>>> SQL res: [[1], [d]]
> >>>>>>> 2
> >>>>>>> Op consume: 303
> >>>>>>> Value: org.ignite.test.EDU@22db8f4
> >>>>>>> SQL res: []
> >>>>>>> 0
> >>>>>>> Op consume: 9
> >>>>>>> Value: org.ignite.test.EDU@29caf222
> >>>>>>> SQL res: []
> >>>>>>> 0
> >>>>>>> Op consume: 15
> >>>>>>> Value: org.ignite.test.EDU@7cd1ac19
> >>>>>>> SQL res: []
> >>>>>>> 0
> >>>>>>> Op consume: 5
> >>>>>>>
> >>>>>>> Please be more specific, there are too many files in the
code.
> >>>>>>>
> >>>>>>> —
> >>>>>>> Denis
> >>>>>>>
> >>>>>>>> On Apr 12, 2017, at 4:50 AM, ALEKSEY KUZNETSOV <
> >>>>>>> alkuznetsov.sb@gmail.com> wrote:
> >>>>>>>>
> >>>>>>>> So what do u think about the issue ?
> >>>>>>>>
> >>>>>>>> ср, 12 апр. 2017 г. в 10:42, ALEKSEY KUZNETSOV
<
> >>>>>>> alkuznetsov.sb@gmail.com>:
> >>>>>>>>
> >>>>>>>>> I have already attached simlified version. Shall
i simplify it
> >>> more ?
> >>>>>>>>>
> >>>>>>>>> вт, 11 апр. 2017 г. в 19:28, Denis Magda
<dmagda@apache.org>:
> >>>>>>>>>
> >>>>>>>>> Can you attach the simplified version? Just want
to avoid any
> side
> >>>>>>> effects.
> >>>>>>>>>
> >>>>>>>>> —
> >>>>>>>>> Denis
> >>>>>>>>>
> >>>>>>>>>> On Apr 11, 2017, at 9:14 AM, ALEKSEY KUZNETSOV
<
> >>>>>>> alkuznetsov.sb@gmail.com>
> >>>>>>>>> wrote:
> >>>>>>>>>>
> >>>>>>>>>> I took it from
> https://issues.apache.org/jira/browse/IGNITE-4401
> >>> <
> >>>>>>>>> https://issues.apache.org/jira/browse/IGNITE-4401>
and
> >>> simplified .
> >>>>>>> See
> >>>>>>>>> in attached
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> вт, 11 апр. 2017 г. в 19:03, Denis Magda
<dmagda@apache.org
> >>>> <mailto:
> >>>>>>>>> dmagda@apache.org>>:
> >>>>>>>>>> Hello,
> >>>>>>>>>>
> >>>>>>>>>> Do you have sample code?
> >>>>>>>>>>
> >>>>>>>>>> —
> >>>>>>>>>> Denis
> >>>>>>>>>>> On Apr 11, 2017, at 2:45 AM, ALEKSEY KUZNETSOV
<
> >>>>>>>>> alkuznetsov.sb@gmail.com <mailto:alkuznetsov.sb@gmail.com>>
> >>> wrote:
> >>>>>>>>>>>
> >>>>>>>>>>> Hi, igniters!
> >>>>>>>>>>> While doing https://issues.apache.org/jira/browse/IGNITE-4401
> <
> >>>>>>>>> https://issues.apache.org/jira/browse/IGNITE-4401>
ticket i came
> >>>>>>>>>>> across the fact that cache querying returns
null , while cache
> >>>> still
> >>>>>>>>> has
> >>>>>>>>>>> got entry.
> >>>>>>>>>>> Cache query : SELECT nameProp FROM EDUProp
WHERE EDUId = 1
> >>>>>>>>>>> Cache get operation : ignite().cache("eduPropCache").get(new
> >>>>>>>>> AffinityKey("1",
> >>>>>>>>>>> "1")) non-null
> >>>>>>>>>>> I cannot even imagine what could be wrong
with it.
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>> --
> >>>>>>>>>>>
> >>>>>>>>>>> *Best Regards,*
> >>>>>>>>>>>
> >>>>>>>>>>> *Kuznetsov Aleksey*
> >>>>>>>>>>
> >>>>>>>>>> --
> >>>>>>>>>> Best Regards,
> >>>>>>>>>>
> >>>>>>>>>> Kuznetsov Aleksey
> >>>>>>>>>>
> >>>>>>>>>
> >>>>>>>>> --
> >>>>>>>>>
> >>>>>>>>> *Best Regards,*
> >>>>>>>>>
> >>>>>>>>> *Kuznetsov Aleksey*
> >>>>>>>>>
> >>>>>>>> --
> >>>>>>>>
> >>>>>>>> *Best Regards,*
> >>>>>>>>
> >>>>>>>> *Kuznetsov Aleksey*
> >>>>>>>
> >>>>>>> --
> >>>>>>
> >>>>>> *Best Regards,*
> >>>>>>
> >>>>>> *Kuznetsov Aleksey*
> >>>>>>
> >>>>> --
> >>>>>
> >>>>> *Best Regards,*
> >>>>>
> >>>>> *Kuznetsov Aleksey*
> >>>>
> >>>>
> >>>
> >>>
> >>> --
> >>> Vladislav Pyatkov
> >>>
> >> --
> >>
> >> *Best Regards,*
> >>
> >> *Kuznetsov Aleksey*
> >>
> > --
> >
> > *Best Regards,*
> >
> > *Kuznetsov Aleksey*
>
> --

*Best Regards,*

*Kuznetsov Aleksey*

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