JuliaParallel / JuliaParallel/DistributedArrays.jl

How to display error on DArray remote construction ?

Aperta
#229 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Julia
Stelle
205
Fork
34
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

When building the remotely the array as specified in the [documentation](https://juliaparallel.github.io/DistributedArrays.jl/stable/#Construction-from-arrays-generated-on-separate-processes-1):
```julia
ras = [@spawnat p wrong_name() for p in workers()[1:4]]
ras = reshape(ras,(2,2))
D = DArray(ras)
```

Assuming the `wrong_name()` throws an exception, the error will throw from DistributedArray code `MethodError: no method matching size(::RemoteException)` [here](https://github.com/JuliaParallel/DistributedArrays.jl/blob/b98875d16c6810d33498405d5d852a3acee19b38/src/darray.jl#L251).

The only way for me to debug this is to modify the code and add a line `[fetch(r) for r in ras]` after line 1.

This is not convenient for me because the `fetch` will induce a lot of communication so I need to put it before and remove it after debugging.

Do you know a better way to check this ? Thank you

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Reproduce the documented remote-construction example with wrong_name() and inspect src/darray.jl around line 251. Compare the RemoteException path with the suggested [fetch(r) for r in ras] check; done means the original remote error is exposed without requiring a debugging modification or producing the misleading size(::RemoteException) error.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
julia
Ambito
distributed-systems
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.