David Capwell created CASSANDRA-17116: -----------------------------------------
Summary: When zero-copy-streaming sees a channel close this triggers the disk failure policy Key: CASSANDRA-17116 URL: https://issues.apache.org/jira/browse/CASSANDRA-17116 Project: Cassandra Issue Type: Bug Components: Consistency/Streaming Reporter: David Capwell Found in CASSANDRA-17085. {code} ERROR [Stream-Deserializer-/127.0.0.1:7000-f2eb1a15] 2021-11-02 21:35:40,983 DefaultFSErrorHandler.java:104 - Exiting forcefully due to file system exception on startup, disk failure policy "stop" org.apache.cassandra.io.FSWriteError: java.nio.channels.ClosedChannelException at org.apache.cassandra.io.sstable.format.big.BigTableZeroCopyWriter.write(BigTableZeroCopyWriter.java:227) at org.apache.cassandra.io.sstable.format.big.BigTableZeroCopyWriter.writeComponent(BigTableZeroCopyWriter.java:206) at org.apache.cassandra.db.streaming.CassandraEntireSSTableStreamReader.read(CassandraEntireSSTableStreamReader.java:125) at org.apache.cassandra.db.streaming.CassandraIncomingFile.read(CassandraIncomingFile.java:84) at org.apache.cassandra.streaming.messages.IncomingStreamMessage$1.deserialize(IncomingStreamMessage.java:51) at org.apache.cassandra.streaming.messages.IncomingStreamMessage$1.deserialize(IncomingStreamMessage.java:37) at org.apache.cassandra.streaming.messages.StreamMessage.deserialize(StreamMessage.java:50) at org.apache.cassandra.streaming.StreamDeserializingTask.run(StreamDeserializingTask.java:62) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.lang.Thread.run(Thread.java:748) Caused by: java.nio.channels.ClosedChannelException: null at org.apache.cassandra.net.AsyncStreamingInputPlus.reBuffer(AsyncStreamingInputPlus.java:136) at org.apache.cassandra.net.AsyncStreamingInputPlus.consume(AsyncStreamingInputPlus.java:155) at org.apache.cassandra.io.sstable.format.big.BigTableZeroCopyWriter.write(BigTableZeroCopyWriter.java:217) ... 9 common frames omitted {code} When bootstrap fails and streaming is closed, this triggers the disk failure policy which causes the JVM to halt by default. org.apache.cassandra.streaming.StreamDeserializingTask attempts to handle this by ignoring this exception, but the call to org.apache.cassandra.streaming.messages.IncomingStreamMessage$1.deserialize Does try/catch and inspects exception; triggering this condition. -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org