-
Bug
-
Resolution: Obsolete
-
Critical
-
None
-
15.0.4.Final
-
None
java.lang.NullPointerException: Cannot invoke "org.infinispan.distribution.ch.ConsistentHash.getNumSegments()" because "stableCH" is null
This happens repeatedly when redeploying instances (i.e. multiple instances leaving+joining simultaneously). It does not heal by itself and entire cluster must be stopped and started again to become healthy.
Log from "old" instance attached.
The newly deployed instances fail to join the cluster due to org.infinispan.commons.CacheException: ISPN000217: Received exception from app-dcbfd6bfc-5hss9-26268, see cause for remote stack trace then shut down and are restarted.
c.v.jgroups.protocols.MemberLogger is a custom jgroups protocol which just logs the member names when the jgroups view change.
Update:
Cache manager is created programmatically (the JChannel is initialized manually/separately):
var configBuilderHolder = new ConfigurationBuilderHolder();
configBuilderHolder.getGlobalConfigurationBuilder()
.cacheContainer().statistics(true)
.metrics().namesAsTags(true)
.transport().transport(new JGroupsTransport(jchannel))
.transport().clusterName("infinispan")
.shutdown().hookBehavior(ShutdownHookBehavior.DONT_REGISTER);
return new DefaultCacheManager(configBuilderHolder, true);
1 single DIST_SYNC cache (otherwise default settings) is used.
Also an EmbeddedClusteredLockManagerFactory is initialized, and it seems this is cause of the issue (logs say cacheName='org.infinispan.LOCKS').