diff options
Diffstat (limited to 'cpp/src/qpid/broker/QueueRegistry.h')
-rw-r--r-- | cpp/src/qpid/broker/QueueRegistry.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/cpp/src/qpid/broker/QueueRegistry.h b/cpp/src/qpid/broker/QueueRegistry.h index 90df662cbe..ca2cd132c4 100644 --- a/cpp/src/qpid/broker/QueueRegistry.h +++ b/cpp/src/qpid/broker/QueueRegistry.h @@ -107,6 +107,12 @@ class QueueRegistry{ for (QueueMap::const_iterator i = queues.begin(); i != queues.end(); ++i) f(i->second); } + + /** + * Change queue mode when cluster size drops to 1 node, expands again + * in practice allows flow queue to disk when last name to be exectuted + */ + void updateQueueClusterState(bool lastNode); private: typedef std::map<string, Queue::shared_ptr> QueueMap; @@ -115,6 +121,7 @@ private: int counter; MessageStore* store; management::Manageable* parent; + bool lastNode; //used to set mode on queue declare //destroy impl that assumes lock is already held: void destroyLH (const string& name); |