Hi all,
I met a strange problem. I have deployed a mbean with @Service annotation on a jboss 4 cluster which has 3 nodes. @Service annotation means there is only one instance of the bean existing in the jboss server, so each node one mbean.
This mbean is using a distributed list from Hazelcast. So after deploying, I get some information like this:
2014-03-14 13:21:35,774 INFO [com.hazelcast.cluster.ClusterService] [172.19.60.2]:5701 [dev] [3.2-RC2]
Members [3] {
Member [172.19.60.2]:5701 this
Member [172.19.60.3]:5701
Member [172.19.60.52]:5701
}
However, when I undeploy the artifacts and redeploy them, it becomes 6 members.
Members [6] {
Member [172.19.60.2]:5701 this
Member [172.19.60.3]:5701
Member [172.19.60.52]:5701
Member [172.19.60.3]:5702
Member [172.19.60.2]:5702
Member [172.19.60.52]:5702
}
Actually, I expect 3 instead of 6. Obviously, the mbean container did not destroy the mbean when the artifact is undeployed. Is there any way I can clean up the duplicate objects?
Btw, afterwards, I get some error information:
2014-03-14 13:39:00,406 INFO [com.hazelcast.partition.InternalPartitionService] [172.19.60.2]:5701 [dev] [3.2-RC2] Can't overwrite cause
java.lang.IllegalStateException: Can't overwrite cause
at java.lang.Throwable.initCause(Throwable.java:320)
at org.jboss.mx.loading.RepositoryClassLoader.findClass(RepositoryClassLoader.java:624)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at org.jboss.mx.loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java:474)
at org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:415)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at com.hazelcast.partition.impl.PartitionStateGeneratorImpl.reArrange(PartitionStateGeneratorImpl.java:63)
at com.hazelcast.partition.impl.InternalPartitionServiceImpl$RepartitioningTask.run(InternalPartitionServiceImpl.java:1098)
at com.hazelcast.partition.impl.InternalPartitionServiceImpl$MigrationThread.processTask(InternalPartitionServiceImpl.java:1344)
at com.hazelcast.partition.impl.InternalPartitionServiceImpl$MigrationThread.doRun(InternalPartitionServiceImpl.java:1320)
at com.hazelcast.partition.impl.InternalPartitionServiceImpl$MigrationThread.run(InternalPartitionServiceImpl.java:1299)
at java.lang.Thread.run(Thread.java:662)
or
2014-03-14 13:49:57,573 INFO [com.hazelcast.nio.ReadHandler] [172.19.60.2]:5701 [dev] [3.2-RC2] hz._hzInstance_1_dev.IO.thread-in-1 Closing socket to endpoint Address[172.19.60.52]:5702, Cause:java.lang.IllegalStateException: Can't overwrite cause
java.lang.IllegalStateException: Can't overwrite cause
at java.lang.Throwable.initCause(Throwable.java:320)
at org.jboss.mx.loading.RepositoryClassLoader.findClass(RepositoryClassLoader.java:624)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at org.jboss.mx.loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java:474)
at org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:415)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at com.hazelcast.util.executor.ManagedExecutorService$Worker.<init>(ManagedExecutorService.java:170)
at com.hazelcast.util.executor.ManagedExecutorService.addNewWorkerIfRequired(ManagedExecutorService.java:118)
at com.hazelcast.util.executor.ManagedExecutorService.execute(ManagedExecutorService.java:92)
at com.hazelcast.spi.impl.BasicOperationScheduler.execute(BasicOperationScheduler.java:147)
at com.hazelcast.spi.impl.BasicOperationService.receive(BasicOperationService.java:213)
at com.hazelcast.spi.impl.NodeEngineImpl.handlePacket(NodeEngineImpl.java:239)
at com.hazelcast.nio.NodeIOService.handleMemberPacket(NodeIOService.java:99)
at com.hazelcast.nio.SocketPacketReader.enqueueFullPacket(SocketPacketReader.java:54)
at com.hazelcast.nio.SocketPacketReader.access$200(SocketPacketReader.java:26)
at com.hazelcast.nio.SocketPacketReader$DefaultPacketReader.readPacket(SocketPacketReader.java:69)
at com.hazelcast.nio.SocketPacketReader.read(SocketPacketReader.java:49)
at com.hazelcast.nio.ReadHandler.handle(ReadHandler.java:72)
at com.hazelcast.nio.InSelectorImpl.handleSelectionKey(InSelectorImpl.java:33)
at com.hazelcast.nio.AbstractIOSelector.run(AbstractIOSelector.java:126)
Does anyone know how to solve the problem?
Best,
Huiying