-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RemoteException not re-thrown by pmap() #12908
Comments
Related to/dup of #7808. Also IMO |
As far as I can tell However, re-throwing the exception (after re-tries) seems like a must unless the documentation clearly says that |
The problem is that there's no way to get the incomplete output of |
To me it seems very clear: a function should either return a "complete" result or throw an exception. If "incomplete output of pmap" is useful in some particular application, that application could just do: pmap([1,2,3]) do i
try
[1,2][i]
catch e
return e
end
end |
But then failures never get retried with |
Interface - Rethrow worker exception unless `err_stop == false` (fix JuliaLang#12908). - Change err_retry from bool to int number of retries. - Set defaults to `err_retry=0`, err_stop=true to match `map()` Implementation - Use `enumerate(zip(lsts...))` in place of `getnextidx()`, `states`, `nxtvals` etc to simplify iteration logic. - Use `finally` to clear `busy_workers` flag.
Interface - Rethrow worker exception unless `err_stop == false` (fix JuliaLang#12908). - Change err_retry from bool to int number of retries. - Set defaults to `err_retry=0`, err_stop=true to match `map()` Implementation - Use `enumerate(zip(lsts...))` in place of `getnextidx()`, `states`, `nxtvals` etc to simplify iteration logic. - Use `finally` to clear `busy_workers` flag.
This is definitely an issue, but closing in favor of the earlier #7808. |
The
pmap()
call above returns a RemoteException object in the result array instead of re-throwing it.The output is:
Changing
pmap()
tomap()
results in BoundsError as expected.The text was updated successfully, but these errors were encountered: