Anyone? On Fri, Jul 29, 2022 at 8:44 AM John Smith <java.dev....@gmail.com> wrote:
> Any thoughts on this? > > On Mon., Jul. 25, 2022, 11:29 a.m. John Smith, <java.dev....@gmail.com> > wrote: > >> Hi I have the following code and I get the below exception. The cache >> runs on 3 remote nodes and it is accessed by thick client (client = true) >> >> String sql = "select car_id from car_code where provider_id = ? and >> car_code = ? order by car_id asc limit 1;" >> Integer providerId = 1; >> String cardCode = "HONDA"; >> >> JssonArray array = query(sql, 3000, providerId, carCode); >> >> JsonArray query(final String sql, final long timeoutMs, final Object... >> args) { >> SqlFieldsQuery query = new SqlFieldsQuery(sql).setArgs(args); >> query.setTimeout((int) timeoutMs, TimeUnit.MILLISECONDS); >> >> try (QueryCursor<List<?>> cursor = cache.query(query)) { >> List<JsonArray> rows = new ArrayList<>(); >> Iterator<List<?>> iterator = cursor.iterator(); >> >> while(iterator.hasNext()) { >> List currentRow = iterator.next(); >> JsonArray row = new JsonArray(); >> >> currentRow.forEach(o -> row.add(o)); >> >> rows.add(row); >> } >> >> return rows; >> } catch(Exception ex) { >> ex.printStackTrace(); >> } >> } >> >> Running this in Datagrip with JDBC client works fine; >> >> select >> car_id >> from car_code >> where provider_id = 5 and car_code = 'HONDA' >> order by car_id asc limit 1; >> >> Works >> >> >> javax.cache.CacheException: Failed to execute map query on remote node >> [nodeId=xxxxxx, errMsg=General error: \"class >> org.apache.ignite.IgniteCheckedException: Runtime failure on lookup row: >> IndexSearchRowImpl >> [rowHnd=org.apache.ignite.internal.processors.query.h2.index.QueryIndexRowHandler@16bc23dd]\"; >> SQL statement: >> \nSELECT >> \n__Z0.CAR_ID __C0_0 >> \nFROM PUBLIC.CAR_CODE __Z0 >> \nWHERE (__Z0.PROVIDER_ID = ?1) AND (__Z0.CAR_CODE = ?2) >> \nORDER BY 1 LIMIT 1 [50000-197]] >> \n\tat >> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.fail(GridReduceQueryExecutor.java:235) >> \n\tat >> org.apache.ignite.internal.processors.query.h2.twostep.GridReduceQueryExecutor.onFail(GridReduceQueryExecutor.java:214) >> \n\tat >> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.onMessage(IgniteH2Indexing.java:2193) >> \n\tat >> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.lambda$start$22(IgniteH2Indexing.java:2132) >> \n\tat >> org.apache.ignite.internal.managers.communication.GridIoManager$ArrayListener.onMessage(GridIoManager.java:3480) >> \n\tat >> org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1907) >> \n\tat >> org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:1528) >> \n\tat >> org.apache.ignite.internal.managers.communication.GridIoManager.access$5300(GridIoManager.java:242) >> \n\tat >> org.apache.ignite.internal.managers.communication.GridIoManager$9.execute(GridIoManager.java:1421) >> \n\tat >> org.apache.ignite.internal.managers.communication.TraceRunnable.run(TraceRunnable.java:55) >> \n\tat >> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) >> \n\tat >> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) >> \n\tat java.lang.Thread.run(Thread.java:748) >> \n >> >