Skip to content

Commit 74da888

Browse files
fix processing time priority algorithm (#135)
* add started_at != None on query * qa
1 parent a086d50 commit 74da888

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

cads_broker/database.py

+1
Original file line numberDiff line numberDiff line change
@@ -452,6 +452,7 @@ def get_users_queue_from_processing_time(
452452
SystemRequest.finished_at >= interval_start,
453453
SystemRequest.finished_at < interval_stop,
454454
SystemRequest.status != "deleted",
455+
SystemRequest.started_at.is_not(None),
455456
)
456457
where_clause = sa.sql.or_(interval_clause, SystemRequest.status == "running")
457458

tests/test_02_database.py

+9-1
Original file line numberDiff line numberDiff line change
@@ -608,7 +608,7 @@ def test_get_request(session_obj: sa.orm.sessionmaker) -> None:
608608
assert request.request_uid == request_uid
609609

610610

611-
def test_get_users_queue_per_cost(session_obj: sa.orm.sessionmaker) -> None:
611+
def test_get_users_queue_from_processing_time(session_obj: sa.orm.sessionmaker) -> None:
612612
adaptor_properties = mock_config()
613613
request_1 = mock_system_request(
614614
status="successful",
@@ -647,6 +647,13 @@ def test_get_users_queue_per_cost(session_obj: sa.orm.sessionmaker) -> None:
647647
adaptor_properties_hash=adaptor_properties.hash,
648648
user_uid="user3",
649649
)
650+
request_7 = mock_system_request(
651+
status="failed",
652+
adaptor_properties_hash=adaptor_properties.hash,
653+
user_uid="user3",
654+
started_at=None,
655+
finished_at=datetime.datetime.now() - datetime.timedelta(hours=10),
656+
)
650657
with session_obj() as session:
651658
session.add(adaptor_properties)
652659
session.add(request_1)
@@ -655,6 +662,7 @@ def test_get_users_queue_per_cost(session_obj: sa.orm.sessionmaker) -> None:
655662
session.add(request_4)
656663
session.add(request_5)
657664
session.add(request_6)
665+
session.add(request_7)
658666
session.commit()
659667
with session_obj() as session:
660668
users_cost = db.get_users_queue_from_processing_time(

0 commit comments

Comments
 (0)