Refactor SyncRepReleaseWaiters to use positions instead of walsnd pointers