[ https://issues.apache.org/jira/browse/KAFKA-2779?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Rajini Sivaram updated KAFKA-2779: ---------------------------------- Status: Patch Available (was: Open) Move socket close to finally block to avoid leaking file descriptors when graceful close message cannot be sent because remote end has already closed the connection. > Kafka SSL transport layer leaks file descriptors > ------------------------------------------------ > > Key: KAFKA-2779 > URL: https://issues.apache.org/jira/browse/KAFKA-2779 > Project: Kafka > Issue Type: Bug > Components: network > Affects Versions: 0.9.0.0 > Reporter: Rajini Sivaram > Assignee: Rajini Sivaram > Priority: Critical > > There is currently no transition from read() to close() in SslTransportLayer > to handle graceful shutdown requests. As a result, Kafka SSL connections are > never shutdown gracefully. In addition to this, close() does not handle > ungraceful termination of connections correctly. If flush() fails because the > other end has performed a close (eg. because graceful termination was not > handled), Kafka prints out a warning and does not close the socket. This > leaks file descriptors. > We are seeing a large number of open file descriptors because our health > checks to Kafka result in connections that are neither terminated gracefully > nor closed correctly. -- This message was sent by Atlassian JIRA (v6.3.4#6332)