]
Tristan Tarrant updated ISPN-10882:
-----------------------------------
Status: Resolved (was: Pull Request Sent)
Fix Version/s: 10.1.0.Final
Resolution: Done
Remove the warn message ISPN000026: Caught exception purging data
container
---------------------------------------------------------------------------
Key: ISPN-10882
URL:
https://issues.redhat.com/browse/ISPN-10882
Project: Infinispan
Issue Type: Bug
Reporter: Diego Lovison
Assignee: Dan Berindei
Priority: Major
Fix For: 10.1.0.Final
When the node1 is leaving the cluster we could have the following warn message:
{noformat}
[0m[33m18:43:28,387 WARN [org.infinispan.expiration.impl.ClusterExpirationManager]
(expiration-thread--p7-t1) ISPN000026: Caught exception purging data container!:
java.lang.IllegalArgumentException: Node edg-perf01-2556 is not a member
at
org.infinispan.distribution.ch.impl.DefaultConsistentHash.getPrimarySegmentsForOwner(DefaultConsistentHash.java:128)
at
org.infinispan.distribution.group.impl.PartitionerConsistentHash.getPrimarySegmentsForOwner(PartitionerConsistentHash.java:76)
at
org.infinispan.expiration.impl.ClusterExpirationManager.purgeInMemoryContents(ClusterExpirationManager.java:123)
at
org.infinispan.expiration.impl.ClusterExpirationManager.processExpiration(ClusterExpirationManager.java:98)
at
org.infinispan.expiration.impl.ExpirationManagerImpl$ScheduledTask.run(ExpirationManagerImpl.java:282)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
at
java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
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)
{noformat}
Dan added the following comments:
{noformat}
Dan: but I think it can actually happen during start and/or after a merge
Dan: when joining, the first cache topology usually doesn't have the joiner as a
member
Dan: after a merge as well, nodes that are not in the majority partition will receive a
cache topology in which they are not members
Dan: luckily StateConsumerImpl clears the data container and private stores after
receiving that cache topology anyway, so there's nothing to expire
Dan: and after the node becomes a full member again expiration will work
{noformat}