Removed 100 item limit in queue 07/4407/1
authorEd Warnicke <eaw@cisco.com>
Sun, 19 Jan 2014 19:21:19 +0000 (13:21 -0600)
committerEd Warnicke <eaw@cisco.com>
Sun, 19 Jan 2014 19:21:19 +0000 (13:21 -0600)
The 100 item limit in queue was causing us to drop messages with

Queue full

because pulling stats etc results in more than 100 messages suddenly,
and no matter how fast we take from the queue, its never fast enough.

Change-Id: I41e087a7e9094ee7ec5e42cf6d0a9cafa7ebdb76
Signed-off-by: Ed Warnicke <eaw@cisco.com>
openflowplugin/src/main/java/org/opendaylight/openflowplugin/openflow/md/queue/QueueKeeperLightImpl.java

index c482df8818d55d43f6460f29b0f278f8e7416349..42c1cb9e59c197ab328367a0af69e2c63c314e2a 100644 (file)
@@ -71,15 +71,15 @@ public class QueueKeeperLightImpl implements QueueKeeper<OfHeader, DataObject> {
      * prepare queue
      */
     public void init() {
-        processQueue = new LinkedBlockingQueue<>(100);
+        processQueue = new LinkedBlockingQueue<>();
         pool = new ScheduledThreadPoolExecutor(poolSize);
-        
+
         ticketProcessorFactory = new TicketProcessorFactory<>();
         ticketProcessorFactory.setRegisteredTypeExtractor(registeredSrcTypeExtractor);
         ticketProcessorFactory.setTranslatorMapping(translatorMapping);
         ticketProcessorFactory.setVersionExtractor(versionExtractor);
         ticketProcessorFactory.setSpy(messageSpy);
-        
+
         TicketFinisher<DataObject> finisher = new TicketFinisher<>(
                 processQueue, popListenersMapping, registeredOutTypeExtractor);
         new Thread(finisher).start();
@@ -96,7 +96,7 @@ public class QueueKeeperLightImpl implements QueueKeeper<OfHeader, DataObject> {
     public void push(OfHeader message, ConnectionConductor conductor) {
         push(message,conductor,QueueKeeper.QueueType.DEFAULT);
     }
-    
+
     @Override
     public void push(OfHeader message, ConnectionConductor conductor, QueueType queueType) {
         if(queueType == QueueKeeper.QueueType.DEFAULT) {
@@ -140,14 +140,14 @@ public class QueueKeeperLightImpl implements QueueKeeper<OfHeader, DataObject> {
             Map<Class<? extends DataObject>, Collection<PopListener<DataObject>>> popListenersMapping) {
         this.popListenersMapping = popListenersMapping;
     }
-    
+
     /**
      * @param messageSpy the messageSpy to set
      */
     public void setMessageSpy(MessageSpy<OfHeader, DataObject> messageSpy) {
         this.messageSpy = messageSpy;
     }
-    
+
     private List<DataObject> translate(OfHeader message, ConnectionConductor conductor) {
         List<DataObject> result = new ArrayList<>();
         Class<? extends OfHeader> messageType = registeredSrcTypeExtractor.extractRegisteredType(message);
@@ -184,10 +184,10 @@ public class QueueKeeperLightImpl implements QueueKeeper<OfHeader, DataObject> {
         }
         return result;
     }
-    
+
     private void pop(List<DataObject> processedMessages,ConnectionConductor conductor) {
         for (DataObject msg : processedMessages) {
-            Class<? extends Object> registeredType = 
+            Class<? extends Object> registeredType =
                     registeredOutTypeExtractor.extractRegisteredType(msg);
             Collection<PopListener<DataObject>> popListeners = popListenersMapping.get(registeredType);
             if (popListeners == null) {