SSTable加载程序流失败,给出了java.io.IOException:由peer重置连接

时间:2014-08-04 20:48:01

标签: java datastax-enterprise cassandra-2.0

我正在尝试使用sstableloader将数据流式传输到Cassandra数据库,该数据库实际上位于同一节点中。它曾经在我使用DSE 2.2时工作,但当我将其升级到DSE 4.5并在cassandra.yaml文件中进行了所有相关更改时,它停止工作,现在它抛出了这样的错误:

Established connection to initial hosts
Opening sstables and calculating sections to stream
Streaming relevant part of demo/test_yale/demo-test_yale-jb-2-Data.db demo/test_yale/demo-test_yale-jb-1-Data.db to [/127.0.0.1]
Streaming session ID: 02225ef0-1c17-11e4-a1ea-5f2d4f6a32c1
progress: [/127.0.0.1 1/2 (88%)] [total: 88% - 2147483647MB/s (avg: 14MB/s)]ERROR 16:36:29,029 [Stream #02225ef0-1c17-11e4-a1ea-5f2d4f6a32c1] Streaming error occurred
java.io.IOException: Connection reset by peer
        at sun.nio.ch.FileDispatcherImpl.write0(Native Method)
        at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47)
        at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)
        at sun.nio.ch.IOUtil.write(IOUtil.java:65)
        at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:487)
        at java.nio.channels.Channels.writeFullyImpl(Channels.java:78)
        at java.nio.channels.Channels.writeFully(Channels.java:98)
        at java.nio.channels.Channels.access$000(Channels.java:61)
        at java.nio.channels.Channels$1.write(Channels.java:174)
        at com.ning.compress.lzf.LZFChunk.writeCompressedHeader(LZFChunk.java:77)
        at com.ning.compress.lzf.ChunkEncoder.encodeAndWriteChunk(ChunkEncoder.java:132)
        at com.ning.compress.lzf.LZFOutputStream.writeCompressedBlock(LZFOutputStream.java:203)
        at com.ning.compress.lzf.LZFOutputStream.write(LZFOutputStream.java:97)
        at org.apache.cassandra.streaming.StreamWriter.write(StreamWriter.java:151)
        at org.apache.cassandra.streaming.StreamWriter.write(StreamWriter.java:101)
        at org.apache.cassandra.streaming.messages.OutgoingFileMessage$1.serialize(OutgoingFileMessage.java:59)
        at org.apache.cassandra.streaming.messages.OutgoingFileMessage$1.serialize(OutgoingFileMessage.java:42)
        at org.apache.cassandra.streaming.messages.StreamMessage.serialize(StreamMessage.java:45)
        at org.apache.cassandra.streaming.ConnectionHandler$OutgoingMessageHandler.sendMessage(ConnectionHandler.java:383)
        at org.apache.cassandra.streaming.ConnectionHandler$OutgoingMessageHandler.run(ConnectionHandler.java:363)
        at java.lang.Thread.run(Thread.java:745)
 WARN 16:36:29,032 [Stream #02225ef0-1c17-11e4-a1ea-5f2d4f6a32c1] Stream failed
Streaming to the following hosts failed:
[/127.0.0.1]
java.util.concurrent.ExecutionException: org.apache.cassandra.streaming.StreamException: Stream failed

我甚至尝试在cassandra.yaml文件中为listen_address,broadcast_address和rpc_address指定节点的实际IP地址,但是会发生同样的错误。

请问有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

按照Zanson的建议,值得查看cassandra / conf / logback.xml中指定的system.log。

就我而言,问题只是节点上的磁盘空间耗尽:

        Observable.just(1, 2, 3)
                .concatWith(
                        Observable.just(2, 4, 6)
                                .filter(value -> ((value % 2) != 0))
                                // report if empty
                )