The current formulation of a cluster-wide per-(block, i) ClusterWaiterList and a per-agent AsyncWaiterList does not work. Fundamentally, both waiter lists need to be per-(block, i).
This patch re-flattens into a single cluster-wide per-(block, i) WaiterList. The FIFO fairness logic is now embedded inside AddWaiter.
The current formulation of a cluster-wide per-(block, i) ClusterWaiterList and a per-agent AsyncWaiterList does not work. Fundamentally, both waiter lists need to be per-(block, i).
This patch re-flattens into a single cluster-wide per-(block, i) WaiterList. The FIFO fairness logic is now embedded inside AddWaiter.
Intended to fix #13