[ 
https://issues.apache.org/jira/browse/LOG4J2-1334?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15244659#comment-15244659
 ] 

Remko Popma commented on LOG4J2-1334:
-------------------------------------

I made good progress on this ticket in the last week. Still to do:

- I need to add more unit tests for MutableLogEvent and the 
ReusableLogEventFactory.
- Two of the current unit tests fail when I enable synchronous garbage-free 
logging: CsvParameterLayoutTest and one more (forgot which). Both are related 
to LOG4J2-1342: passing on parameters in a ParameterizedMessage from the 
application thread to the asynchronous background thread.
- The new GcFreeMixedSyncAyncLoggingTest fails because objects are still being 
allocated somewhere when enqueueing a MutableLogEvent.
- Started working on a latency test to compare garbage-free logging to classic 
logging.

> Add LogEventFactory that reuses a cached LogEvent for garbage-free 
> synchronous logging
> --------------------------------------------------------------------------------------
>
>                 Key: LOG4J2-1334
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-1334
>             Project: Log4j 2
>          Issue Type: Improvement
>          Components: Core
>    Affects Versions: 2.5
>            Reporter: Remko Popma
>            Assignee: Remko Popma
>             Fix For: 2.6
>
>
> Until now I kept the scope of the garbage-free logging epic LOG4J2-1270 
> limited to asynchronous logging with all loggers asynchronous. This seemed a 
> natural thing to do since async loggers already have pre-allocated all 
> LogEvent instances.
> Now that LOG4J2-1270 is nearing completion it looks as if the only thing that 
> is required to allow synchronous logging to be garbage-free is a reusable 
> LogEvent implementation, stored in a ThreadLocal. This ticket is to analyse  
> and track the work for this option.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to