logging-log4j-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Larry West (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (LOG4J2-1583) Nested logging call disrupts output of outer logging call
Date Thu, 15 Sep 2016 00:12:20 GMT

     [ https://issues.apache.org/jira/browse/LOG4J2-1583?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Larry West updated LOG4J2-1583:
-------------------------------
    Description: 
If a call to logger.info() invokes the toString() method on one of its parameters, and that
toString() method invokes another method which has another, nested logging call, then the
output of the outer call is mangled.

This can be quite confusing as the nested logging may be conditional, or at DEBUG level, etc.

Problem _appears_ to be related to ReusableParameterizedMessage.swapMessage() and the values
in indices[].  (It looks inherently non-reentrant.)

  was:
If a call to logger.info() invokes the toString() method on one of its parameters, and that
toString() method invokes another method which has another, nested logging call, then the
output of the outer call is mangled.

This can be quite confusing as the nested logging may be conditional, or at DEBUG level, etc.


> Nested logging call disrupts output of outer logging call
> ---------------------------------------------------------
>
>                 Key: LOG4J2-1583
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-1583
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 2.5, 2.6, 2.6.2
>         Environment: JVM 1.8.0_102, MacOS 10.11.6
>            Reporter: Larry West
>         Attachments: LOG4J-1583.tbz2, Log4j2ProblemDemo.java, log4j2.xml, pom.xml
>
>
> If a call to logger.info() invokes the toString() method on one of its parameters, and
that toString() method invokes another method which has another, nested logging call, then
the output of the outer call is mangled.
> This can be quite confusing as the nested logging may be conditional, or at DEBUG level,
etc.
> Problem _appears_ to be related to ReusableParameterizedMessage.swapMessage() and the
values in indices[].  (It looks inherently non-reentrant.)



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

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org


Mime
View raw message