Spring boot ISPN000217正在将数据添加到infinispan缓存

Spring boot ISPN000217正在将数据添加到infinispan缓存,spring-boot,infinispan,jgroups,Spring Boot,Infinispan,Jgroups,我有一个应用程序在2个集群中的4个节点上运行。应用程序正在使用infinispan和SpringEmbeddedCacheManager配置缓存。当我尝试将数据添加到缓存时,我遇到了一个间歇性问题,请注意,我将数据添加为键值对,其中我的值将始终是自定义类创建的 我只是尝试将缓存类型更改为复制、本地和无效,我发现在使用本地或无效缓存时没有问题。有人能确认分布式缓存中的大对象是否会导致任何问题吗 Infinispan配置 英菲尼斯潘版本 org.infinispan infinispan-sprin

我有一个应用程序在2个集群中的4个节点上运行。应用程序正在使用infinispan和SpringEmbeddedCacheManager配置缓存。当我尝试将数据添加到缓存时,我遇到了一个间歇性问题,请注意,我将数据添加为键值对,其中我的值将始终是自定义类创建的

我只是尝试将缓存类型更改为复制、本地和无效,我发现在使用本地或无效缓存时没有问题。有人能确认分布式缓存中的大对象是否会导致任何问题吗

Infinispan配置

英菲尼斯潘版本

org.infinispan infinispan-spring4 7.0.3.3最终版本 org.infinispan infinispan cli服务器 7.0.0.CR1 错误

2019-12-04 09:44:23.361 [qtp1933072581-15447] ERROR o.i.i.InvocationContextInterceptor - ISPN000136: Execution error
org.infinispan.remoting.RemoteException: ISPN000217: Received exception from node-10097-32028, see cause for remote stack trace
    at org.infinispan.remoting.transport.AbstractTransport.checkResponse(AbstractTransport.java:44) ~[infinispan-core-7.0.3.Final.jar!/:7.0.3.Final]
    at org.infinispan.remoting.transport.jgroups.CommandAwareRpcDispatcher.processSingleCall(CommandAwareRpcDispatcher.java:381) ~[infinispan-core-7.0.3.Final.jar!/:7.0.3.Final]
    at org.infinispan.remoting.transport.jgroups.CommandAwareRpcDispatcher.invokeRemoteCommand(CommandAwareRpcDispatcher.java:167) ~[infinispan-core-7.0.3.Final.jar!/:7.0.3.Final]
    at org.infinispan.remoting.transport.jgroups.JGroupsTransport.invokeRemotely(JGroupsTransport.java:560) ~[infinispan-core-7.0.3.Final.jar!/:7.0.3.Final]
    at org.infinispan.remoting.rpc.RpcManagerImpl.invokeRemotely(RpcManagerImpl.java:290) ~[infinispan-core-7.0.3.Final.jar!/:7.0.3.Final]


首先,您不应该使用如此旧的Infinispan版本,您应该升级到9.4.17.Final

堆栈跟踪片段的顺序似乎不正确,但无法将java.util.set field Class.field设置为java.lang.String,因为两个节点具有相同类的不同版本


分布式缓存和无效缓存之间的最大区别在于,分布式缓存将值复制到其他节点,而无效缓存只发送包含密钥的无效消息。如果无效缓存工作,那么几乎可以肯定的是,您的一个值类已更改,其中一个节点仍具有旧版本。

我已升级到9.4.17.Final,现在将段数增加到256,但我现在在使用大objectapporx 10MB的分布式缓存时,错误率已降至最低。由JavaIO.SurraveTestExpExc:IdAcLeCuxCyraseCub令牌在流处理的**和**中引起的:Org.FuniSpPAN.UTI.CONCURNET.TimeOutExt:ISPN00427:等待15秒后超时等待ACK。Id=288StreamCorruptedException还指向集群中没有相同Infinispan/application类的成员。也许您有一个旧节点,除了您期望的节点之外,还加入了集群?
Caused by: java.lang.IllegalArgumentException: Can not set java.util.Set field Class.field to java.lang.String
    at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:167) ~[na:1.8.0_121]
    at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:171) ~[na:1.8.0_121]
    at sun.reflect.UnsafeObjectFieldAccessorImpl.set(UnsafeObjectFieldAccessorImpl.java:81) ~[na:1.8.0_121]
    at java.lang.reflect.Field.set(Field.java:764) ~[na:1.8.0_121]
Caused by: org.infinispan.commons.CacheException: Problems invoking command.
    at org.infinispan.remoting.transport.jgroups.CommandAwareRpcDispatcher.handle(CommandAwareRpcDispatcher.java:221)
    at org.jgroups.blocks.RequestCorrelator.handleRequest(RequestCorrelator.java:460)
    at org.jgroups.blocks.RequestCorrelator.receiveMessage(RequestCorrelator.java:377)

Caused by: org.infinispan.commons.CacheException: Problems invoking command.
    at org.infinispan.remoting.transport.jgroups.CommandAwareRpcDispatcher.handle(CommandAwareRpcDispatcher.java:221) ~[infinispan-core-7.0.3.Final.jar!/:7.0.3.Final]
    at org.jgroups.blocks.RequestCorrelator.handleRequest(RequestCorrelator.java:460) ~[jgroups-3.6.1.Final.jar!/:3.6.1.Final]
    at org.jgroups.blocks.RequestCorrelator.receiveMessage(RequestCorrelator.java:377) ~[jgroups-3.6.1.Final.jar!/:3.6.1.Final]