Cory Kolbeck created KAFKA-2992: ----------------------------------- Summary: Trace log statements in the replica fetcher inner loop create large amounts of garbage Key: KAFKA-2992 URL: https://issues.apache.org/jira/browse/KAFKA-2992 Project: Kafka Issue Type: Improvement Components: core Affects Versions: 0.9.0.0, 0.8.2.1 Environment: Centos 6, Java 1.8.0_20 Reporter: Cory Kolbeck Priority: Minor Fix For: 0.8.1.2, 0.10.0.0
We're seeing some GC pause issues in production, and during our investigation found that the thunks created during invocation of three trace statements guarded in the attached PR were responsible for ~98% of all allocations by object count and ~90% by size. While I'm not sure that this was actually the cause of our issue, it seems prudent to avoid useless allocations in a tight loop. I realize that the trace() call does its own guarding internally, however it's insufficient to prevent allocation of the thunk. I can work on getting profiling results to attach here, but I used YourKit and the license has since expired. -- This message was sent by Atlassian JIRA (v6.3.4#6332)