It doesn’t matter who is right and who is wrong unless someone gets to the bottom of the issue debugging it.
I would suggest to create a simple unit test with two caches and trying to reproduce the following without computations and other redundant stuff. Would you like to work on this? — Denis > On Apr 17, 2017, at 12:44 AM, ALEKSEY KUZNETSOV <alkuznetsov...@gmail.com> > wrote: > > 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 <dma...@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...@gmail.com> >> wrote: >>> >>> Because expiry time is 10 seconds, while loop iterates every 5 seconds >>> >>> пт, 14 апр. 2017 г. в 11:32, ALEKSEY KUZNETSOV <alkuznetsov...@gmail.com >>> : >>> >>>> No, the bug is in SQL query, not key-value storage. >>>> >>>> пт, 14 апр. 2017 г. в 11:11, Vladislav Pyatkov <vldpyat...@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 <dma...@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...@gmail.com> >>>>>> wrote: >>>>>>> >>>>>>> any feedback? >>>>>>> >>>>>>> чт, 13 апр. 2017 г. в 11:51, ALEKSEY KUZNETSOV < >>>>> alkuznetsov...@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 <dma...@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...@gmail.com> wrote: >>>>>>>>>> >>>>>>>>>> So what do u think about the issue ? >>>>>>>>>> >>>>>>>>>> ср, 12 апр. 2017 г. в 10:42, ALEKSEY KUZNETSOV < >>>>>>>>> alkuznetsov...@gmail.com>: >>>>>>>>>> >>>>>>>>>>> I have already attached simlified version. Shall i simplify it >>>>> more ? >>>>>>>>>>> >>>>>>>>>>> вт, 11 апр. 2017 г. в 19:28, Denis Magda <dma...@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...@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 <dma...@apache.org >>>>>> <mailto: >>>>>>>>>>> dma...@apache.org>>: >>>>>>>>>>>> Hello, >>>>>>>>>>>> >>>>>>>>>>>> Do you have sample code? >>>>>>>>>>>> >>>>>>>>>>>> — >>>>>>>>>>>> Denis >>>>>>>>>>>>> On Apr 11, 2017, at 2:45 AM, ALEKSEY KUZNETSOV < >>>>>>>>>>> alkuznetsov...@gmail.com <mailto:alkuznetsov...@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*