停止集群节点后出现 Hazelcast 多播错误

Hazelcast Multicasting error after stopping the nodes of the cluster

我有一个由两个节点组成的集群,即两个 OrientDB 服务器 运行 在两台具有企业版 2.2.3 的独立机器上。两台机器都是具有 fedora OS 18 的 VM。orientDB数据库由大约 75000 条边和 5000 个节点组成。

当我尝试停止任何一个节点或一个接一个地停止两个节点时,出现以下错误:

节点 1

2017-05-02 17:32:44:811 WARNI Received signal: SIGINT [OSignalHandler]Exception in thread "Timer-1" com.hazelcast.core.HazelcastInstanceNotActiveException: Hazelcast instance is not active!
        at com.hazelcast.spi.AbstractDistributedObject.throwNotActiveException(AbstractDistributedObject.java:85)
        at com.hazelcast.spi.AbstractDistributedObject.lifecycleCheck(AbstractDistributedObject.java:80)
        at com.hazelcast.spi.AbstractDistributedObject.getNodeEngine(AbstractDistributedObject.java:74)
        at com.hazelcast.map.impl.proxy.MapProxySupport.invokeOperation(MapProxySupport.java:309)
        at com.hazelcast.map.impl.proxy.MapProxySupport.getInternal(MapProxySupport.java:250)
        at com.hazelcast.map.impl.proxy.MapProxyImpl.get(MapProxyImpl.java:94)
        at com.orientechnologies.orient.server.hazelcast.OHazelcastDistributedMap.get(OHazelcastDistributedMap.java:53)
        at com.orientechnologies.agent.profiler.OEnterpriseProfiler.run(OEnterpriseProfiler.java:772)
        at java.util.TimerThread.mainLoop(Timer.java:555)
        at java.util.TimerThread.run(Timer.java:505)
java.lang.OutOfMemoryError: Java heap space
Dumping heap to java_pid11478.hprof ...
Heap dump file created [744789648 bytes in 21.248 secs]

节点2

2017-05-02 17:32:41:108 INFO  [192.168.6.153]:2434 [orientdb] [3.6.3] Running shutdown hook... Current state: ACTIVE [Node]Exception in thread "Timer-1" com.hazelcast.core.HazelcastInstanceNotActiveException: Hazelcast instance is not active!
        at com.hazelcast.spi.AbstractDistributedObject.throwNotActiveException(AbstractDistributedObject.java:85)
        at com.hazelcast.spi.AbstractDistributedObject.lifecycleCheck(AbstractDistributedObject.java:80)
        at com.hazelcast.spi.AbstractDistributedObject.getNodeEngine(AbstractDistributedObject.java:74)
        at com.hazelcast.map.impl.proxy.MapProxySupport.invokeOperation(MapProxySupport.java:309)
        at com.hazelcast.map.impl.proxy.MapProxySupport.getInternal(MapProxySupport.java:250)
        at com.hazelcast.map.impl.proxy.MapProxyImpl.get(MapProxyImpl.java:94)
        at com.orientechnologies.orient.server.hazelcast.OHazelcastDistributedMap.get(OHazelcastDistributedMap.java:53)
        at com.orientechnologies.agent.profiler.OEnterpriseProfiler.run(OEnterpriseProfiler.java:772)
        at java.util.TimerThread.mainLoop(Timer.java:555)
        at java.util.TimerThread.run(Timer.java:505)

如何解决堆内存问题?

您的问题似乎是“内存不足”错误。来自 Hazelcast 的异常仅意味着 HazelcastInstance 已停止,很可能是基于 OOME 事实。