连接具有大量条目的表会引发异常

时间:2017-02-21 14:32:02

标签: java caching ignite

我正在使用Apache Ignite并尝试使用SqlFieldsQuery加入多个缓存。如果其中一个缓存有200万条记录,则会抛出以下异常:

Exception in thread "main" javax.cache.CacheException: Failed to run map query remotely.
    at org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.query(GridReduceQueryExecutor.java:652)
    at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$5.iterator(IgniteH2Indexing.java:1119)
    at org.apache.ignite.internal.processors.cache.QueryCursorImpl.iterator(QueryCursorImpl.java:98)
    at 

Caused by: javax.cache.CacheException: Failed to execute map query on the node: b72073a8-e58e-4998-9ae5-fc4abf05a800, class org.apache.ignite.IgniteCheckedException:Failed to execute SQL query.
    at org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.fail(GridReduceQueryExecutor.java:278)
    at org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.onFail(GridReduceQueryExecutor.java:268)
    at org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.onMessage(GridReduceQueryExecutor.java:249)
    at org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor$2.onMessage(GridReduceQueryExecutor.java:197)
    at org.apache.ignite.internal.managers.communication.GridIoManager$ArrayListener.onMessage(GridIoManager.java:1915)
    at org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1082)
    at org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:710)
    at org.apache.ignite.internal.managers.communication.GridIoManager.access$1700(GridIoManager.java:102)
    at org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:673)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

您应该检查标识为b72073a8-e58e-4998-9ae5-fc4abf05a800的节点的日志。应该有一个导致失败的例外。