Author: kwall
Date: Tue Aug  9 05:48:53 2016
New Revision: 1755561

URL: http://svn.apache.org/viewvc?rev=1755561&view=rev
Log:
QPID-7363: Ensure that housekeeping thread is shutdown before message store is 
closed

Also ensure that closing a queue organises for the housekeeping check to finish 
promptly.

Modified:
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java
    
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java

Modified: 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java?rev=1755561&r1=1755560&r2=1755561&view=diff
==============================================================================
--- 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java
 (original)
+++ 
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java
 Tue Aug  9 05:48:53 2016
@@ -2524,7 +2524,7 @@ public abstract class AbstractQueue<X ex
         final long thresholdTime = currentTime - getAlertRepeatGap();
 
         long cumulativeQueueSize = 0;
-        while (queueListIterator.advance())
+        while (!_stopped.get() && queueListIterator.advance())
         {
             final QueueEntry node = queueListIterator.getNode();
             // Only process nodes that are not currently deleted and not 
dequeued

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=1755561&r1=1755560&r2=1755561&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
 Tue Aug  9 05:48:53 2016
@@ -1366,10 +1366,10 @@ public abstract class AbstractVirtualHos
     protected void onClose()
     {
         _dtxRegistry.close();
+        shutdownHouseKeeping();
         closeMessageStore();
         closePreferenceStore();
         stopPreferenceTaskExecutor();
-        shutdownHouseKeeping();
         closeNetworkConnectionScheduler();
         _eventLogger.message(VirtualHostMessages.CLOSED(getName()));
 



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to