Ticket #1144 (closed defect: fixed)
If one MPI process exits(), all others hang in MPI_FINALIZE
|Reported by:||jsquyres||Owned by:|
|Priority:||major||Milestone:||Open MPI 1.3|
Daniel Spanberg notes in http://www.open-mpi.org/community/lists/users/2007/08/3874.php that if one MPI process calls exit() and others call MPI_FINALIZE, OMPI hangs during MPI_FINALIZE. I think that this is a known issue (because we effectively barrier in MPI_FINALIZE); we just hadn't considered that apps would terminate this way. I.e., we assumed that either an MPI process would call MPI_FINALIZE or would die badly/due to signal. We operate normally in both of those cases, but not in the case that Daniel mentions.
Daniel provided a simple sample program that exhibits the problem; I attached a slightly modified version that shows some printf's along the way.