Vladimir Ozerov created IGNITE-4145: ---------------------------------------
Summary: "No query result found for request" exception when running multiple queries concurrently. Key: IGNITE-4145 URL: https://issues.apache.org/jira/browse/IGNITE-4145 Project: Ignite Issue Type: Bug Components: SQL Affects Versions: 1.7 Reporter: Vladimir Ozerov Assignee: Andrew Mashenkov Fix For: 1.8 When many queries are executed simultaneously in multi-node cluster, the following exception might appear from time to time: {code} Exception in thread "qry-exec-20" javax.cache.CacheException: Failed to fetch data from node: 3432842f-2fa2-44b9-b69b-cadba286d317 at org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor$3.fetchNextPage(GridReduceQueryExecutor.java:298) at org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndex.fetchNextPage(GridMergeIndex.java:229) at org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndexUnsorted$1.hasNext(GridMergeIndexUnsorted.java:106) at org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndex$IteratorCursor.next(GridMergeIndex.java:351) at org.apache.ignite.internal.processors.query.h2.twostep.GridMergeIndex$FetchingCursor.next(GridMergeIndex.java:382) at org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.query(GridReduceQueryExecutor.java:640) at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$4.iterator(IgniteH2Indexing.java:1057) at org.apache.ignite.internal.processors.cache.QueryCursorImpl.iterator(QueryCursorImpl.java:81) at org.apache.ignite.yardstick.ringcentral.AdgRunner$QueryExecutor.run(AdgRunner.java:394) at java.lang.Thread.run(Thread.java:745) Suppressed: javax.cache.CacheException: Failed to execute map query on the node: c51bc4f2-7038-4df6-88a9-eb87506c2f86, class javax.cache.CacheException:No query result found for request: GridQueryNextPageRequest [qryReqId=93, qry=0, pageSize=1024] at org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.fail(GridReduceQueryExecutor.java:259) at org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.onFail(GridReduceQueryExecutor.java:249) at org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.onMessage(GridReduceQueryExecutor.java:230) at org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor$1.onMessage(GridReduceQueryExecutor.java:178) at org.apache.ignite.internal.managers.communication.GridIoManager$ArrayListener.onMessage(GridIoManager.java:1900) at org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1080) at org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:708) at org.apache.ignite.internal.managers.communication.GridIoManager.access$1700(GridIoManager.java:101) at org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:671) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ... 1 more {code} Quick analysis shows that next-page request could possibly arrive before original query message is processed. Need to confirm it with deeper debugging first. The best way to reproduce it: 1) Generate some data 2) Start several data nodes (e.g. 4) 3) Start client node 4) Concurrently execute multiple SQL queries from the client in different threads. P.S.: May be cache start message gets delayed in IO manager during start? -- This message was sent by Atlassian JIRA (v6.3.4#6332)