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)

Reply via email to