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

John Calcote updated LOG4J2-2860:
---------------------------------
    Description: 
We find ourselves in a situation where all threads are waiting for a lock in 
RollingFileManager, and no thread seems to own it:
{noformat}
$ grep 0x000000008015e528 jstack.10122 
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager) {noformat}

This leads me to believe that some thread grabbed the lock and died while 
holding it. 

We will try upgrading to 2.13 to see if it's been fixed, of course.

  was:
We find ourselves in a situation where all threads are waiting for a lock in 
RollingFileManager, and no thread seems to own it:
{noformat}
$ grep 0x000000008015e528 jstack.10122 
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
        - waiting to lock <0x000000008015e528> (a 
org.apache.logging.log4j.core.appender.rolling.RollingFileManager) {noformat}

We will try upgrading to 2.13 to see if it's been fixed, of course.


> RollingFileManager has a deadlock issue in log4j2 2.5 and earlier
> -----------------------------------------------------------------
>
>                 Key: LOG4J2-2860
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-2860
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Appenders
>    Affects Versions: 2.5
>            Reporter: John Calcote
>            Priority: Major
>
> We find ourselves in a situation where all threads are waiting for a lock in 
> RollingFileManager, and no thread seems to own it:
> {noformat}
> $ grep 0x000000008015e528 jstack.10122 
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager)
>       - waiting to lock <0x000000008015e528> (a 
> org.apache.logging.log4j.core.appender.rolling.RollingFileManager) {noformat}
> This leads me to believe that some thread grabbed the lock and died while 
> holding it. 
> We will try upgrading to 2.13 to see if it's been fixed, of course.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to