You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Stanislav Kozlovski (JIRA)" <ji...@apache.org> on 2018/06/26 15:30:00 UTC

[jira] [Commented] (KAFKA-6812) Async ConsoleProducer exits with 0 status even after data loss

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

Stanislav Kozlovski commented on KAFKA-6812:
--------------------------------------------

I believe this current behavior is correct. You generally exit with a status code different of 0 when something unexpected happens.
The console producer is given a `ErrorLoggingCallback` class, whose responsibility is to swallow errors and simply log them - https://github.com/apache/kafka/blob/581adb5013ed996705031ca8dd9e175c40675692/core/src/main/scala/kafka/tools/ConsoleProducer.scala#L75.
I believe nothing unexpected has happened, therefore it should exit with 0


> Async ConsoleProducer exits with 0 status even after data loss
> --------------------------------------------------------------
>
>                 Key: KAFKA-6812
>                 URL: https://issues.apache.org/jira/browse/KAFKA-6812
>             Project: Kafka
>          Issue Type: Bug
>          Components: tools
>    Affects Versions: 1.1.0
>            Reporter: Andras Beni
>            Assignee: Stanislav Kozlovski
>            Priority: Minor
>
> When {{ConsoleProducer}} is run without {{--sync}} flag and one of the batches times out, {{ErrorLoggingCallback}} logs the error:
> {code:java}
>  18/04/21 04:23:01 WARN clients.NetworkClient: [Producer clientId=console-producer] Connection to node 10 could not be established. Broker may not be available.
>  18/04/21 04:23:02 ERROR internals.ErrorLoggingCallback: Error when sending message to topic my-topic with key: null, value: 8 bytes with error:
>  org.apache.kafka.common.errors.TimeoutException: Expiring 1 record(s) for my-topic-0: 1530 ms has passed since batch creation plus linger time{code}
>  However, the tool exits with status code 0. 
>  In my opinion the tool should indicate in the exit status that there was data lost. Maybe it's reasonable to exit after the first error.
>   



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)