Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
This PR fixes how the
AnalysisError
is raised in parallel runs with both linear and nonlinear solvers. Before this PR, the error was only raised on root unless the environment variableUSE_PROC_FILES
was set to True. The PR fixes it so that the convergence checks are performed on all procs in the comm, and similarly, all procs in the comm raise this error if desired. The behavior of the print statements are preserved; ifUSE_PROC_FILES
is false or not set, only root prints, else, all procs print to their files.I also added tests to check if the analysis error is raised properly on all procs when nonlinear or linear solvers fail. However, without this fix, these tests actually just hang and not explicitly fail. This is because the process hangs without the fix. Is there a way to trigger a failure for this case @JustinSGray?
Related Issues
Backwards incompatibilities
None
New Dependencies
None