The rule of thumb is, if you see a NullPointerException, it's probably a bug :)
In this case, it looks like the purge thread started processing all
the entries in the store to see if they have expired, which is keeping
the CPU busy (and probably thrashing the disk as well - ISPN-5141
[1]). Stopping the cache didn't stop the purge thread, causing the
NPE. However, the exception should be harmless, and I wouldn't expect
the node to hang because of it.
On the other hand, SingleFileStore will not work properly with
shared=true. Unfortunately, it doesn't do anything to prevent you from
configuring it that way, but sharing the data file is not supported,
and it will cause data corruption.
Cheers
Dan
[1]
https://issues.jboss.org/browse/ISPN-5141
On Tue, Feb 24, 2015 at 4:11 PM, Andreas Kruthoff
<andreas.kruthoff(a)nexustelecom.com> wrote:
Hi Dev
From time to time, I'm running into this exception which causes the
node to hang.
Exception in thread "persistence-thread--p5-t1"
org.infinispan.persistence.spi.PersistenceException:
java.lang.NullPointerException
at
org.infinispan.persistence.file.SingleFileStore$2.run(SingleFileStore.java:672)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NullPointerException
at
org.infinispan.persistence.file.SingleFileStore.free(SingleFileStore.java:306)
at
org.infinispan.persistence.file.SingleFileStore.access$1200(SingleFileStore.java:63)
at
org.infinispan.persistence.file.SingleFileStore$2.run(SingleFileStore.java:670)
... 3 more
My scenario:
Start 3 distributed nodes, owners="2", filestore with preload="true"
shared="true" purge="false". About 20 Mio entries in the .dat file.
The state-transfer takes about 5 Minutes, the cluster is ready
afterwards, but still very busy operating on the filestore!
If I stop a node now, the exception happens. If I wait for about 30
Minutes (after the cpu load reduces), and the shutdown of a node works
without problems. It persists its entries.
Shall I create a JIRA or am I missing something?
This email and any attachment may contain confidential information which is intended for
use only by the addressee(s) named above. If you received this email by mistake, please
notify the sender immediately, and delete the email from your system. You are prohibited
from copying, disseminating or otherwise using the email or any attachment.
_______________________________________________
infinispan-dev mailing list
infinispan-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/infinispan-dev