maxIter with PPCR,PPCG not working in parallel
Summary
Sometimes using coarsest level inside GAMG with PPCR or PPCG in combination with maxIter gives a crash. Issue seems to be the combination of
- maxIter
- parallel running
- PPCR,PPCG (i.e. any linear solver using non-blocking reductions)
Steps to reproduce
Set up pressure solver to use PPCR or PPCG. Set maxIter to a very low level, e.g. 1. Run parallel.
Example case
What is the current bug behaviour?
Crashes with `stack-smashing' error on some machines.
What is the expected correct behavior?
Relevant logs and/or images
Environment information
- OpenFOAM version : any version with PPCR,PPCG
Possible fixes
Make sure to clean up outstanding non-blocking request before exiting the solver loop inside PPCR,PPCG. This happens for 'normal' exits (convergence reached) but not for maxIter
exits.