diff --git a/core/store/dist/src/main/java/org/onosproject/store/resource/impl/TransactionalDiscreteResourceStore.java b/core/store/dist/src/main/java/org/onosproject/store/resource/impl/TransactionalDiscreteResourceStore.java
index 72841fb..3c99da9 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/resource/impl/TransactionalDiscreteResourceStore.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/resource/impl/TransactionalDiscreteResourceStore.java
@@ -63,6 +63,11 @@
     }
 
     boolean register(DiscreteResourceId key, List<DiscreteResource> values) {
+        // short-circuit: receiving empty resource is regarded as success
+        if (values.isEmpty()) {
+            return true;
+        }
+
         Set<DiscreteResource> requested = new LinkedHashSet<>(values);
         Set<DiscreteResource> oldValues = childMap.putIfAbsent(key, requested);
         if (oldValues == null) {
@@ -82,6 +87,11 @@
     }
 
     boolean unregister(DiscreteResourceId key, List<DiscreteResource> values) {
+        // short-circuit: receiving empty resource is regarded as success
+        if (values.isEmpty()) {
+            return true;
+        }
+
         Set<DiscreteResource> oldValues = childMap.putIfAbsent(key, new LinkedHashSet<>());
         if (oldValues == null) {
             log.trace("No-Op removing values. key {} did not exist", key);
