Fixes #28678
If replenish loop exits the sleep condition, with an empty queue,
when "_shutdown" is already set, a waiter might get stuck, unsignalled
waiting for segments, even though we are exiting.
Simply move queue abort to always be done on loop exit.
Closes scylladb/scylladb#28679
(cherry picked from commit ab4e4a8ac7)
Closes scylladb/scylladb#28692