markap14 commented on PR #11615:
URL: https://github.com/apache/nifi/pull/11615#issuecomment-5515666973

   [Cursor Grok 4.6] @exceptionfactory Thanks — you were right that this is not 
specific to Load Balancing.
   
   The ubuntu-24.04 Java 25 troubleshooting logs for 
`testClusteredReadQueueAttributesNormalConnection` show the Connector purge 
reporting success while the downstream queue drop was still running:
   
   ```
   19:05:24,816 Initiating drop ... FlowFileQueue[..., 
size=QueueSize[FlowFiles=300, ...]]
   19:05:24,816 Successfully purged FlowFiles for StandardConnectorNode[..., 
name=BacklogReportingTestConnector]
   19:05:24,893 Successfully dropped 300 FlowFiles ... from Connection with ID 
231b7e5d-...
   19:05:24,896 409 DELETE connector: Process Group has 300 FlowFiles queued
   ```
   
   `StandardProcessGroup.dropAllFlowFiles()` merges per-connection drop 
statuses into one aggregate `DropFlowFileRequest`. Empty queues finish as 
`COMPLETE` immediately, and `DropFlowFileRequest.setState(COMPLETE)` completes 
that aggregate Future. Teardown then deletes the Connector while a later 
connection is still dropping.
   
   Pushed a fix so the aggregate request stays `DROPPING_FLOWFILES` until every 
connection drop Future has finished, plus 
`StandardProcessGroupTest.testDropAllFlowFilesCompletionWaitsForEveryConnection`.
 The test-side Load Balancing wait is still useful for ROUND_ROBIN, but it 
would not have prevented this teardown failure.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to