Missed Table 246 flow 88/87388/3
authorShashidhar Raja <shashidharr@altencalsoftlabs.com>
Mon, 3 Feb 2020 11:32:32 +0000 (17:02 +0530)
committerShashidhar R <shashidharr@altencalsoftlabs.com>
Tue, 4 Feb 2020 07:02:09 +0000 (07:02 +0000)
Table 246 flow was getting programmed from different thread than the other
flows. This was resulting in different remote group id cache sometimes.
Different cache details was the reason for not programming table 246 flows
all the time.

Table 246 flow programming is done alone with other flows in same thread
now to resolve this issue.

Change-Id: I93bacc68a63c924036c7649f3f5a0e09a872b298
Signed-off-by: Shashidhar Raja <shashidharr@altencalsoftlabs.com>
aclservice/impl/src/main/java/org/opendaylight/netvirt/aclservice/AbstractAclServiceImpl.java

index b579086e2e38a08d3c5e4d05815f172ab93e3f8b..8650bcc9c88fe06d5b3d6b3caa3e25a4790bb45c 100644 (file)
@@ -844,12 +844,9 @@ public abstract class AbstractAclServiceImpl implements AclServiceListener {
                         remoteAclId, portId);
                 return;
             }
-            jobCoordinator.enqueueJob(remoteAclId.getValue().intern(), () -> {
-                List<FlowEntity> flowEntries = new ArrayList<>();
-                syncRemoteAclTableFromOtherDpns(flowEntries, port, remoteAclId, addOrRemove);
-                programFlows(AclConstants.ACL_JOB_KEY_PREFIX + remoteAclId.getValue(), flowEntries, addOrRemove);
-                return Collections.emptyList();
-            });
+            List<FlowEntity> flowEntries = new ArrayList<>();
+            syncRemoteAclTableFromOtherDpns(flowEntries, port, remoteAclId, addOrRemove);
+            programFlows(AclConstants.ACL_JOB_KEY_PREFIX + remoteAclId.getValue(), flowEntries, addOrRemove);
         }
     }