Repository: logging-log4j2
Updated Branches:
  refs/heads/master 12ba9c54c -> 4d5e291f4


[LOG4J2-2489] JDBC Appender should release parameter resources ASAP.

Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/4d5e291f
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/4d5e291f
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/4d5e291f

Branch: refs/heads/master
Commit: 4d5e291f423ed3592974897884da51666a3c9c15
Parents: 12ba9c5
Author: Gary Gregory <[email protected]>
Authored: Fri Oct 26 15:21:48 2018 -0600
Committer: Gary Gregory <[email protected]>
Committed: Fri Oct 26 15:21:48 2018 -0600

----------------------------------------------------------------------
 .../logging/log4j/jdbc/appender/JdbcDatabaseManager.java     | 8 ++++++++
 src/changes/changes.xml                                      | 6 ++++++
 2 files changed, 14 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/4d5e291f/log4j-jdbc/src/main/java/org/apache/logging/log4j/jdbc/appender/JdbcDatabaseManager.java
----------------------------------------------------------------------
diff --git 
a/log4j-jdbc/src/main/java/org/apache/logging/log4j/jdbc/appender/JdbcDatabaseManager.java
 
b/log4j-jdbc/src/main/java/org/apache/logging/log4j/jdbc/appender/JdbcDatabaseManager.java
index 01eaa13..6231fa9 100644
--- 
a/log4j-jdbc/src/main/java/org/apache/logging/log4j/jdbc/appender/JdbcDatabaseManager.java
+++ 
b/log4j-jdbc/src/main/java/org/apache/logging/log4j/jdbc/appender/JdbcDatabaseManager.java
@@ -154,6 +154,8 @@ public final class JdbcDatabaseManager extends 
AbstractDatabaseManager {
                         "Cannot write logging event; JDBC manager not 
connected to the database.");
             }
 
+            // Clear in case there are leftovers.
+            statement.clearParameters();
             if (serializable instanceof MapMessage) {
                 setFields((MapMessage<?, ?>) serializable);
             }
@@ -213,6 +215,12 @@ public final class JdbcDatabaseManager extends 
AbstractDatabaseManager {
             throw new AppenderLoggingException(
                     "Failed to insert record for log event in JDBC manager: " 
+ e.getMessage(), e);
         } finally {
+            // Release ASAP
+            try {
+                statement.clearParameters();
+            } catch (SQLException e) {
+                // Ignore
+            }
             Closer.closeSilently(reader);
         }
     }

http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/4d5e291f/src/changes/changes.xml
----------------------------------------------------------------------
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 8e0721d..8bf1bcd 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -296,6 +296,9 @@
       <action issue="LOG4J2-2476" dev="ggregory" type="fix" due-to="Al Bundy">
         org.apache.log4j.SimpleLayout and ConsoleAppender missing in 
log4j-1.2-api.
       </action>
+      <action issue="LOG4J2-2489" dev="ggregory" type="update">
+        JDBC Appender should release parameter resources ASAP.
+      </action>
     </release>
     <release version="2.11.2" date="2018-MM-DD" description="GA Release 
2.11.2">
       <action issue="LOG4J2-2391" dev="ckozak" type="update">
@@ -373,6 +376,9 @@
       <action issue="LOG4J2-2476" dev="ggregory" type="fix" due-to="Al Bundy">
         org.apache.log4j.SimpleLayout and ConsoleAppender missing in 
log4j-1.2-api.
       </action>
+      <action issue="LOG4J2-2489" dev="ggregory" type="update">
+        JDBC Appender should release parameter resources ASAP.
+      </action>
     </release>
     <release version="2.11.1" date="2018-07-22" description="GA Release 
2.11.1">
       <action issue="LOG4J2-2389" dev="rgoers" type="fix" due-to="Liu Wen">

Reply via email to