commit | 5f429d675c0a511d60debd4a1bfd9ddf57658482 | [log] [tgz] |
---|---|---|
author | Thomas Vachuska <tom@onlab.us> | Thu May 28 15:34:36 2015 -0700 |
committer | Gerrit Code Review <gerrit@onlab.us> | Thu May 28 22:49:18 2015 +0000 |
tree | 9359ec8364b03eb11070a8bbab2a1f708308f050 | |
parent | 3bc27d8201c6176850731db14758d4957f4b772a [diff] |
Fixed race-conditions in null providers. Change-Id: Ie1acd9d74e1277776a5981d21043671010b37343
diff --git a/core/net/src/main/java/org/onosproject/net/device/impl/DeviceManager.java b/core/net/src/main/java/org/onosproject/net/device/impl/DeviceManager.java index 0267c4f..527784f 100644 --- a/core/net/src/main/java/org/onosproject/net/device/impl/DeviceManager.java +++ b/core/net/src/main/java/org/onosproject/net/device/impl/DeviceManager.java
@@ -382,7 +382,9 @@ port.portSpeed()))); store.updatePorts(this.provider().id(), deviceId, descs); try { - post(store.markOffline(deviceId)); + if (mastershipService.getLocalRole(deviceId) == MASTER) { + post(store.markOffline(deviceId)); + } } catch (IllegalStateException e) { log.warn("Failed to mark {} offline", deviceId); // only the MASTER should be marking off-line in normal cases,