Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cassandra 引导或修复节点时管道断开_Cassandra_Broken Pipe - Fatal编程技术网

Cassandra 引导或修复节点时管道断开

Cassandra 引导或修复节点时管道断开,cassandra,broken-pipe,Cassandra,Broken Pipe,我在两个数据中心有两个节点“A”和“B” A在DC1中,B在DC2中 DC1=3的复制系数,DC2=1的复制系数 我尝试将新节点“C”加入DC1,但在节点“A”上收到此错误消息: ERROR [STREAM-OUT-/X.X.XX.XXX] 2015-12-31 02:39:05,252 StreamSession.java:524 - [Stream #a74ecdc0-af67-11e5-8429-a94b3a1b0e16] Streaming error occurred org.apac

我在两个数据中心有两个节点“A”和“B”

A在DC1中,B在DC2中

DC1=3的复制系数,DC2=1的复制系数

我尝试将新节点“C”加入DC1,但在节点“A”上收到此错误消息:

ERROR [STREAM-OUT-/X.X.XX.XXX] 2015-12-31 02:39:05,252 StreamSession.java:524 - [Stream #a74ecdc0-af67-11e5-8429-a94b3a1b0e16] Streaming error occurred
org.apache.cassandra.io.FSReadError: java.io.IOException: Broken pipe
        at org.apache.cassandra.io.util.ChannelProxy.transferTo(ChannelProxy.java:144) ~[apache-cassandra-2.2.4.jar:2.2.4]
        at org.apache.cassandra.streaming.compress.CompressedStreamWriter$1.apply(CompressedStreamWriter.java:79) ~[apache-cassandra-2.2.4.jar:2.2.4]
        at org.apache.cassandra.streaming.compress.CompressedStreamWriter$1.apply(CompressedStreamWriter.java:76) ~[apache-cassandra-2.2.4.jar:2.2.4]
        at org.apache.cassandra.io.util.BufferedDataOutputStreamPlus.applyToChannel(BufferedDataOutputStreamPlus.java:297) ~[apache-cassandra-2.2.4.jar:2.2.4]
        at org.apache.cassandra.streaming.compress.CompressedStreamWriter.write(CompressedStreamWriter.java:75) ~[apache-cassandra-2.2.4.jar:2.2.4]
        at org.apache.cassandra.streaming.messages.OutgoingFileMessage.serialize(OutgoingFileMessage.java:90) ~[apache-cassandra-2.2.4.jar:2.2.4]
        at org.apache.cassandra.streaming.messages.OutgoingFileMessage$1.serialize(OutgoingFileMessage.java:48) ~[apache-cassandra-2.2.4.jar:2.2.4]
        at org.apache.cassandra.streaming.messages.OutgoingFileMessage$1.serialize(OutgoingFileMessage.java:40) ~[apache-cassandra-2.2.4.jar:2.2.4]
        at org.apache.cassandra.streaming.messages.StreamMessage.serialize(StreamMessage.java:47) ~[apache-cassandra-2.2.4.jar:2.2.4]
        at org.apache.cassandra.streaming.ConnectionHandler$OutgoingMessageHandler.sendMessage(ConnectionHandler.java:363) ~[apache-cassandra-2.2.4.jar:2.2.4]
        at org.apache.cassandra.streaming.ConnectionHandler$OutgoingMessageHandler.run(ConnectionHandler.java:335) ~[apache-cassandra-2.2.4.jar:2.2.4]
        at java.lang.Thread.run(Thread.java:745) [na:1.8.0_65]
Caused by: java.io.IOException: Broken pipe
        at sun.nio.ch.FileChannelImpl.transferTo0(Native Method) ~[na:1.8.0_65]
        at sun.nio.ch.FileChannelImpl.transferToDirectlyInternal(FileChannelImpl.java:427) ~[na:1.8.0_65]
        at sun.nio.ch.FileChannelImpl.transferToDirectly(FileChannelImpl.java:492) ~[na:1.8.0_65]
        at sun.nio.ch.FileChannelImpl.transferTo(FileChannelImpl.java:607) ~[na:1.8.0_65]
        at org.apache.cassandra.io.util.ChannelProxy.transferTo(ChannelProxy.java:140) ~[apache-cassandra-2.2.4.jar:2.2.4]
        ... 11 common frames omitted
我尝试在节点A上运行nodetool修复,但我得到:

修复范围为xx xx的xxx会话失败,错误流失败

[2015-12-31 14:36:12,722] Repair session 75e93060-af4c-11e5-8429-a94b3a1b0e16 for range (-4171974372789419026,-4027636102743839484] failed with error Stream failed (progress: 9%)
[2015-12-31 16:48:26,913] Repair session 75f76130-af4c-11e5-8429-a94b3a1b0e16 for range (-1477833652511894033,-1464467586067376161] finished (progress: 12%)
[2015-12-31 17:19:40,353] Repair session 75f82483-af4c-11e5-8429-a94b3a1b0e16 for range (4136345906437366778,4261334469649078197] failed with error Stream failed (progress: 12%)
在日志中,同样的管道破裂错误发生

我发现一些信息表明这可能是网络问题。我用mtr检查节点之间的连接,但这是否足够


是否有其他可能仅在故障范围内重试修复?

当CompressedStreamReader遇到大于2.14GB的节时,它似乎存在错误(因为使用int而不是long来计算节长度…)

请看这个错误,附加了一个修补过的罐子,它将包含在Cassandra 2.2.5中