Uploaded image for project: 'Ignite'
  1. Ignite
  2. IGNITE-19057

org.apache.ignite.IgniteException: Invalid message type: -33 when using ignite-spring-data-2.2-ext and ignite-calcite

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 2.14
    • None
    • h2-limitation, springdata
    • 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.

      Attachments

        Activity

          People

            Unassigned Unassigned
            assens Assen Sharlandjiev
            Votes:
            1 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: