Github user markap14 commented on a diff in the pull request:

    https://github.com/apache/nifi/pull/2337#discussion_r156956891
  
    --- Diff: 
nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProcessSession.java
 ---
    @@ -1551,7 +1549,7 @@ public FlowFileFilterResult filter(final FlowFile 
flowFile) {
                         }
                     }, expiredRecords);
                 }
    -        }, false);
    +        }, true);
    --- End diff --
    
    I think in this case we can still get away with 'false'. When the processor 
passes a Filter in, we lock all queues because we want to ensure that there 
aren't multiple threads interfering with one another, causing odd filtering 
(e.g., one thread pulls a given flowfile and then is waiting for another to 
match but a second thread pulled it). In this particular case though, there is 
no relationship between the flowfiles being pulled, so we should avoid the 
expense of locking the queues.


---

Reply via email to