RohithDevarshetty opened a new pull request, #23238:
URL: https://github.com/apache/kafka/pull/23238

   ### Summary
   
     `DefaultTaskManager.awaitProcessableTasks` used a single 
`Condition.await()` call after checking for processable tasks. Since condition 
waits may wake spuriously, the method could return even when there were still 
no processable tasks available.
   
     This change keeps awaiting in a loop until one of these is true:
     - a task can make progress
     - shutdown is requested
     - the waiter is interrupted
   
     A regression test verifies that a signal without any processable task does 
not release the waiter.
   
     ### Testing
   
     ```bash
     ./gradlew :streams:spotlessApply :streams:test --tests 
org.apache.kafka.streams.processor.internals.tasks.DefaultTaskManagerTest
   
     Result: BUILD SUCCESSFUL.


-- 
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