VOL-3913 Group sink add/remove operations expire in InOrderFlowObjectiveManager since OltPipeline invalidates the next group operation instead of the current one when it receives a group event for the related group.

Solution:
Group is removed from the pendingGroups cache before notifying InOrderFlowObjectiveManager.

Change-Id: I77a04d4c187b994f9a3f3f8b4de5e61cdc6df697
diff --git a/impl/src/main/java/org/opencord/olt/driver/OltPipeline.java b/impl/src/main/java/org/opencord/olt/driver/OltPipeline.java
index d5beb63..84a56ca 100644
--- a/impl/src/main/java/org/opencord/olt/driver/OltPipeline.java
+++ b/impl/src/main/java/org/opencord/olt/driver/OltPipeline.java
@@ -1221,12 +1221,12 @@
             if (event.type() == GroupEvent.Type.GROUP_ADDED ||
                     event.type() == GroupEvent.Type.GROUP_UPDATED) {
                 flowObjectiveStore.putNextGroup(obj.id(), new OltPipelineGroup(key));
-                pass(obj);
                 pendingGroups.invalidate(key);
+                pass(obj);
             } else if (event.type() == GroupEvent.Type.GROUP_REMOVED) {
                 flowObjectiveStore.removeNextGroup(obj.id());
-                pass(obj);
                 pendingGroups.invalidate(key);
+                pass(obj);
             }
         }
     }