diff --git a/core/net/src/main/java/org/onlab/onos/cluster/impl/MastershipManager.java b/core/net/src/main/java/org/onlab/onos/cluster/impl/MastershipManager.java
index 20ebc40..a0da87c 100644
--- a/core/net/src/main/java/org/onlab/onos/cluster/impl/MastershipManager.java
+++ b/core/net/src/main/java/org/onlab/onos/cluster/impl/MastershipManager.java
@@ -78,22 +78,15 @@
         checkNotNull(deviceId, DEVICE_ID_NULL);
         checkNotNull(role, ROLE_NULL);
 
-        MastershipRole current = store.getRole(nodeId, deviceId);
-        if (role.equals(current)) {
-            return;
+        MastershipEvent event = null;
+        if (role.equals(MastershipRole.MASTER)) {
+            event = store.setMaster(nodeId, deviceId);
         } else {
-            MastershipEvent event = null;
-            if (role.equals(MastershipRole.MASTER)) {
-                //current was STANDBY, wanted MASTER
-                event = store.setMaster(nodeId, deviceId);
-            } else {
-                //current was MASTER, wanted STANDBY
-                event = store.unsetMaster(nodeId, deviceId);
-            }
+            event = store.unsetMaster(nodeId, deviceId);
+        }
 
-            if (event != null) {
-                post(event);
-            }
+        if (event != null) {
+            post(event);
         }
     }
 
@@ -105,10 +98,7 @@
 
     @Override
     public void relinquishMastership(DeviceId deviceId) {
-        checkNotNull(deviceId, DEVICE_ID_NULL);
-
-        MastershipRole role = store.getRole(
-                clusterService.getLocalNode().id(), deviceId);
+        MastershipRole role = getLocalRole(deviceId);
         if (!role.equals(MastershipRole.MASTER)) {
             return;
         }
diff --git a/core/net/src/main/java/org/onlab/onos/net/device/impl/DeviceManager.java b/core/net/src/main/java/org/onlab/onos/net/device/impl/DeviceManager.java
index eb409a5..f1567fd 100644
--- a/core/net/src/main/java/org/onlab/onos/net/device/impl/DeviceManager.java
+++ b/core/net/src/main/java/org/onlab/onos/net/device/impl/DeviceManager.java
@@ -202,7 +202,7 @@
                 log.info("Device {} connected", deviceId);
                 mastershipService.requestRoleFor(deviceId);
                 provider().roleChanged(event.subject(),
-                        mastershipService.getLocalRole(deviceId));
+                        mastershipService.requestRoleFor(deviceId));
                 post(event);
             }
         }
