kafka-jira mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ted Yu (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (KAFKA-6164) ClientQuotaManager threads prevent shutdown when encountering an error loading logs
Date Fri, 03 Nov 2017 01:00:16 GMT

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

Ted Yu edited comment on KAFKA-6164 at 11/3/17 12:59 AM:
---------------------------------------------------------

ThrottledRequestReaper extends ShutdownableThread where
{code}
abstract class ShutdownableThread(val name: String, val isInterruptible: Boolean = true)
        extends Thread(name) with Logging {
  this.setDaemon(false)
{code}
should being daemon or not be passed to ShutdownableThread as a parameter ?


was (Author: yuzhihong@gmail.com):
ThrottledRequestReaper extends ShutdownableThread where
{code}
abstract class ShutdownableThread(val name: String, val isInterruptible: Boolean = true)
        extends Thread(name) with Logging {
  this.setDaemon(false)
{code}
should a subclass of ShutdownableThread with daemon being true be created ?

> ClientQuotaManager threads prevent shutdown when encountering an error loading logs
> -----------------------------------------------------------------------------------
>
>                 Key: KAFKA-6164
>                 URL: https://issues.apache.org/jira/browse/KAFKA-6164
>             Project: Kafka
>          Issue Type: Bug
>    Affects Versions: 0.11.0.0, 1.0.0
>            Reporter: Xavier Léauté
>            Priority: Major
>
> While diagnosing KAFKA-6163, we noticed that when the broker initiates a shutdown sequence
in response to an error loading the logs, the process never exits. The JVM appears to be waiting
indefinitely for several non-deamon threads to terminate.
> The threads in question are {{ThrottledRequestReaper-Request}}, {{ThrottledRequestReaper-Produce}},
and {{ThrottledRequestReaper-Fetch}}, so it appears we don't properly shutdown {{ClientQuotaManager}}
in this situation.
> QuotaManager shutdown is currently handled by KafkaApis, however KafkaApis will never
be instantiated in the first place if we encounter an error loading the logs, so quotamangers
are left dangling in that case.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message