Skip to content
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

Doesn't handle cross-platform exit statuses gracefully #30

Open
EricR86 opened this issue Aug 14, 2019 · 0 comments
Open

Doesn't handle cross-platform exit statuses gracefully #30

EricR86 opened this issue Aug 14, 2019 · 0 comments

Comments

@EricR86
Copy link
Contributor

EricR86 commented Aug 14, 2019

Looking into this it seems that the exit status returned from a child process is not handled gracefully in some instances.

Ideally the exit status should be using the macros defined in sys/wait.h but it is only used sparingly across drmaa.c. Notably the macro WIFEXITED is used but not WIFSIGNALED or WTERMSIG. For example, instead of WIFSIGNALED there is an operation that may or may not be the same as the macro necessary for that particular architecture. Is there a reason why these macros were not used?

This is related to Issue #26. After removing the hardcoded exit status manipulation with macros, I suddenly went from jobs reporting "unknown signal?!" to "wasTerminated" which was far more informative in terms of tracking down our issues (and ultimately solved our problem).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant