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

Abort model cleanly in ifsinterface and standalone on errors #661

Open
wants to merge 7 commits into
base: main
Choose a base branch
from

Conversation

suvarchal
Copy link
Collaborator

Some of old features lost in my branches that didn't make it into main, part 1.

  • clean and exit model with par_ex instead of abort, this avoids a few annoying model hanging in ifs_interface.
  • checks for namelists exist and show line where error happens and abort cleanly.

TODO in another PR:

  • model stop with par_ex should also be used consistently in checks should also be used in cvmix routines and ib routines.
  • add namelist checks in all other modules in style similar to this PR

@JanStreffing JanStreffing self-assigned this Jan 13, 2025
Copy link
Collaborator

@JanStreffing JanStreffing left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Excellent changes. This should make missing namelists etc. easier to catch. I have just a few small changes requested.

! TODO logic below is also convoluted really not really for standalone
#else !
! TODO logic below is convoluted, COMM that is passed should be used for MPI_ABORT
! changes are easy but need to be tested with coupled configurations
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does that mean changes are were easy to make or would be easy?

@@ -244,7 +244,7 @@ SUBROUTINE read_mesh(partit, mesh)
write (unit=error_unit, fmt='(3A)') &
'### error: can not open file ', file_name, &
', error: ' // trim(errmsg)
call MPI_Abort(MPI_COMM_FESOM, 1, ierror)
!call MPI_Abort(MPI_COMM_FESOM, 1, ierror) # dont call abort here yet called bellow
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Keep or remove fully

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

Successfully merging this pull request may close these issues.

2 participants