mirror of
https://gitlab.cern.ch/wotsubo/PSBoardDataBase.git
synced 2025-06-08 05:55:42 +09:00
fix: dispatch check logic
This commit is contained in:
parent
a821915028
commit
f81241a89b
1 changed files with 24 additions and 9 deletions
|
@ -36,22 +36,37 @@ function is_dispatchable(conn::DbConnection, psbid::Int64)
|
||||||
single_results = filter(:psboard_id => ==(psbid), conn.df_single_result)
|
single_results = filter(:psboard_id => ==(psbid), conn.df_single_result)
|
||||||
extra_results = filter(:psboard_id => ==(psbid), conn.df_extra_results)
|
extra_results = filter(:psboard_id => ==(psbid), conn.df_extra_results)
|
||||||
|
|
||||||
is_single_passed::Bool = nrow(single_results) == 1 && single_results.qaqc_result[1] == 1
|
is_single_passed::Bool =
|
||||||
|
nrow(single_results) == 1 && let
|
||||||
|
single_result = Tables.rowtable(single_results) |> first
|
||||||
|
|
||||||
|
single_result.resistance_test_passed == 1 &&
|
||||||
|
single_result.qspip == 1 &&
|
||||||
|
single_result.recov == 1 &&
|
||||||
|
single_result.power == 1 &&
|
||||||
|
single_result.clock == 1
|
||||||
|
end
|
||||||
@debug "" is_single_passed single_results
|
@debug "" is_single_passed single_results
|
||||||
is_extra_passed::Bool =
|
is_extra_passed::Bool =
|
||||||
nrow(extra_results) == 1 && let
|
nrow(extra_results) == 1 && let
|
||||||
extra_result = Tables.rowtable(extra_results) |> first
|
extra_result = Tables.rowtable(extra_results) |> first
|
||||||
f1 =
|
f1 =
|
||||||
extra_results.insufficient_reset_with_10 >
|
ismissing(extra_result.insufficient_reset_with_10) &&
|
||||||
extra_results.num_tests * THRESHOLD_INSUFFICIENT_RESET_WITH_10
|
extra_result.insufficient_reset_with_10 >=
|
||||||
|
extra_result.num_tests * THRESHOLD_INSUFFICIENT_RESET_WITH_10
|
||||||
f2 =
|
f2 =
|
||||||
extra_results.reset_failed_though_reconfig_done >
|
ismissing(extra_result.reset_failed_though_reconfig_done) &&
|
||||||
extra_results.num_tests * THRESHOLD_RESET_FAILED_THOUGH_RECONFIG_DONE
|
extra_result.reset_failed_though_reconfig_done >=
|
||||||
|
extra_result.num_tests * THRESHOLD_RESET_FAILED_THOUGH_RECONFIG_DONE
|
||||||
f3 =
|
f3 =
|
||||||
extra_results.always_hit_flag_true >
|
ismissing(extra_result.always_hit_flag_true) &&
|
||||||
extra_results.num_tests * THRESHOLD_ALWAYS_HIT_FLAG_TRUE
|
extra_result.always_hit_flag_true >=
|
||||||
f4 = extra_results.bcid_fail > extra_results.num_tests * THRESHOLD_BCID_FAIL
|
extra_result.num_tests * THRESHOLD_ALWAYS_HIT_FLAG_TRUE
|
||||||
f1 || f2 || f3 || f4
|
f4 =
|
||||||
|
ismissing(extra_result.bcid_fail) &&
|
||||||
|
extra_result.bcid_fail >= extra_result.num_tests * THRESHOLD_BCID_FAIL
|
||||||
|
@debug "" f1 f2 f3 f4
|
||||||
|
!(f1 || f2 || f3 || f4)
|
||||||
end
|
end
|
||||||
@debug "" is_extra_passed extra_results
|
@debug "" is_extra_passed extra_results
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue