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

Tal Liron commented on LOG4J2-591:
----------------------------------

I would suggest that it's unnecessary to close the MongoClient at all, since 
the Java MongoDB driver already maintains its internal pool of connections 
automatically. A MongoClient instance *does not* represent a database 
connection.

So, in MongoDBConnection, close() can simply be a no-op.

> Log4j closes MongoDB connections after the first log message
> ------------------------------------------------------------
>
>                 Key: LOG4J2-591
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-591
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Appenders
>    Affects Versions: 2.0-rc1
>            Reporter: Tal Liron
>            Priority: Critical
>
> It seems that the AbstractDatabaseManager behavior is now to close the 
> connection after the buffer is flushed (or immediately after a write if there 
> is no buffer). These are the calls to commitAndClose().
> The intended behavior for close() is that it would return a connection to the 
> connection pool. That would make sense for most good database drivers.
> However, the MongoDBProvider simply closes the MongoClient, releasing the 
> entire pool. This means that further attempts to write to the log, after the 
> first time, will fail.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

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

Reply via email to