You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by ch...@apache.org on 2012/09/18 21:11:31 UTC
svn commit: r1387325 - in
/activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker:
LocalRouter.scala Queue.scala Topic.scala
Author: chirino
Date: Tue Sep 18 19:11:30 2012
New Revision: 1387325
URL: http://svn.apache.org/viewvc?rev=1387325&view=rev
Log:
Fixes the NPEs that were occurring during the unit tests.
Modified:
activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/LocalRouter.scala
activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Queue.scala
activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Topic.scala
Modified: activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/LocalRouter.scala
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/LocalRouter.scala?rev=1387325&r1=1387324&r2=1387325&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/LocalRouter.scala (original)
+++ activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/LocalRouter.scala Tue Sep 18 19:11:30 2012
@@ -1316,6 +1316,7 @@ class LocalRouter(val virtual_host:Virtu
}
def _destroy_queue(queue: Queue) {
+ assert(service_state.is_starting_or_started, "Can't destroy.. allready stopped")
on_queue_destroy_start
queue.stop(^{
var metrics = queue.get_queue_metrics
@@ -1336,11 +1337,9 @@ class LocalRouter(val virtual_host:Virtu
queues_by_store_id.remove(queue.store_id)
if (queue.tune_persistent) {
- queue.dispatch_queue {
- virtual_host.store.remove_queue(queue.store_id) { x =>
- dispatch_queue {
- on_queue_destroy_end
- }
+ virtual_host.store.remove_queue(queue.store_id) { x =>
+ dispatch_queue {
+ on_queue_destroy_end
}
}
} else {
Modified: activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Queue.scala
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Queue.scala?rev=1387325&r1=1387324&r2=1387325&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Queue.scala (original)
+++ activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Queue.scala Tue Sep 18 19:11:30 2012
@@ -439,7 +439,9 @@ class Queue(val router: LocalRouter, val
// Have we been idle that whole time?
if( idled_at == idled_at_start ) {
virtual_host.dispatch_queue {
- router._destroy_queue(this)
+ if( virtual_host.service_state.is_started ) {
+ router._destroy_queue(this)
+ }
}
}
}
Modified: activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Topic.scala
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Topic.scala?rev=1387325&r1=1387324&r2=1387325&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Topic.scala (original)
+++ activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Topic.scala Tue Sep 18 19:11:30 2012
@@ -488,7 +488,9 @@ class Topic(val router:LocalRouter, val
if( queue.all_subscriptions.isEmpty ) {
val metrics = queue.get_queue_metrics
router.dispatch_queue {
- router._destroy_queue(queue)
+ if(router.service_state.is_started) {
+ router._destroy_queue(queue)
+ }
}
dispatch_queue {
topic_metrics.dequeue_item_counter += metrics.dequeue_item_counter