Repository: logging-log4j2 Updated Branches: refs/heads/release-2.x 4ac94654d -> 505d24566
[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/505d2456 Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/505d2456 Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/505d2456 Branch: refs/heads/release-2.x Commit: 505d24566fe115753c46f59373dfbfce170c2118 Parents: 4ac9465 Author: Gary Gregory <[email protected]> Authored: Fri Oct 26 15:21:15 2018 -0600 Committer: Gary Gregory <[email protected]> Committed: Fri Oct 26 15:21:15 2018 -0600 ---------------------------------------------------------------------- .../log4j/core/appender/db/jdbc/JdbcDatabaseManager.java | 9 ++++++++- src/changes/changes.xml | 3 +++ 2 files changed, 11 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/505d2456/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/db/jdbc/JdbcDatabaseManager.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/db/jdbc/JdbcDatabaseManager.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/db/jdbc/JdbcDatabaseManager.java index 4f82805..df39ec1 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/db/jdbc/JdbcDatabaseManager.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/db/jdbc/JdbcDatabaseManager.java @@ -153,7 +153,8 @@ public final class JdbcDatabaseManager extends AbstractDatabaseManager { throw new AppenderLoggingException( "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 +214,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/505d2456/src/changes/changes.xml ---------------------------------------------------------------------- diff --git a/src/changes/changes.xml b/src/changes/changes.xml index 74e38f0..83a5016 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -103,6 +103,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">
