Hi All, I have been playing around with Collision SPI and specifically used FifoQueueCollisionSPI and noticed that it is not really adhering to the specified task of restricting the number of concurrent tasks that can be run.
Specifically, if there is only one slot available and N tasks concurrently land onto the node, all nodes will take the current active count, compare it with maximum jobs count and proceed. Essentially, we have no concurrency safety there. I propose refactoring FifoQueueCollisionSPI to use semaphores and/or atomic variables to ensure that all jobs get a realistic view of the active count. Please share your thoughts, Regards, Atri -- Regards, Atri Apache Concerted