diff --git a/core/net/src/main/java/org/onosproject/net/intent/impl/IntentCleanup.java b/core/net/src/main/java/org/onosproject/net/intent/impl/IntentCleanup.java
index 21c3efc..27f38af 100644
--- a/core/net/src/main/java/org/onosproject/net/intent/impl/IntentCleanup.java
+++ b/core/net/src/main/java/org/onosproject/net/intent/impl/IntentCleanup.java
@@ -229,16 +229,21 @@
         }
 
         for (IntentData intentData : store.getIntentData(true, periodMs)) {
+            IntentData pendingIntentData = store.getPendingData(intentData.key());
+            if (pendingIntentData != null) {
+                continue;
+            }
+
             switch (intentData.state()) {
                 case FAILED:
                     log.debug("Resubmit Failed Intent: key {}, state {}, request {}",
-                              intentData.key(), intentData.state(), intentData.request());
+                            intentData.key(), intentData.state(), intentData.request());
                     resubmitCorrupt(intentData, false);
                     failedCount++;
                     break;
                 case CORRUPT:
                     log.debug("Resubmit Corrupt Intent: key {}, state {}, request {}",
-                              intentData.key(), intentData.state(), intentData.request());
+                            intentData.key(), intentData.state(), intentData.request());
                     resubmitCorrupt(intentData, false);
                     corruptCount++;
                     break;
