Alexander, thanks. Please move the ticket from “open” into “patch available” state in JIRA and run the tests on TeamCity. Refer to the details covered there https://cwiki.apache.org/confluence/display/IGNITE/How+to+Contribute#HowtoContribute-1.CreateGitHubpull-request <https://cwiki.apache.org/confluence/display/IGNITE/How+to+Contribute#HowtoContribute-1.CreateGitHubpull-request>
— Denis > On Dec 29, 2016, at 3:45 AM, Александр Меньшиков <sharple...@gmail.com> wrote: > > Alexey, I'm already make pull request where throw exception in that place. > > https://github.com/apache/ignite/pull/1388/commits > > 2016-12-29 11:16 GMT+03:00 Alexey Goncharuk <alexey.goncha...@gmail.com>: > >> I think that If fallbacks(...) returns an empty nodes collection, then we >> should fail with an exception. >> >> 2016-12-28 22:06 GMT+03:00 Denis Magda <dma...@apache.org>: >> >>> Alexander, added you to the contributors list. Please check that you can >>> assign the ticket on yourself. >>> >>> — >>> Denis >>> >>>> On Dec 28, 2016, at 2:15 AM, Александр Меньшиков <sharple...@gmail.com >>> >>> wrote: >>>> >>>> >>>> Username: sharpler >>>> >>>> Full Name: Alexander Menshikov >>>> >>>> >>>> >>>> 2016-12-27 22:57 GMT+03:00 Denis Magda <dma...@apache.org <mailto: >>> dma...@apache.org>>: >>>> Alexander, >>>> >>>> I need to know your JIRA ID in order to add you to the contributors >> list. >>>> >>>> As for your questions, this situation might be caused by the race when >> a >>> cache is being stopped and there are still scan queries running in >>> parallel. So, in general it’s not about data loss. >>>> >>>> Sam, Alex G., could you share your thoughts in regards to the proper >> fix? >>>> >>>> — >>>> Denis >>>> >>>>> On Dec 26, 2016, at 2:43 AM, Александр Меньшиков < >> sharple...@gmail.com >>> <mailto:sharple...@gmail.com>> wrote: >>>>> >>>>> Hello everyone. >>>>> >>>>> I want to pick up *https://issues.apache.org/jira/browse/IGNITE-4487 >> < >>> https://issues.apache.org/jira/browse/IGNITE-4487> >>>>> <https://issues.apache.org/jira/browse/IGNITE-4487 < >>> https://issues.apache.org/jira/browse/IGNITE-4487>>* as my >>>>> first issue. >>>>> >>>>> Please add me as contributor. >>>>> >>>>> I already found that: in inner class >>>>> 'GridCacheQueryAdapter.ScanQueryFallbackClosableIterator' in >>> constructor is >>>>> called with method 'init()', but method 'init()' cannot be called >> with >>> an >>>>> empty field 'nodes'. In source code it looks like: >>>>> >>>>> private ScanQueryFallbackClosableIterator(int part, >>> GridCacheQueryAdapter >>>>> qry, >>>>> GridCacheQueryManager qryMgr, GridCacheContext cctx) { >>>>> this.qry = qry; >>>>> this.qryMgr = qryMgr; >>>>> this.cctx = cctx; >>>>> this.part = part; >>>>> >>>>> nodes = fallbacks(cctx.discovery().topologyVersionEx()); >>>>> // !!! Here nodes.isEmpty()==true, and init() will fail in >>> the >>>>> future. !!! >>>>> init(); >>>>> } >>>>> >>>>> I can fix it by adding some check in code, but i must know what >>> behavior >>>>> are best in this case? As I understand it, the list of nodes is empty >>> if >>>>> there are no nodes with the current partition, which means data loss, >>> and >>>>> either need to return a meaningful exception, or ignore this >>> situation. But >>>>> maybe I missed something. >>>> >>>> >>> >>> >>