hibernate - org.infinispan.commons.CacheException:未知命令 id 121
问题描述
我正在尝试使用 infinispan 设置分布式 L2C。我使用以下配置运行了 infinispan:
<cache-container name="default" statistics="true">
<transport cluster="${infinispan.cluster.name}" stack="${infinispan.cluster.stack:tcp}" node-name="${infinispan.node.name:}"/>
<replicated-cache name="replicated" mode="ASYNC"/>
</cache-container>
我的休眠和 infinispan 版本是:休眠的 5.3.16.Final 和 infinispan-hibernate-cache-v53 的 10.1.6.Final
L2C 工作正常,但是当我更新实体时,infinispan-server 中出现以下错误
10:27:30,734 ERROR (jgroups-6,localhost-4115) [org.infinispan.CLUSTER] ISPN000474: Error processing request 0@localhost-39755 org.infinispan.commons.CacheException: Unknown command id 121!
at org.infinispan.commands.RemoteCommandsFactory.fromStream(RemoteCommandsFactory.java:384)
at org.infinispan.marshall.exts.ReplicableCommandExternalizer.fromStream(ReplicableCommandExternalizer.java:110)
at org.infinispan.marshall.exts.CacheRpcCommandExternalizer.readObject(CacheRpcCommandExternalizer.java:133)
at org.infinispan.marshall.exts.CacheRpcCommandExternalizer.readObject(CacheRpcCommandExternalizer.java:69)
at org.infinispan.marshall.core.GlobalMarshaller.readWithExternalizer(GlobalMarshaller.java:728)
at org.infinispan.marshall.core.GlobalMarshaller.readNonNullableObject(GlobalMarshaller.java:709)
at org.infinispan.marshall.core.GlobalMarshaller.readNullableObject(GlobalMarshaller.java:358)
at org.infinispan.marshall.core.GlobalMarshaller.objectFromObjectInput(GlobalMarshaller.java:192)
at org.infinispan.marshall.core.GlobalMarshaller.objectFromByteBuffer(GlobalMarshaller.java:221)
at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processRequest(JGroupsTransport.java:1395)
at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processMessage(JGroupsTransport.java:1335)
at org.infinispan.remoting.transport.jgroups.JGroupsTransport.access$300(JGroupsTransport.java:132)
at org.infinispan.remoting.transport.jgroups.JGroupsTransport$ChannelCallbacks.up(JGroupsTransport.java:1487)
at org.jgroups.JChannel.up(JChannel.java:775)
at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:900)
at org.jgroups.protocols.FRAG3.up(FRAG3.java:171)
at org.jgroups.protocols.FlowControl.up(FlowControl.java:354)
at org.jgroups.protocols.FlowControl.up(FlowControl.java:346)
at org.jgroups.protocols.pbcast.GMS.up(GMS.java:859)
at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:243)
at org.jgroups.protocols.UNICAST3.up(UNICAST3.java:392)
at org.jgroups.protocols.pbcast.NAKACK2.deliver(NAKACK2.java:931)
at org.jgroups.protocols.pbcast.NAKACK2.handleMessage(NAKACK2.java:821)
at org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.java:602)
at org.jgroups.protocols.VERIFY_SUSPECT.up(VERIFY_SUSPECT.java:132)
at org.jgroups.protocols.FD_ALL.up(FD_ALL.java:202)
at org.jgroups.protocols.FD_SOCK.up(FD_SOCK.java:254)
at org.jgroups.protocols.MERGE3.up(MERGE3.java:281)
at org.jgroups.protocols.Discovery.up(Discovery.java:300)
at org.jgroups.protocols.TP.passMessageUp(TP.java:1367)
at org.jgroups.util.SubmitToThreadPool$SingleMessageHandler.run(SubmitToThreadPool.java:87)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:834)
我还为我的实体使用了 READ_WRITE 缓存并发策略。知道发生了什么吗?我的设置中是否存在错误配置?
解决方案
似乎您的 infinispan 服务器无法反序列化命令,因为他对此一无所知。COMMAND_ID = org.infinispan.hibernate.cache.commons.util.CacheCommandIds 中的 121 个位置。所以我认为您需要将 infinispan-hibernate-cache-v53 jar 添加到您的 infinispan 服务器。
推荐阅读
- python - 谷歌的 Selenium Colab
- django - 如何在 django 中检查相关模型的两个字段的检查约束?
- javascript - 带有样式组件命名空间问题的 React Rollup 构建
- python-3.x - pip 坏了,不能使用大多数 pip 命令(在 Windows 上)
- typescript - 打字稿联合类型像交集类型一样工作
- javascript - 用 react js 改变不透明度和动画
- sql-server - SQL Server 警报系统:带有事务复制的“严重性 023”和“严重性 020”
- timestamp - 基于具有不同行数的时间戳将多行合并为一
- excel - 是否可以编写 WORD 宏来搜索特定前缀并将其添加到具有找到它的节号的表中
- mockito - EasyMock.expectLastCall().anyTimes() 等价物的 Mockito 验证是什么?