You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by gg...@apache.org on 2017/06/24 02:36:54 UTC
logging-log4j2 git commit: [LOG4J2-1953] JndiManager is not released
when the JmsAppender builder catches an exception trying to build itself.
Repository: logging-log4j2
Updated Branches:
refs/heads/master 8d0b7bd06 -> 01cf5b000
[LOG4J2-1953] JndiManager is not released when the JmsAppender builder
catches an exception trying to build itself.
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/01cf5b00
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/01cf5b00
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/01cf5b00
Branch: refs/heads/master
Commit: 01cf5b000fe83b5b29217589aa648b7d5ef00427
Parents: 8d0b7bd
Author: Gary Gregory <gg...@apache.org>
Authored: Fri Jun 23 19:36:52 2017 -0700
Committer: Gary Gregory <gg...@apache.org>
Committed: Fri Jun 23 19:36:52 2017 -0700
----------------------------------------------------------------------
.../logging/log4j/core/appender/mom/JmsAppender.java | 12 ++++++++----
src/changes/changes.xml | 3 +++
2 files changed, 11 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/01cf5b00/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/mom/JmsAppender.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/mom/JmsAppender.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/mom/JmsAppender.java
index b91744e..e738b16 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/mom/JmsAppender.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/mom/JmsAppender.java
@@ -217,16 +217,20 @@ public class JmsAppender extends AbstractAppender {
@Override
public JmsAppender build() {
JmsManager actualJmsManager = jmsManager;
+ JndiManager jndiManager = null;
if (actualJmsManager == null) {
- final JndiManager jndiManager = JndiManager.getJndiManager(factoryName, providerUrl, urlPkgPrefixes,
- securityPrincipalName, securityCredentials, null);
- actualJmsManager = JmsManager.getJmsManager(name, jndiManager, factoryBindingName,
- destinationBindingName, userName, password);
+ jndiManager = JndiManager.getJndiManager(factoryName, providerUrl, urlPkgPrefixes,
+ securityPrincipalName, securityCredentials, null);
+ actualJmsManager = JmsManager.getJmsManager(name, jndiManager, factoryBindingName,
+ destinationBindingName, userName, password);
}
try {
return new JmsAppender(name, filter, layout, ignoreExceptions, actualJmsManager);
} catch (final JMSException e) {
LOGGER.error("Error creating JmsAppender [{}].", name, e);
+ if (jndiManager != null) {
+ jndiManager.stop(500, TimeUnit.MILLISECONDS);
+ }
return null;
}
}
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/01cf5b00/src/changes/changes.xml
----------------------------------------------------------------------
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 2f072c1..15e469d 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -43,6 +43,9 @@
<action issue="LOG4J2-1943" dev="rgoers" type="fix">
The eventPrefix attribute was being ignored in the RFC5424Layout.
</action>
+ <action issue="LOG4J2-1953" dev="ggregory" type="fix">
+ JndiManager is not released when the JmsAppender builder catches an exception trying to build itself.
+ </action>
<action issue="LOG4J2-1911" dev="rgoers" type="fix">
Improve the documentation of the DynamicThresholdFilter.
</action>