Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
2.14
-
None
-
None
-
If it's not possible to use spring-data-ignite with calcite query engine, please specify that in the documentation.
Description
Hi,
I am running ignite cluster, with Apache calcite configured as query engine as follows:
cfg.setSqlConfiguration(new SqlConfiguration().setQueryEnginesConfiguration(new CalciteQueryEngineConfiguration().setDefault(true)));
The ignite server nodes have no dependencies on the ignite-indexing, and h2 database, but only on ignite-calcite.
I have a client, which uses ignite-spring-data-2.2-ext to access and query existing cache.
for example, I have a repository like this one:
@RepositoryConfig(igniteInstance = "ignite", cacheName = "com.azdio.mdw.core.domain.content.Image") public interface ImageIgniteRepository extends IgniteRepository<Image, Long> { Collection<Image> findByTargetIdAndTargetClassName(String targetId, String targetClassName); Image findByTargetIdAndTargetClassNameAndTagIdIsNull(String targetId, String targetClassName); Image findByTargetId(String targetId); Stream<Image> findByTargetClassName(String targetClassName); Long countByHash(String hash); }
When the client calls the findByTargetClassName method, it does not return, and I'm observing the following in the logs
the client log:
2023-03-17 11:00:52.862 INFO 3772 --- [-notifier-timer] o.a.i.i.p.cluster.GridUpdateNotifier : Your version is up to date.2023-03-17 11:01:00.892 INFO 3772 --- [mmunicationSpi%] o.a.i.s.c.tcp.TcpCommunicationSpi : Accepted incoming communication connection [locAddr=/127.0.0.1:47101, rmtAddr=/127.0.0.1:50754]2023-03-17 11:01:00.893 INFO 3772 --- [mmunicationSpi%] o.a.i.s.c.tcp.TcpCommunicationSpi : Received incoming connection when already connected to this node, rejecting [locNode=5a5a7244-3d38-4f73-9e37-7b5d1421e945, rmtNode=b25eef6c-9e13-4492-96fa-df248594aff1]2023-03-17 11:01:01.099 INFO 3772 --- [mmunicationSpi%] o.a.i.s.c.tcp.TcpCommunicationSpi : Accepted incoming communication connection [locAddr=/127.0.0.1:47101, rmtAddr=/127.0.0.1:50756]2023-03-17 11:01:02.108 INFO 3772 --- [mmunicationSpi%] o.a.i.s.c.tcp.TcpCommunicationSpi : Established outgoing communication connection [locAddr=/127.0.0.1:50758, rmtAddr=/127.0.0.1:47100]2023-03-17 11:01:03.111 INFO 3772 --- [mmunicationSpi%] o.a.i.s.c.tcp.TcpCommunicationSpi : Established outgoing communication connection [locAddr=/127.0.0.1:50761, rmtAddr=/127.0.0.1:47100]2023-03-17 11:01:04.118 INFO 3772 --- [mmunicationSpi%] o.a.i.s.c.tcp.TcpCommunicationSpi : Accepted incoming communication connection [locAddr=/127.0.0.1:47101, rmtAddr=/127.0.0.1:50762]2023-03-17 11:01:05.126 INFO 3772 --- [mmunicationSpi%] o.a.i.s.c.tcp.TcpCommunicationSpi : Accepted incoming communication connection [locAddr=/127.0.0.1:47101, rmtAddr=/127.0.0.1:50764]
the server log:
Failed to read message [msg=GridIoMessage [plc=0, topic=null, topicOrd=-1, ordered=false, timeout=0, skipOnTimeout=false, msg=null], buf=java.nio.DirectByteBuffer[pos=4 lim=11788 cap=32768], reader=DirectMessageReader [state=DirectMessageState [pos=0, stack=[StateItem [stream=DirectByteBufferStreamImplV2 [baseOff=5269634048, arrOff=-1, tmpArrOff=0, valReadBytes=0, tmpArrBytes=0, msgTypeDone=false, msg=null, mapIt=null, it=null, arrPos=-1, keyDone=false, readSize=-1, readItems=0, prim=0, primShift=0, uuidState=0, uuidMost=0, uuidLeast=0, uuidLocId=0], state=0], null, null, null, null, null, null, null, null, null]], protoVer=3, lastRead=false], ses=GridSelectorNioSessionImpl [worker=DirectNioClientWorker [super=AbstractNioClientWorker [idx=0, bytesRcvd=29196, bytesSent=1056405, bytesRcvd0=11830, bytesSent0=28, select=true, super=GridWorker [name=grid-nio-worker-tcp-comm-0, igniteInstanceName=TcpCommunicationSpi, finished=false, heartbeatTs=1679041736091, hashCode=1368743379, interrupted=false, runner=grid-nio-worker-tcp-comm-0-#57%TcpCommunicationSpi%]]], writeBuf=java.nio.DirectByteBuffer[pos=0 lim=32768 cap=32768], readBuf=java.nio.DirectByteBuffer[pos=4 lim=11788 cap=32768], inRecovery=GridNioRecoveryDescriptor [acked=38, resendCnt=0, rcvCnt=47, sentCnt=38, reserved=true, lastAck=32, nodeLeft=false, node=ZookeeperClusterNode [id=609c6508-5a72-430f-a285-0c1bb00d78ed, addrs=[127.0.0.1], order=2, loc=false, client=true], connected=true, connectCnt=9, queueLimit=4096, reserveCnt=22, pairedConnections=false], outRecovery=GridNioRecoveryDescriptor [acked=38, resendCnt=0, rcvCnt=47, sentCnt=38, reserved=true, lastAck=32, nodeLeft=false, node=ZookeeperClusterNode [id=609c6508-5a72-430f-a285-0c1bb00d78ed, addrs=[127.0.0.1], order=2, loc=false, client=true], connected=true, connectCnt=9, queueLimit=4096, reserveCnt=22, pairedConnections=false], closeSocket=true, outboundMessagesQueueSizeMetric=o.a.i.i.processors.metric.impl.LongAdderMetric@69a257d1, super=GridNioSessionImpl [locAddr=/127.0.0.1:47100, rmtAddr=/127.0.0.1:65001, createTime=1679041736091, closeTime=0, bytesSent=28, bytesRcvd=11830, bytesSent0=28, bytesRcvd0=11830, sndSchedTime=1679041736091, lastSndTime=1679041736091, lastRcvTime=1679041736091, readsPaused=false, filterChain=FilterChain[filters=[GridNioCodecFilter [parser=o.a.i.i.util.nio.GridDirectParser@786a15dd, directMode=true], GridConnectionBytesVerifyFilter], accepted=true, markedForClose=false]]]
org.apache.ignite.IgniteException: Invalid message type: -33 at org.apache.ignite.internal.managers.communication.IgniteMessageFactoryImpl.create(IgniteMessageFactoryImpl.java:133) ~[ignite-core-2.14.0.jar:2.14.0] at org.apache.ignite.spi.communication.tcp.internal.GridNioServerWrapper$2.create(GridNioServerWrapper.java:813) ~[ignite-core-2.14.0.jar:2.14.0] at org.apache.ignite.internal.direct.stream.v2.DirectByteBufferStreamImplV2.readMessage(DirectByteBufferStreamImplV2.java:1189) ~[ignite-core-2.14.0.jar:2.14.0] at org.apache.ignite.internal.direct.DirectMessageReader.readMessage(DirectMessageReader.java:336) ~[ignite-core-2.14.0.jar:2.14.0] at org.apache.ignite.internal.managers.communication.GridIoMessage.readFrom(GridIoMessage.java:271) ~[ignite-core-2.14.0.jar:2.14.0] at org.apache.ignite.internal.util.nio.GridDirectParser.decode(GridDirectParser.java:90) ~[ignite-core-2.14.0.jar:2.14.0] at org.apache.ignite.internal.util.nio.GridNioCodecFilter.onMessageReceived(GridNioCodecFilter.java:113) ~[ignite-core-2.14.0.jar:2.14.0] at org.apache.ignite.internal.util.nio.GridNioFilterAdapter.proceedMessageReceived(GridNioFilterAdapter.java:109) ~[ignite-core-2.14.0.jar:2.14.0] at org.apache.ignite.internal.util.nio.GridConnectionBytesVerifyFilter.onMessageReceived(GridConnectionBytesVerifyFilter.java:133) ~[ignite-core-2.14.0.jar:2.14.0] at org.apache.ignite.internal.util.nio.GridNioFilterAdapter.proceedMessageReceived(GridNioFilterAdapter.java:109) ~[ignite-core-2.14.0.jar:2.14.0] at org.apache.ignite.internal.util.nio.GridNioServer$HeadFilter.onMessageReceived(GridNioServer.java:3734) ~[ignite-core-2.14.0.jar:2.14.0] at org.apache.ignite.internal.util.nio.GridNioFilterChain.onMessageReceived(GridNioFilterChain.java:175) ~[ignite-core-2.14.0.jar:2.14.0] at org.apache.ignite.internal.util.nio.GridNioServer$DirectNioClientWorker.processRead(GridNioServer.java:1379) ~[ignite-core-2.14.0.jar:2.14.0] at org.apache.ignite.internal.util.nio.GridNioServer$AbstractNioClientWorker.processSelectedKeysOptimized(GridNioServer.java:2508) ~[ignite-core-2.14.0.jar:2.14.0] at org.apache.ignite.internal.util.nio.GridNioServer$AbstractNioClientWorker.bodyInternal(GridNioServer.java:2273) ~[ignite-core-2.14.0.jar:2.14.0] at org.apache.ignite.internal.util.nio.GridNioServer$AbstractNioClientWorker.body(GridNioServer.java:1910) ~[ignite-core-2.14.0.jar:2.14.0] at org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:125) ~[ignite-core-2.14.0.jar:2.14.0] at java.base/java.lang.Thread.run(Thread.java:833) ~[na:na]
Question: is it possible to use spring-data-ignite with calcite and not having dependencies on h2?
Is there any workaround that problem?
Thank you
Assen.