From 4ef245e8ea98ca5e4832e82daa946f52e384085f Mon Sep 17 00:00:00 2001 From: Ray Milkey Date: Thu, 10 May 2018 15:41:16 -0700 Subject: [PATCH] Fix NPE in DeviceManager for an offline device Change-Id: Ib105b029efd0519c6ed54abf8e89c7be6c905987 --- .../java/org/onosproject/net/device/impl/DeviceManager.java | 6 ++++++ 1 file changed, 6 insertions(+) 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 caab65bab5..458d100ede 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 @@ -420,6 +420,12 @@ public class DeviceManager checkNotNull(deviceId, PORT_NUMBER_NULL); NodeId masterId = mastershipService.getMasterFor(deviceId); + if (masterId == null) { + // No master found; device is offline + log.info("No master found for port state change for {}", deviceId); + return; + } + if (!masterId.equals(localNodeId)) { //Send the request to the master node for the device log.info("Device {} is managed by {}, forwarding the request to the MASTER",