You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Lee Dongjin (JIRA)" <ji...@apache.org> on 2019/03/02 18:17:00 UTC

[jira] [Commented] (KAFKA-7996) KafkaStreams does not pass timeout when closing Producer

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

Lee Dongjin commented on KAFKA-7996:
------------------------------------

[~guozhang] [~mjsax] Sorry for being late. To sum up, the initial issue description,
{quote}"{{KafkaStreams#close}} is working incorrectly since {{Producer#close}} is called without a timeout."
{quote}
was incorrect, rather
{quote}"Some components in {{KafkaStreams}} ({{Producer, AdminClient}}) are not closed properly for lack of timeout."
{quote}
is correct, right? Then, updating the issue description like the latter one would be better - I agree [~mjsax]'s opinion that this ticket is still valuable.

For the solution - as of now, {{[Producer, AdminClient]}} don't have default close timeout like {{Consumer#DEFAULT_CLOSE_TIMEOUT_MS}}. To solve this, there are two approaches like the following:

1. Add {{[Producer, AdminClient]#DEFAULT_CLOSE_TIMEOUT_MS}} and close with this value in {{KafkaStreams}}. This approach doesn't require KIP.
 2. Provide additional timeout options for closing {{[Producer, Consumer, AdminClient]}} in {{KafkaStreams}}. This approach provides users a way to control the behavior, but it is an API change so requires a KIP.

How do you think? I will follow your decision.

cc/ [~pkleindl]

> KafkaStreams does not pass timeout when closing Producer
> --------------------------------------------------------
>
>                 Key: KAFKA-7996
>                 URL: https://issues.apache.org/jira/browse/KAFKA-7996
>             Project: Kafka
>          Issue Type: Bug
>          Components: streams
>    Affects Versions: 2.1.0
>            Reporter: Patrik Kleindl
>            Assignee: Lee Dongjin
>            Priority: Major
>              Labels: needs-kip
>
> [https://confluentcommunity.slack.com/messages/C48AHTCUQ/convo/C48AHTCUQ-1550831721.026100/]
> We are running 2.1 and have a case where the shutdown of a streams application takes several minutes
> I noticed that although we call streams.close with a timeout of 30 seconds the log says
> [Producer clientId=…-8be49feb-8a2e-4088-bdd7-3c197f6107bb-StreamThread-1-producer] Closing the Kafka producer with timeoutMillis = 9223372036854775807 ms.
> Matthias J Sax [vor 3 Tagen]
> I just checked the code, and yes, we don't provide a timeout for the producer on close()...



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