[ https://issues.apache.org/jira/browse/LOG4J2-1341?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Remko Popma updated LOG4J2-1341: -------------------------------- Description: *To do* The following pattern converters can be modified to avoid creating temporary objects in their {{format}} method: * AbstractStyleNameConverter * EncodingPatternConverter * EqualsIgnoreCaseReplacementConverter * EqualsReplacementConverter * IntegerPatternConverter * MarkerPatternConverter * MaxLengthConverter * MapPatternConverter * MdcPatternConverter * NdcPatternConverter * RelativeTimePatternConverter * SequenceNumberPatternConverter *Investigate* The following pattern converters may be difficult to modify since they rely on JDK components that create temporary objects: * (-) ExtendedThrowablePatternConverter * (-) RegexReplacementConverter * (-) RootThrowablePatternConverter * (-) ThrowablePatternConverter * (-) UuidPatternConverter * (-) VariablesNotEmptyReplacementConverter * (-) ClassNamePatternConverter (location information requires creating StackTraceElements) * (-) FileLocationPatternConverter * (-) FullLocationPatternConverter * (-) LineLocationPatternConverter * (-) MethodLocationPatternConverter *Done* The following pattern converters already do not allocate temporary objects in their format method: * (/) HighlightConverter (Thanks to Richard Zschech) * (/) StyleConverter (Thanks to Richard Zschech) * (/) DatePatternConverter * (/) LevelPatternConverter * (/) LineSeparatorPatternConverter * (/) LiteralPatternConverter (unless literal contains '${') * (/) LoggerPatternConverter * (/) MarkerSimpleNamePatternConverter * (/) MessagePatternConverter (unless a Jansi or HTML renderer is configured or message has '${' lookups) * (/) NamePatternConverter * (/) NanoTimePatternConverter * (/) ThreadIdPatternConverter * (/) ThreadNamePatternConverter * (/) ThreadPriorityPatternConverter was: *To do* The following pattern converters can be modified to avoid creating temporary objects in their {{format}} method: * AbstractStyleNameConverter * EncodingPatternConverter * EqualsIgnoreCaseReplacementConverter * EqualsReplacementConverter * FullLocationPatternConverter * IntegerPatternConverter * MarkerPatternConverter * MaxLengthConverter * RelativeTimePatternConverter * SequenceNumberPatternConverter *Investigate* The following pattern converters may be difficult to modify since they rely on JDK components that create temporary objects: * ExtendedThrowablePatternConverter * MapPatternConverter * MdcPatternConverter * NdcPatternConverter * RegexReplacementConverter * RootThrowablePatternConverter * ThrowablePatternConverter * UuidPatternConverter * VariablesNotEmptyReplacementConverter *Done* The following pattern converters already do not allocate temporary objects in their format method: * (/) HighlightConverter (Thanks to Richard Zschech) * (/) StyleConverter (Thanks to Richard Zschech) * ClassNamePatternConverter * DatePatternConverter * FileLocationPatternConverter * LevelPatternConverter * LineLocationPatternConverter * LineSeparatorPatternConverter * LiteralPatternConverter (unless literal contains '${') * LoggerPatternConverter * MarkerSimpleNamePatternConverter * MessagePatternConverter * MethodLocationPatternConverter * NamePatternConverter * NanoTimePatternConverter * ThreadIdPatternConverter * ThreadNamePatternConverter * ThreadPriorityPatternConverter > (GC) Avoid allocating temporary objects in Pattern Converters for > PatternLayout > ------------------------------------------------------------------------------- > > Key: LOG4J2-1341 > URL: https://issues.apache.org/jira/browse/LOG4J2-1341 > Project: Log4j 2 > Issue Type: Improvement > Components: Pattern Converters > Affects Versions: 2.5 > Reporter: Remko Popma > Fix For: 2.8 > > > *To do* > The following pattern converters can be modified to avoid creating temporary > objects in their {{format}} method: > * AbstractStyleNameConverter > * EncodingPatternConverter > * EqualsIgnoreCaseReplacementConverter > * EqualsReplacementConverter > * IntegerPatternConverter > * MarkerPatternConverter > * MaxLengthConverter > * MapPatternConverter > * MdcPatternConverter > * NdcPatternConverter > * RelativeTimePatternConverter > * SequenceNumberPatternConverter > *Investigate* > The following pattern converters may be difficult to modify since they rely > on JDK components that create temporary objects: > * (-) ExtendedThrowablePatternConverter > * (-) RegexReplacementConverter > * (-) RootThrowablePatternConverter > * (-) ThrowablePatternConverter > * (-) UuidPatternConverter > * (-) VariablesNotEmptyReplacementConverter > * (-) ClassNamePatternConverter (location information requires creating > StackTraceElements) > * (-) FileLocationPatternConverter > * (-) FullLocationPatternConverter > * (-) LineLocationPatternConverter > * (-) MethodLocationPatternConverter > *Done* > The following pattern converters already do not allocate temporary objects in > their format method: > * (/) HighlightConverter (Thanks to Richard Zschech) > * (/) StyleConverter (Thanks to Richard Zschech) > * (/) DatePatternConverter > * (/) LevelPatternConverter > * (/) LineSeparatorPatternConverter > * (/) LiteralPatternConverter (unless literal contains '${') > * (/) LoggerPatternConverter > * (/) MarkerSimpleNamePatternConverter > * (/) MessagePatternConverter (unless a Jansi or HTML renderer is configured > or message has '${' lookups) > * (/) NamePatternConverter > * (/) NanoTimePatternConverter > * (/) ThreadIdPatternConverter > * (/) ThreadNamePatternConverter > * (/) ThreadPriorityPatternConverter -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: log4j-dev-unsubscr...@logging.apache.org For additional commands, e-mail: log4j-dev-h...@logging.apache.org