You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Vikas Singh (Jira)" <ji...@apache.org> on 2019/12/03 21:41:00 UTC
[jira] [Created] (KAFKA-9265) kafka.log.Log instances are leaking
on log delete
Vikas Singh created KAFKA-9265:
----------------------------------
Summary: kafka.log.Log instances are leaking on log delete
Key: KAFKA-9265
URL: https://issues.apache.org/jira/browse/KAFKA-9265
Project: Kafka
Issue Type: Bug
Reporter: Vikas Singh
KAFKA-8448 fixes problem with similar leak. The {{Log}} objects are being held in {{ScheduledExecutor}} {{PeriodicProducerExpirationCheck}} callback. The fix in KAFKA-8448 was to change the policy of {{ScheduledExecutor}} to remove the scheduled task when it gets canceled (by calling {{setRemoveOnCancelPolicy(true)}}).
This works when a log is closed using {{close()}} method. But when a log is deleted either when the topic gets deleted or when the rebalancing operation moves the replica away from broker, the {{delete()}} operation is invoked. {{Log.delete()}} doesn't close the pending scheduled task and that leaks Log instance.
Fix is to close the scheduled task in the {{Log.delete()}} method too.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)