You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Jun Rao (JIRA)" <ji...@apache.org> on 2015/09/28 19:12:05 UTC

[jira] [Commented] (KAFKA-2222) Write "Input/output error" did not result in broker shutdown

    [ https://issues.apache.org/jira/browse/KAFKA-2222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14933589#comment-14933589 ] 

Jun Rao commented on KAFKA-2222:
--------------------------------

Currently, we only shut down the broker if it gets any IOException during writes. It's a bit tricky to do the same thing for reads since fetch responses use zero-copy file transfer. When we get an IOException during the transfer, it's not clear whether the issue is due to the file channel or the remote socket. If it's the latter, we clearly don't want to shut down the broker.

> Write "Input/output error" did not result in broker shutdown
> ------------------------------------------------------------
>
>                 Key: KAFKA-2222
>                 URL: https://issues.apache.org/jira/browse/KAFKA-2222
>             Project: Kafka
>          Issue Type: Bug
>    Affects Versions: 0.8.1.2
>            Reporter: Jason Rosenberg
>
> We had a disk start failing intermittently, and began seeing errors like this in the broker.  Usually, IOExceptions during a file write result in the broker shutting down immediately.  This is with version 0.8.2.1.
> {code}
> 2015-05-21 23:59:57,841 ERROR [kafka-network-thread-27330-2] network.Processor - Closing socket for /1.2.3.4 because of error
> java.io.IOException: Input/output error
>         at sun.nio.ch.FileChannelImpl.transferTo0(Native Method)
>         at sun.nio.ch.FileChannelImpl.transferToDirectly(FileChannelImpl.java:443)
>         at sun.nio.ch.FileChannelImpl.transferTo(FileChannelImpl.java:575)
>         at kafka.log.FileMessageSet.writeTo(FileMessageSet.scala:147)
>         at kafka.api.PartitionDataSend.writeTo(FetchResponse.scala:70)
>         at kafka.network.MultiSend.writeTo(Transmission.scala:101)
>         at kafka.api.TopicDataSend.writeTo(FetchResponse.scala:125)
>         at kafka.network.MultiSend.writeTo(Transmission.scala:101)
>         at kafka.api.FetchResponseSend.writeTo(FetchResponse.scala:231)
>         at kafka.network.Processor.write(SocketServer.scala:472)
>         at kafka.network.Processor.run(SocketServer.scala:342)
>         at java.lang.Thread.run(Thread.java:745)
> {code}
> This resulted in intermittent producer failures failing to send messages successfully, etc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)