-
Task
-
Resolution: Done
-
Major
-
14.0.0.Dev01
-
None
BlockingManager is designed to isolate blocking threads and reuse them if the invoking thread is blocking. However, there is no reason for the invoking thread to block waiting on a stage to complete if it isn't completed. This just wastefully uses another thread, we should instead only do the stage join if the current stage is complete.
This was brought up in https://github.com/infinispan/infinispan/pull/9941#discussion_r823796053