diff --git a/apps/vpls/src/main/java/org/onosproject/vpls/VplsOperationManager.java b/apps/vpls/src/main/java/org/onosproject/vpls/VplsOperationManager.java index 4c0262d758..8d4d1dbcbf 100644 --- a/apps/vpls/src/main/java/org/onosproject/vpls/VplsOperationManager.java +++ b/apps/vpls/src/main/java/org/onosproject/vpls/VplsOperationManager.java @@ -304,13 +304,12 @@ public class VplsOperationManager implements VplsOperationService { // Error consumer VplsOperation vplsOperation = vplsOperationException.vplsOperation(); - log.debug("VPLS operation failed: {}", vplsOperation); + log.warn(OP_EXEC_ERR, + vplsOperation.toString(), + vplsOperationException.getMessage()); VplsData vplsData = vplsOperation.vpls(); vplsData.state(VplsData.VplsState.FAILED); vplsStore.updateVpls(vplsData); - log.error(OP_EXEC_ERR, - vplsOperation.toString(), - vplsOperationException.getMessage()); runningOperations.remove(vplsName); }); log.debug("Applying operation: {}", operation); @@ -544,6 +543,7 @@ public class VplsOperationManager implements VplsOperationService { private void removeVplsIntents() { Set intentsToWithdraw = getCurrentIntents(); applyIntentsSync(intentsToWithdraw, Direction.REMOVE); + intentsToWithdraw.forEach(intentService::purge); } /** diff --git a/apps/vpls/src/main/java/org/onosproject/vpls/store/DistributedVplsStore.java b/apps/vpls/src/main/java/org/onosproject/vpls/store/DistributedVplsStore.java index 6d5845761b..6b50508dec 100644 --- a/apps/vpls/src/main/java/org/onosproject/vpls/store/DistributedVplsStore.java +++ b/apps/vpls/src/main/java/org/onosproject/vpls/store/DistributedVplsStore.java @@ -100,6 +100,7 @@ public class DistributedVplsStore @Deactivate protected void deactive() { vplsDataStore.removeListener(vplsDataListener); + networkConfigService.removeConfig(appId); log.info("Stopped"); }