[
https://issues.apache.org/jira/browse/LOG4J2-2715?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17487711#comment-17487711
]
ASF subversion and git services commented on LOG4J2-2715:
---------------------------------------------------------
Commit 910f5812c836aa0afeb4ffde1c9da9f8c3e878a3 in logging-log4j2's branch
refs/heads/release-2.x from Gary Gregory
[ https://gitbox.apache.org/repos/asf?p=logging-log4j2.git;h=910f581 ]
[LOG4J2-2715]
JDBCAppender commits to the DB a JTA RollbackOnly transaction and causes
DB inconsistency.
Update documentation.
> JDBCAppender commits to the DB a JTA RollbackOnly transaction and causes DB
> inconsistency
> -----------------------------------------------------------------------------------------
>
> Key: LOG4J2-2715
> URL: https://issues.apache.org/jira/browse/LOG4J2-2715
> Project: Log4j 2
> Issue Type: Bug
> Components: Appenders, JDBC
> Affects Versions: 2.9.1, 2.12.1
> Environment: Container Payara 5.183,
> Application: EAR using EJB 3, Hibernate 5.3.6-FINAL
> JDBC Driver: Oracle Driver ojdbc8
> Reporter: David Obber
> Priority: Critical
>
> I'm using log4j2 in a Payara 5.183 server and I've enabled a JDBC Appender
> connected to a JNDI datasource.
> <JDBC name="DBAppender" tableName="LOG_TABLE">
> <DataSource jndiName="myJNDI"></DataSource>
> <Column ..." />
> <Column ..." />
> </JDBC>
> The same datasource is used by the application to talk with the db. If the
> application, that uses EJB3, marks the transaction to be rolled back
> (sessionContext.setRollbackOnly()), each statement sent to the database
> (flush(), executeUpdate()) inside the transaction must not be committed.
> What happens is that using the *jdbc appender* causes a commit that
> *{color:#de350b}writes to the database everything{color}*, *causing database
> inconsistency*.
> Using DriverManager instead of a JNDI works fine, but I don't know if I can
> set a connection pool with it.
>
> When log4j is inside a JTA transaction it should use another JDBC connection
> to log.
>
>
>
>
>
--
This message was sent by Atlassian Jira
(v8.20.1#820001)