diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/EventuallyConsistentMapImpl.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/EventuallyConsistentMapImpl.java
index fc7c0eb..4f70629 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/EventuallyConsistentMapImpl.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/EventuallyConsistentMapImpl.java
@@ -556,7 +556,7 @@
                 .stream()
                 .map(ControllerNode::id)
                 .filter(id -> !localNodeId.equals(id))
-                .filter(id -> clusterService.getState(id) == ControllerNode.State.ACTIVE)
+                .filter(id -> clusterService.getState(id).isActive())
                 .collect(Collectors.toList());
         Collections.shuffle(activePeers);
         return activePeers.isEmpty() ? Optional.empty() : Optional.of(activePeers.get(0));
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/MutexExecutionManager.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/MutexExecutionManager.java
index 431a240..bc45d68 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/MutexExecutionManager.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/MutexExecutionManager.java
@@ -200,7 +200,7 @@
             long activeNodes = clusterService.getNodes()
                                              .stream()
                                              .map(node -> clusterService.getState(node.id()))
-                                             .filter(State.ACTIVE::equals)
+                                             .filter(State::isActive)
                                              .count();
             if (clusterService.getNodes().size() > 1 && activeNodes == 1) {
                 log.info("This node is partitioned away from the cluster. Stopping all inflight executions");
