Tihomir Meščić created LOG4J2-457:
-------------------------------------

             Summary: JDBCAppender does not release JDBC connections to the 
connection pool when WAR/EAR is stopped
                 Key: LOG4J2-457
                 URL: https://issues.apache.org/jira/browse/LOG4J2-457
             Project: Log4j 2
          Issue Type: Bug
          Components: Appenders
    Affects Versions: 2.0-beta9
         Environment: JBOSS application server, PostgreSQL database
            Reporter: Tihomir Meščić


We use log4j 2 for logging inside our J2EE app (packaged as EAR, log4j JARs are 
bundled inside). The app is deployed on JBOSS EAP 6.1 app server. We are using 
the JDBCAppender for logging to a PostgreSQL database, and the appender is 
configured to use a DataSource for fetching connections. The appender is 
configured as follows:

    <JDBC name="jdbcAppender" tableName="log_entries">
      <DataSource jndiName="java:jboss/datasources/XyzDS" />
      <Column name="log_entries_message" isUnicode="false" pattern="%message" />
      <Column name="log_entries_type" literal="0" />
      .....

The problem is: after the EAR is stopped (undeployed) log4j is not releasing 
the JDBC connection back to the connection pool, and after we stop/start the 
application a couple of times, our server becomes useless because there are no 
more free connections in the connection pool. I've looked at the thread dump of 
the server and there are a lot of threads like this:
org.apache.logging.log4j.core.LoggerContext$ShutdownThread @ 0xbe447138




--
This message was sent by Atlassian JIRA
(v6.1#6144)

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

Reply via email to