Shutdown cleanup; hunt for exceptions continues
Change-Id: I8cbfaec0820d63f5122a82dd25ba249ba1f690a4
diff --git a/core/store/dist/src/main/java/org/onosproject/store/cfg/GossipComponentConfigStore.java b/core/store/dist/src/main/java/org/onosproject/store/cfg/GossipComponentConfigStore.java
index 94e17b1..13690d4 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/cfg/GossipComponentConfigStore.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/cfg/GossipComponentConfigStore.java
@@ -76,6 +76,7 @@
@Deactivate
public void deactivate() {
+ properties.destroy();
log.info("Stopped");
}
diff --git a/core/store/dist/src/main/java/org/onosproject/store/ecmap/EventuallyConsistentMapImpl.java b/core/store/dist/src/main/java/org/onosproject/store/ecmap/EventuallyConsistentMapImpl.java
index 62d145d..cf652ff 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/ecmap/EventuallyConsistentMapImpl.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/ecmap/EventuallyConsistentMapImpl.java
@@ -498,7 +498,7 @@
return;
}
- if (underHighLoad()) {
+ if (underHighLoad() || destroyed) {
return;
}
@@ -700,10 +700,13 @@
}
}
- private final class InternalEventListener implements
- ClusterMessageHandler {
+ private final class InternalEventListener implements ClusterMessageHandler {
@Override
public void handle(ClusterMessage message) {
+ if (destroyed) {
+ return;
+ }
+
log.debug("Received update event from peer: {}", message.sender());
Collection<AbstractEntry<K, V>> events = serializer.decode(message.payload());
diff --git a/core/store/dist/src/main/java/org/onosproject/store/group/impl/DistributedGroupStore.java b/core/store/dist/src/main/java/org/onosproject/store/group/impl/DistributedGroupStore.java
index 1d30607..d6d92a9 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/group/impl/DistributedGroupStore.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/group/impl/DistributedGroupStore.java
@@ -234,6 +234,9 @@
@Deactivate
public void deactivate() {
+ groupStoreEntriesByKey.destroy();
+ groupStoreEntriesById.destroy();
+ auditPendingReqQueue.destroy();
log.info("Stopped");
}