Skip to content

Commit 385c298

Browse files
add priority debug
1 parent b9eec8b commit 385c298

File tree

1 file changed

+12
-15
lines changed

1 file changed

+12
-15
lines changed

cads_broker/dispatcher.py

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -387,9 +387,7 @@ def manage_dismissed_request(self, request, session):
387387
else:
388388
request.status = "deleted"
389389
if previous_status == "running":
390-
self.qos.notify_end_of_request(
391-
request, scheduler=self.internal_scheduler
392-
)
390+
self.qos.notify_end_of_request(request, scheduler=self.internal_scheduler)
393391
elif previous_status == "accepted":
394392
self.queue.pop(request.request_uid, None)
395393
self.qos.notify_dismission_of_request(
@@ -648,18 +646,19 @@ def submit_requests(
648646
candidates: Iterable[db.SystemRequest],
649647
) -> None:
650648
"""Check the qos rules and submit the requests to the dask scheduler."""
651-
queue = sorted(
652-
candidates,
653-
key=lambda candidate: self.qos.priority(candidate),
654-
reverse=True,
649+
candidates_priorities: list[tuple[db.SystemRequest, int]] = [
650+
(candidate, self.qos.priority(candidate)) for candidate in candidates
651+
]
652+
queue: list[tuple[db.SystemRequest, int]] = sorted(
653+
candidates_priorities, key=lambda x: x[1], reverse=True
655654
)
656655
requests_counter = 0
657-
for request in queue:
658-
if self.qos.can_run(
659-
request, scheduler=self.internal_scheduler
660-
):
656+
for request, priority in queue:
657+
if self.qos.can_run(request, scheduler=self.internal_scheduler):
661658
if requests_counter <= int(number_of_requests):
662-
self.submit_request(request, session=session_write)
659+
self.submit_request(
660+
request, session=session_write, priority=priority
661+
)
663662
requests_counter += 1
664663

665664
def submit_request(
@@ -672,9 +671,7 @@ def submit_request(
672671
request = db.set_request_status(
673672
request_uid=request.request_uid, status="running", session=session
674673
)
675-
self.qos.notify_start_of_request(
676-
request, scheduler=self.internal_scheduler
677-
)
674+
self.qos.notify_start_of_request(request, scheduler=self.internal_scheduler)
678675
self.queue.pop(request.request_uid)
679676
future = self.client.submit(
680677
worker.submit_workflow,

0 commit comments

Comments
 (0)