Details
Description
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.
Attachments
Issue Links
- is related to
-
KAFKA-2285 Logging trait obfuscates call site information
- Open