Bravesh Mistry created KAFKA-1521:
-------------------------------------
Summary: Producer Graceful Shutdown issue in Container (Kafka
version 0.8.x.x)
Key: KAFKA-1521
URL: https://issues.apache.org/jira/browse/KAFKA-1521
Project: Kafka
Issue Type: Bug
Components: producer
Affects Versions: 0.8.1.1, 0.8.0
Environment: Tomcat Container or Any other J2EE container
Reporter: Bravesh Mistry
Assignee: Jun Rao
Priority: Minor
Hi Kafka Team,
We are running multiple webapps in tomcat container, and we have producer which
are managed by the ServletContextListener (Lifecycle). Upon
contextInitialized we create and on contextDestroyed we call the
producer.close() but underlying Metric Lib does not shutdown. So we have
thread leak due to this issue. I had to call
Metrics.defaultRegistry().shutdown() to resolve this issue. is this know issue
? I know the metric lib have JVM Shutdown hook, but it will not be invoke since
the contain thread is un-deploying the web app and class loader goes way and
leaking thread does not find the under lying Kafka class. Because of this
tomcat, it not shutting down gracefully.
Are you guys planing to un-register metrics when Producer close is called or
shutdown Metrics pool for client.id ?
Here is logs:
SEVERE: The web application [ ] appears to have started a thread named
[metrics-meter-tick-thread-1] but has failed to stop it. This is very likely to
create a memory leak.
SEVERE: The web application [] appears to have started a thread named
[metrics-meter-tick-thread-2] but has failed to stop it. This is very likely to
create a memory leak.
Thanks,
Bhavesh
--
This message was sent by Atlassian JIRA
(v6.2#6252)