diff --git a/core/store/dist/src/main/java/org/onosproject/store/cluster/impl/DistributedClusterStore.java b/core/store/dist/src/main/java/org/onosproject/store/cluster/impl/DistributedClusterStore.java
index af1cffe..c5fe9e8 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/cluster/impl/DistributedClusterStore.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/cluster/impl/DistributedClusterStore.java
@@ -236,7 +236,8 @@
 
     @Override
     public void markFullyStarted(boolean started) {
-        updateNode(localNode.id(), started ? State.READY : State.ACTIVE, null);
+        ControllerNode.State state = started ? State.READY : State.ACTIVE;
+        updateNode(localNode.id(), state, null);
     }
 
     @Override
@@ -269,6 +270,10 @@
         Version currentVersion = nodeVersions.get(nodeId);
         if (!Objects.equals(currentState, newState)
                 || (newVersion != null && !Objects.equals(currentVersion, newVersion))) {
+            if (localNode.id().equals(nodeId)) {
+                log.info("Local node state changed: {}", newState);
+            }
+            log.debug("Node {} state changed: {}", nodeId, newState);
             nodeStates.put(nodeId, newState);
             if (newVersion != null) {
                 nodeVersions.put(nodeId, newVersion);
