Skip to content

Commit 9754bd8

Browse files
committed
use safe execution when calling diyabc/abcranger to manage missing bin file
1 parent 45dfa85 commit 9754bd8

2 files changed

Lines changed: 47 additions & 13 deletions

File tree

R-pkg/R/71_training_set_submodule.R

Lines changed: 28 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -888,11 +888,22 @@ train_set_simu_run_server <- function(input, output, session) {
888888
)
889889

890890
logging("Running simulation")
891-
local$diyabc_run_process <- diyabc_run_trainset_simu(
892-
env$ap$proj_dir,
893-
as.integer(input$nrun),
894-
run_prior_check = FALSE
891+
local$diyabc_run_process <- execute_safely(
892+
diyabc_run_trainset_simu(
893+
env$ap$proj_dir,
894+
as.integer(input$nrun),
895+
run_prior_check = FALSE
896+
),
897+
session = session
895898
)
899+
900+
if(is.null(local$diyabc_run_process)) {
901+
local$feedback <- tags$p(tags$div(
902+
icon("warning"),
903+
"Simulations did not start.",
904+
style = "color: #F89406;"
905+
))
906+
}
896907
}
897908
})
898909

@@ -1189,9 +1200,20 @@ prior_check_server <- function(input, output, session) {
11891200
)
11901201

11911202
logging("Running model checking")
1192-
local$diyabc_run_process <- diyabc_run_trainset_simu(
1193-
env$ap$proj_dir, run_prior_check = TRUE
1203+
local$diyabc_run_process <- execute_safely(
1204+
diyabc_run_trainset_simu(
1205+
env$ap$proj_dir, n_run = 1, run_prior_check = TRUE
1206+
),
1207+
session = session
11941208
)
1209+
1210+
if(is.null(local$diyabc_run_process)) {
1211+
local$feedback <- tags$p(tags$div(
1212+
icon("warning"),
1213+
"Scenario checking did not start.",
1214+
style = "color: #F89406;"
1215+
))
1216+
}
11951217
}
11961218
})
11971219

R-pkg/R/81_random_forest_submodule.R

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -888,15 +888,27 @@ rf_control_server <- function(input, output, session) {
888888
)
889889

890890
logging("Running abcranger")
891-
local$abcranger_run_process <- abcranger_run(
892-
env$ap$proj_dir, env$rf$mode, env$rf$n_rec, env$rf$min_node_size,
893-
env$rf$n_tree, env$rf$n_noise_columns, !env$rf$linear,
894-
env$rf$pls_max_var, env$rf$chosen_scenario, env$rf$noob,
895-
env$rf$parameter, env$rf$grouping
891+
local$abcranger_run_process <- execute_safely(
892+
abcranger_run(
893+
env$ap$proj_dir, env$rf$mode, env$rf$n_rec,
894+
env$rf$min_node_size, env$rf$n_tree,
895+
env$rf$n_noise_columns, !env$rf$linear,
896+
env$rf$pls_max_var, env$rf$chosen_scenario, env$rf$noob,
897+
env$rf$parameter, env$rf$grouping
898+
),
899+
session = session
896900
)
897901

898-
# start logging
899-
local$start_logging <- local$start_logging + 1
902+
if(is.null(local$diyabc_run_process)) {
903+
local$feedback <- tags$p(tags$div(
904+
icon("warning"),
905+
"Random Forest analysis did not start.",
906+
style = "color: #F89406;"
907+
))
908+
} else {
909+
# start logging
910+
local$start_logging <- local$start_logging + 1
911+
}
900912
})
901913

902914
## monitor simulation run

0 commit comments

Comments
 (0)