modules/plugins/jmx/src/main/java/org/rhq/plugins/jmx/JMXServerComponent.java | 11 +++++++++- 1 file changed, 10 insertions(+), 1 deletion(-)
New commits: commit d0b0040ea7aaabd38c8c414f9e6d2397372a0866 Author: Stefan Negrea snegrea@redhat.com Date: Wed Oct 31 13:35:00 2012 -0500
One more updated for the code that attempts to reconnect to the JMX server. Before attempting to reconnect, attempt to close the existing connection to avoid thread leaks from underlying resources.
diff --git a/modules/plugins/jmx/src/main/java/org/rhq/plugins/jmx/JMXServerComponent.java b/modules/plugins/jmx/src/main/java/org/rhq/plugins/jmx/JMXServerComponent.java index 412096d..14f43b9 100644 --- a/modules/plugins/jmx/src/main/java/org/rhq/plugins/jmx/JMXServerComponent.java +++ b/modules/plugins/jmx/src/main/java/org/rhq/plugins/jmx/JMXServerComponent.java @@ -132,10 +132,19 @@ public class JMXServerComponent<T extends ResourceComponent<?>> implements JMXCo */ private synchronized void reconnectIfDisconnected() { if ((connectionProvider) == null || !connectionProvider.isConnected()) { + if (connection != null) { + try { + connection.close(); + } catch (Exception e) { + log.debug("Unable to close existing EmsConnection for " + context.getResourceType() + "[" + + context.getResourceKey() + "] due to error: " + e); + } + } + try { internalStart(); } catch (Exception e) { - log.debug("Still unable to reconnect to " + context.getResourceType() + "[" + context.getResourceKey() + log.debug("Unable to reconnect to " + context.getResourceType() + "[" + context.getResourceKey() + "] due to error: " + e); } }
rhq-commits@lists.fedorahosted.org