@@ -2383,7 +2383,9 @@ def has_newer_run(cls, run: "CoprBuildTargetModel") -> bool:
23832383 processing results for an older (e.g. canceled) build.
23842384 """
23852385 project_event = run .get_project_event_model ()
2386- if not project_event or not run .submitted_time :
2386+ runs = run .group_of_targets .runs if run .group_of_targets else []
2387+ pipeline_datetime = max ((r .datetime for r in runs if r .datetime ), default = None )
2388+ if not project_event or not pipeline_datetime :
23872389 return False
23882390 with sa_session_transaction () as session :
23892391 return session .query (
@@ -2396,7 +2398,7 @@ def has_newer_run(cls, run: "CoprBuildTargetModel") -> bool:
23962398 ProjectEventModel .event_id == project_event .event_id ,
23972399 CoprBuildTargetModel .identifier == run .identifier ,
23982400 CoprBuildTargetModel .target == run .target ,
2399- CoprBuildTargetModel . submitted_time > run . submitted_time ,
2401+ PipelineModel . datetime > pipeline_datetime ,
24002402 CoprBuildTargetModel .id != run .id ,
24012403 )
24022404 .exists ()
@@ -3051,7 +3053,9 @@ def has_newer_run(cls, run: "KojiBuildTargetModel") -> bool:
30513053 processing results for an older (e.g. canceled) build.
30523054 """
30533055 project_event = run .get_project_event_model ()
3054- if not project_event or not run .submitted_time :
3056+ runs = run .group_of_targets .runs if run .group_of_targets else []
3057+ pipeline_datetime = max ((r .datetime for r in runs if r .datetime ), default = None )
3058+ if not project_event or not pipeline_datetime :
30553059 return False
30563060 with sa_session_transaction () as session :
30573061 return session .query (
@@ -3063,7 +3067,7 @@ def has_newer_run(cls, run: "KojiBuildTargetModel") -> bool:
30633067 ProjectEventModel .type == project_event .type ,
30643068 ProjectEventModel .event_id == project_event .event_id ,
30653069 KojiBuildTargetModel .target == run .target ,
3066- KojiBuildTargetModel . submitted_time > run . submitted_time ,
3070+ PipelineModel . datetime > pipeline_datetime ,
30673071 KojiBuildTargetModel .id != run .id ,
30683072 )
30693073 .exists ()
@@ -3919,7 +3923,9 @@ def has_newer_run(cls, run: "TFTTestRunTargetModel") -> bool:
39193923 processing results for an older (e.g. canceled) run.
39203924 """
39213925 project_event = run .get_project_event_model ()
3922- if not project_event or not run .submitted_time :
3926+ runs = run .group_of_targets .runs if run .group_of_targets else []
3927+ pipeline_datetime = max ((r .datetime for r in runs if r .datetime ), default = None )
3928+ if not project_event or not pipeline_datetime :
39233929 return False
39243930 with sa_session_transaction () as session :
39253931 return session .query (
@@ -3932,7 +3938,7 @@ def has_newer_run(cls, run: "TFTTestRunTargetModel") -> bool:
39323938 ProjectEventModel .event_id == project_event .event_id ,
39333939 TFTTestRunTargetModel .identifier == run .identifier ,
39343940 TFTTestRunTargetModel .target == run .target ,
3935- TFTTestRunTargetModel . submitted_time > run . submitted_time ,
3941+ PipelineModel . datetime > pipeline_datetime ,
39363942 TFTTestRunTargetModel .id != run .id ,
39373943 )
39383944 .exists ()
0 commit comments