Work around caqti assertion failure
This commit is contained in:
parent
c566cd0215
commit
8ee69d7211
3 changed files with 20 additions and 5 deletions
|
@ -315,16 +315,26 @@ module Build = struct
|
|||
ORDER BY start_d DESC, start_ps DESC
|
||||
|}
|
||||
|
||||
(* XXX: caqti doesn't like this *)
|
||||
let get_all_failed =
|
||||
Caqti_request.collect
|
||||
Caqti_type.(option string)
|
||||
Caqti_type.unit
|
||||
(Caqti_type.tup2 (id `build) t)
|
||||
{| SELECT id, uuid, start_d, start_ps, finish_d, finish_ps,
|
||||
result_code, result_msg, console, script, platform,
|
||||
main_binary, input_id, user, job
|
||||
FROM build
|
||||
WHERE ?1 IS NULL OR ?1 = build.platform
|
||||
ORDER BY start_d DESC, start_ps DESC
|
||||
|}
|
||||
|
||||
let get_all_failed_by_platform =
|
||||
Caqti_request.collect
|
||||
Caqti_type.string
|
||||
(Caqti_type.tup2 (id `build) t)
|
||||
{| SELECT id, uuid, start_d, start_ps, finish_d, finish_ps,
|
||||
result_code, result_msg, console, script, platform,
|
||||
main_binary, input_id, user, job
|
||||
FROM build
|
||||
WHERE build.platform = ?
|
||||
ORDER BY start_d DESC, start_ps DESC
|
||||
|}
|
||||
|
||||
|
|
|
@ -114,7 +114,9 @@ sig
|
|||
val get_all :
|
||||
([`job] id, [`build] id * t, [ `Many | `One | `Zero ]) Caqti_request.t
|
||||
val get_all_failed :
|
||||
(string option, [`build] id * t, [ `Many | `One | `Zero ]) Caqti_request.t
|
||||
(unit, [`build] id * t, [ `Many | `One | `Zero ]) Caqti_request.t
|
||||
val get_all_failed_by_platform :
|
||||
(string, [`build] id * t, [ `Many | `One | `Zero ]) Caqti_request.t
|
||||
val get_all_artifact_sha :
|
||||
([`job] id, Cstruct.t, [ `Many | `One | `Zero ]) Caqti_request.t
|
||||
val get_all_artifact_sha_by_platform :
|
||||
|
|
|
@ -82,7 +82,10 @@ let next_successful_build_uuid id (module Db : CONN) =
|
|||
Db.find_opt Builder_db.Build.get_next_successful_uuid id
|
||||
|
||||
let failed_builds platform (module Db : CONN) =
|
||||
Db.collect_list Builder_db.Build.get_all_failed platform >|= List.map snd
|
||||
(match platform with
|
||||
| None -> Db.collect_list Builder_db.Build.get_all_failed ()
|
||||
| Some p -> Db.collect_list Builder_db.Build.get_all_failed_by_platform p)
|
||||
>|= List.map snd
|
||||
|
||||
let builds_with_different_input_and_same_main_binary id (module Db : CONN) =
|
||||
Db.collect_list Builder_db.Build.get_different_input_same_output_input_ids id >>= fun ids ->
|
||||
|
|
Loading…
Reference in a new issue