[BugFix] Fix ordering of KVConnector finished send/rcv sets (#18211)

Signed-off-by: Nick Hill <nhill@redhat.com>
This commit is contained in:
Nick Hill
2025-05-16 09:20:54 -07:00
committed by GitHub
parent 1db4f47f81
commit 0ceaebf87b
2 changed files with 5 additions and 4 deletions

View File

@ -183,7 +183,8 @@ class KVConnectorBase_V1(ABC):
finished generating tokens.
Returns:
ids of requests that have finished asynchronous (recving, sending).
ids of requests that have finished asynchronous transfer,
tuple of (sending/saving ids, recving/loading ids).
The finished saves/sends req ids must belong to a set provided in a
call to this method (this call or a prior one).
"""

View File

@ -103,10 +103,10 @@ class MultiConnector(KVConnectorBase_V1):
def get_finished(
self, finished_req_ids: set[str]
) -> tuple[Optional[set[str]], Optional[set[str]]]:
finished_recving: set[str] = set()
finished_sending: set[str] = set()
finished_recving: set[str] = set()
for c in self._connectors:
recving, sending = c.get_finished(finished_req_ids)
sending, recving = c.get_finished(finished_req_ids)
if not recving and not sending:
continue
# Aggregate finished recving request ids.
@ -125,7 +125,7 @@ class MultiConnector(KVConnectorBase_V1):
else:
self._extra_async_saves[req_id] = extra_pending - 1
return finished_recving or None, finished_sending or None
return finished_sending or None, finished_recving or None
# ==============================
# Scheduler-side methods