OrientDB多节点配置:hazelcast问题

时间:2016-02-24 10:59:58

标签: orientdb hazelcast

我有3个节点的OrienDB 2.1.4集群,基本配置。我所做的hazelcast.xml中唯一的变化是通过隐式tcp-ip hosts列表替换多播。

在对DB的请求很大(选择没有连接,结果集中大约300k行)之后,OrientDB停止响应来自应用程序的网络连接尝试(OrientDB Studio仍在工作),以下连续异常会不断出现在日志中:

主节点上的

2016-02-24 10:02:17:647 INFO  [10.10.10.124]:2434 [zertodb] [3.3.5] Remaining migration tasks in queue => 1 [InternalPartitionService][10.10.10.124]:2434 [zertodb] [3.3.5] Received data format is invalid. (An old version of Hazelcast may be running here.)
com.hazelcast.nio.serialization.HazelcastSerializationException: java.io.UTFDataFormatException: Length check failed, maybe broken bytestream or wrong stream position
        at com.hazelcast.nio.serialization.SerializationServiceImpl.handleException(SerializationServiceImpl.java:354)
        at com.hazelcast.nio.serialization.SerializationServiceImpl.readObject(SerializationServiceImpl.java:341)
        at com.hazelcast.nio.serialization.ByteArrayObjectDataInput.readObject(ByteArrayObjectDataInput.java:454)
        at com.hazelcast.cluster.MulticastService.receive(MulticastService.java:155)
        at com.hazelcast.cluster.MulticastService.run(MulticastService.java:113)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.UTFDataFormatException: Length check failed, maybe broken bytestream or wrong stream position
        at com.hazelcast.nio.UTFEncoderDecoder.readUTF0(UTFEncoderDecoder.java:505)
        at com.hazelcast.nio.UTFEncoderDecoder.readUTF(UTFEncoderDecoder.java:77)
        at com.hazelcast.nio.serialization.ByteArrayObjectDataInput.readUTF(ByteArrayObjectDataInput.java:450)
        at com.hazelcast.cluster.ConfigCheck.readData(ConfigCheck.java:219)
        at com.hazelcast.cluster.JoinMessage.readData(JoinMessage.java:80)
        at com.hazelcast.cluster.JoinRequest.readData(JoinRequest.java:64)
        at com.hazelcast.nio.serialization.DataSerializer.read(DataSerializer.java:111)
        at com.hazelcast.nio.serialization.DataSerializer.read(DataSerializer.java:39)
        at com.hazelcast.nio.serialization.StreamSerializerAdapter.read(StreamSerializerAdapter.java:44)
        at com.hazelcast.nio.serialization.SerializationServiceImpl.readObject(SerializationServiceImpl.java:335)
        ... 4 more

在其他节点上:

[10.10.10.194]:2434 [zertodb] [3.3.5] Received data format is invalid. (An old version of Hazelcast may be running here.)
com.hazelcast.nio.serialization.HazelcastSerializationException: java.io.StreamCorruptedException: invalid type code: 00
        at com.hazelcast.nio.serialization.SerializationServiceImpl.handleException(SerializationServiceImpl.java:354)
        at com.hazelcast.nio.serialization.SerializationServiceImpl.readObject(SerializationServiceImpl.java:341)
        at com.hazelcast.nio.serialization.ByteArrayObjectDataInput.readObject(ByteArrayObjectDataInput.java:454)
        at com.hazelcast.cluster.ConfigCheck.readData(ConfigCheck.java:215)
        at com.hazelcast.cluster.JoinMessage.readData(JoinMessage.java:80)
        at com.hazelcast.cluster.JoinRequest.readData(JoinRequest.java:64)
        at com.hazelcast.nio.serialization.DataSerializer.read(DataSerializer.java:111)
        at com.hazelcast.nio.serialization.DataSerializer.read(DataSerializer.java:39)
        at com.hazelcast.nio.serialization.StreamSerializerAdapter.read(StreamSerializerAdapter.java:44)
        at com.hazelcast.nio.serialization.SerializationServiceImpl.readObject(SerializationServiceImpl.java:335)
        at com.hazelcast.nio.serialization.ByteArrayObjectDataInput.readObject(ByteArrayObjectDataInput.java:454)
        at com.hazelcast.cluster.MulticastService.receive(MulticastService.java:155)
        at com.hazelcast.cluster.MulticastService.run(MulticastService.java:113)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.StreamCorruptedException: invalid type code: 00
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1379)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:371)
        at com.hazelcast.nio.serialization.DefaultSerializers$ObjectSerializer.read(DefaultSerializers.java:196)
        at com.hazelcast.nio.serialization.StreamSerializerAdapter.read(StreamSerializerAdapter.java:44)
        at com.hazelcast.nio.serialization.SerializationServiceImpl.readObject(SerializationServiceImpl.java:335)
        ... 12 more

使用较小结果集的相同查询可以正常工作。

1 个答案:

答案 0 :(得分:0)

我发现此问题https://github.com/hazelcast/hazelcast/issues/4327有关您使用hazelcast的问题。

希望它有所帮助。