You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by kw...@apache.org on 2015/10/16 15:08:44 UTC
svn commit: r1708982 - in /qpid/java/trunk/broker-core/src:
main/java/org/apache/qpid/server/virtualhost/
test/java/org/apache/qpid/server/model/adapter/
test/java/org/apache/qpid/server/virtualhost/
Author: kwall
Date: Fri Oct 16 13:08:44 2015
New Revision: 1708982
URL: http://svn.apache.org/viewvc?rev=1708982&view=rev
Log:
QPID-6795: Stop AVH leaking resources (threads/selectors) when transitioning to ERROR state
Modified:
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/adapter/BrokerAdapterTest.java
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/virtualhost/AbstractVirtualHostTest.java
Modified: qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java?rev=1708982&r1=1708981&r2=1708982&view=diff
==============================================================================
--- qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java (original)
+++ qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java Fri Oct 16 13:08:44 2015
@@ -359,6 +359,8 @@ public abstract class AbstractVirtualHos
protected void onExceptionInOpen(RuntimeException e)
{
super.onExceptionInOpen(e);
+ shutdownHouseKeeping();
+ closeNetworkConnectionScheduler();
closeMessageStore();
}
@@ -607,6 +609,15 @@ public abstract class AbstractVirtualHos
}
}
+ private void closeNetworkConnectionScheduler()
+ {
+ if(_networkConnectionScheduler != null)
+ {
+ _networkConnectionScheduler.close();
+ _networkConnectionScheduler = null;
+ }
+ }
+
/**
* Allow other broker components to register a HouseKeepingTask
*
@@ -921,11 +932,7 @@ public abstract class AbstractVirtualHos
_dtxRegistry.close();
closeMessageStore();
shutdownHouseKeeping();
- if(_networkConnectionScheduler != null)
- {
- _networkConnectionScheduler.close();
- _networkConnectionScheduler = null;
- }
+ closeNetworkConnectionScheduler();
_eventLogger.message(VirtualHostMessages.CLOSED(getName()));
stopLogging(_virtualHostLoggersToClose);
@@ -1507,11 +1514,7 @@ public abstract class AbstractVirtualHos
public void run()
{
shutdownHouseKeeping();
- if (_networkConnectionScheduler != null)
- {
- _networkConnectionScheduler.close();
- _networkConnectionScheduler = null;
- }
+ closeNetworkConnectionScheduler();
closeMessageStore();
setState(State.STOPPED);
Modified: qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/adapter/BrokerAdapterTest.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/adapter/BrokerAdapterTest.java?rev=1708982&r1=1708981&r2=1708982&view=diff
==============================================================================
--- qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/adapter/BrokerAdapterTest.java (original)
+++ qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/model/adapter/BrokerAdapterTest.java Fri Oct 16 13:08:44 2015
@@ -133,9 +133,12 @@ public class BrokerAdapterTest extends Q
{
Map<String, Object> attributes = new HashMap<>();
attributes.put("name", "Broker");
+ attributes.put(Broker.MODEL_VERSION, BrokerModel.MODEL_VERSION);
+ attributes.put(Broker.DURABLE, true);
attributes.put("context", Collections.singletonMap(Broker.BROKER_FLOW_TO_DISK_THRESHOLD, flowToDiskThreshold));
_brokerAdapter = new BrokerAdapter(attributes, _systemConfig);
_brokerAdapter.open();
+ assertEquals("Unexpected broker state", State.ACTIVE, _brokerAdapter.getState());
for(int i=0; i < virtualHostQueueSizes.length; i++)
{
Modified: qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/virtualhost/AbstractVirtualHostTest.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/virtualhost/AbstractVirtualHostTest.java?rev=1708982&r1=1708981&r2=1708982&view=diff
==============================================================================
--- qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/virtualhost/AbstractVirtualHostTest.java (original)
+++ qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/virtualhost/AbstractVirtualHostTest.java Fri Oct 16 13:08:44 2015
@@ -301,6 +301,7 @@ public class AbstractVirtualHostTest ext
host.open();
}
}, loggerName, Level.WARN, "Cannot check file system for disk space");
+ host.close();
}
private void assertActionProducesLogMessage(final Runnable action, final String loggerName,
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org