[ https://issues.apache.org/jira/browse/KAFKA-2281?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
TAO XIAO updated KAFKA-2281: ---------------------------- Description: org.apache.kafka.clients.producer.internals.ErrorLoggingCallback is constructed with byte[] value as one of the input. It holds the reference to the value until it finishes its lifecycle. The value is not used except for logging its size. This behavior causes unnecessary memory consumption. The fix is to keep reference to the value size instead of value itself when logAsString is false was: org.apache.kafka.clients.producer.internals.ErrorLoggingCallback is constructed with byte[] value as one of the input. It holds the reference to the value until it finishes its lifecycle. The value is not used except for logging its size. This behavior causes unnecessary memory consumption. The fix is to keep reference to the value size instead of value itself > org.apache.kafka.clients.producer.internals.ErrorLoggingCallback holds > unnecessary byte[] value > ----------------------------------------------------------------------------------------------- > > Key: KAFKA-2281 > URL: https://issues.apache.org/jira/browse/KAFKA-2281 > Project: Kafka > Issue Type: Bug > Components: producer > Affects Versions: 0.8.2.1 > Reporter: TAO XIAO > Assignee: TAO XIAO > Attachments: KAFKA-2281_2015-06-25.patch > > > org.apache.kafka.clients.producer.internals.ErrorLoggingCallback is > constructed with byte[] value as one of the input. It holds the reference to > the value until it finishes its lifecycle. The value is not used except for > logging its size. This behavior causes unnecessary memory consumption. > The fix is to keep reference to the value size instead of value itself when > logAsString is false -- This message was sent by Atlassian JIRA (v6.3.4#6332)