ROBUSTNESS: Detect when forked process terminates
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- r
- Ambito
- distributed-systems
Direzione di ricerca
Start with the MulticoreParam/bplapply execution path and the parallel::mccollect warning shown in the example. Reproduce the forked worker termination case, then trace how a missing result reaches result[[njob]]. Done means the failure is detected and reported with an informative error instead of the current indexing error.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Related to Issue #111, I'd like to suggest that you add a layer that detects when a forked process dies, which results in no results for parallel::mccollect(), and give an informative error message.
Example of the problem:
> library(BiocParallel)
> bplapply(1:2, FUN = function(x) quit("no"), BPPARAM = MulticoreParam(2L))
Error in result[[njob]] <- value :
attempt to select less than one element in OneIndex
2: In parallel::mccollect(wait = FALSE, timeout = 1) :
1 parallel job did not deliver a result
I do this in the future framework, where you get an error like:
> library(future)
> plan(multicore)
> f <- future(quit("no"))
> value(f)
Error: Failed to retrieve the result of MulticoreFuture (<none>) from the forked worker (on localhost; PID 17097). Post-mortem diagnostic: No process exists with this PID, i.e. the forked localhost worker is no longer alive.
In addition: Warning message:
In mccollect(jobs = jobs, wait = TRUE) :
1 parallel job did not deliver a result
- Lingua principale
- R
- Stelle
- 69
- Fork
- 32
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di Bioconductor/BiocParallel
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 65/100
Bioconductor/BiocParallel#286 · 1 commento ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 50/100
Bioconductor/BiocParallel#285 ·
-
Bioconductor/BiocParallel#284 · 2 commenti · 1 assegnatario ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
Bioconductor/BiocParallel#283 · 2 commenti ·
-
DoparParam: Captured stdout is relayed to stdout for some foreach adapters and stderr for others Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
Bioconductor/BiocParallel#277 ·
Tutte le issue di Bioconductor/BiocParallel
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
briandconnelly/airnow#9 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
OHDSI/CohortConstructor#774 ·
-
pre-review R TeX Track: 5 (DSAIS)
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 60/100
openjournals/joss-reviews#11330 · 7 commenti ·
-
Release autosync 0.1.1 Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100