@@ -387,9 +387,7 @@ def manage_dismissed_request(self, request, session):
387
387
else :
388
388
request .status = "deleted"
389
389
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 )
393
391
elif previous_status == "accepted" :
394
392
self .queue .pop (request .request_uid , None )
395
393
self .qos .notify_dismission_of_request (
@@ -648,18 +646,19 @@ def submit_requests(
648
646
candidates : Iterable [db .SystemRequest ],
649
647
) -> None :
650
648
"""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
655
654
)
656
655
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 ):
661
658
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
+ )
663
662
requests_counter += 1
664
663
665
664
def submit_request (
@@ -672,9 +671,7 @@ def submit_request(
672
671
request = db .set_request_status (
673
672
request_uid = request .request_uid , status = "running" , session = session
674
673
)
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 )
678
675
self .queue .pop (request .request_uid )
679
676
future = self .client .submit (
680
677
worker .submit_workflow ,
0 commit comments