Assen Sharlandjiev created IGNITE-19057:
-------------------------------------------
Summary: org.apache.ignite.IgniteException: Invalid message type:
-33 when using ignite-spring-data-2.2-ext and ignite-calcite
Key: IGNITE-19057
URL: https://issues.apache.org/jira/browse/IGNITE-19057
Project: Ignite
Issue Type: Bug
Components: h2-limitation, springdata
Affects Versions: 2.14
Reporter: Assen Sharlandjiev
Hi,
I am running ignite cluster, with Apache calcite configured as query engine as
follows:
{code:java}
cfg.setSqlConfiguration(new SqlConfiguration().setQueryEnginesConfiguration(new
CalciteQueryEngineConfiguration().setDefault(true)));
{code}
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:
{code:java}
@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);
}
{code}
When the client calls the findByTargetClassName method, it does not return,
and I'm observing the following in the logs
the client log:
{noformat}
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]{noformat}
the server log:
{noformat}
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]]]
{noformat}
{code:java}
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]
{code}
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.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)