I'm getting the following error: Failed to retrieve the result of MulticoreFuture (<none>) from the forked worker (on localhost; PID 62510). Post-mortem diagnostic: No process exists with this PID, i.e. the forked localhost worker is no longer alive.
This error occurs intermittently in the normal course of running our scripts.
It's difficult for me to provide a reprex, as the only way for me to consistently reproduce this is by running my code and sending kill -9 signals to child processes that are spawned.
Here's the code that produces that error:
plan(multicore)
foo <- df %>%
mutate(
fit = future_map(data, fit.fxn, formula = effect ~ bar),
)
Is there a way for me to ensure that if a child process dies it gets restarted?
Here's my session info:
> sessionInfo()
R version 4.0.3 (2020-10-10)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 20.04 LTS
Matrix products: default
BLAS/LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.8.so
locale:
[1] LC_CTYPE=C.UTF-8 LC_NUMERIC=C LC_TIME=C.UTF-8
[4] LC_COLLATE=C.UTF-8 LC_MONETARY=C.UTF-8 LC_MESSAGES=C
[7] LC_PAPER=C.UTF-8 LC_NAME=C LC_ADDRESS=C
[10] LC_TELEPHONE=C LC_MEASUREMENT=C.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] logger_0.2.0 units_0.6-7 forcats_0.5.1 stringr_1.4.0
[5] dplyr_1.0.4 purrr_0.3.4 readr_1.4.0 tidyr_1.1.2
[9] tibble_3.0.6 tidyverse_1.3.0 magrittr_2.0.1 rlang_0.4.10
[13] stringi_1.5.3 readxl_1.3.1 furrr_0.1.0.9002 future_1.21.0
[17] broom_0.7.4 ggridges_0.5.3 ggbeeswarm_0.6.0 paletteer_1.3.0
[21] ineq_0.2-13 drc_3.0-1 caret_6.0-86 ggplot2_3.3.3
[25] lattice_0.20-41 sandwich_3.0-0 glmnet_4.1 Matrix_1.2-18
[29] MASS_7.3-53 edgeR_3.32.1 limma_3.46.0 here_1.0.1
loaded via a namespace (and not attached):
[1] nlme_3.1-149 fs_1.5.0 lubridate_1.7.9.2
[4] httr_1.4.2 rprojroot_2.0.2 tools_4.0.3
[7] backports_1.2.1 utf8_1.1.4 R6_2.5.0
[10] rpart_4.1-15 vipor_0.4.5 DBI_1.1.1
[13] colorspace_2.0-0 nnet_7.3-14 withr_2.4.1
[16] tidyselect_1.1.0 curl_4.3 compiler_4.0.3
[19] cli_2.3.0 rvest_0.3.6 xml2_1.3.2
[22] scales_1.1.1 mvtnorm_1.1-1 digest_0.6.27
[25] foreign_0.8-80 rio_0.5.16 pkgconfig_2.0.3
[28] parallelly_1.23.0 plotrix_3.8-1 dbplyr_2.1.0
[31] rstudioapi_0.13 shape_1.4.5 generics_0.1.0
[34] zoo_1.8-8 jsonlite_1.7.2 gtools_3.8.2
[37] ModelMetrics_1.2.2.2 zip_2.1.1 car_3.0-10
[40] fansi_0.4.2 Rcpp_1.0.6 munsell_0.5.0
[43] abind_1.4-5 lifecycle_1.0.0 multcomp_1.4-16
[46] pROC_1.17.0.1 carData_3.0-4 plyr_1.8.6
[49] recipes_0.1.15 grid_4.0.3 parallel_4.0.3
[52] listenv_0.8.0 crayon_1.4.1 haven_2.3.1
[55] splines_4.0.3 hms_1.0.0 locfit_1.5-9.4
[58] ps_1.5.0 pillar_1.4.7 reshape2_1.4.4
[61] codetools_0.2-16 stats4_4.0.3 reprex_1.0.0
[64] glue_1.4.2 data.table_1.13.6 modelr_0.1.8
[67] vctrs_0.3.6 foreach_1.5.1 cellranger_1.1.0
[70] gtable_0.3.0 rematch2_2.1.2 assertthat_0.2.1
[73] gower_0.2.2 openxlsx_4.2.3 prodlim_2019.11.13
[76] class_7.3-17 survival_3.2-7 timeDate_3043.102
[79] iterators_1.0.13 beeswarm_0.2.3 lava_1.6.8.1
[82] globals_0.14.0 TH.data_1.0-10 ellipsis_0.3.1
[85] ipred_0.9-9
I'm getting the following error:
Failed to retrieve the result of MulticoreFuture (<none>) from the forked worker (on localhost; PID 62510). Post-mortem diagnostic: No process exists with this PID, i.e. the forked localhost worker is no longer alive.This error occurs intermittently in the normal course of running our scripts.
It's difficult for me to provide a reprex, as the only way for me to consistently reproduce this is by running my code and sending
kill -9signals to child processes that are spawned.Here's the code that produces that error:
Is there a way for me to ensure that if a child process dies it gets restarted?
Here's my session info: