Request Handler return codes

Dick Treumann (treumann@kgn.ibm.com)
Fri, 4 Oct 1996 14:34:25 -0400

The present proposal for the language bindings of handlers posted
with MPI_POST_HANDLER demand different parameter lists depending on
whether the Post handler call was made from Fortran or C. (Using the
presumption that the handler is written in the language that was
used to post it.)

The only reason I see for this difference is the fact that a handler
is allowed to give a return value of MPI_SUCCESS or something else.
I do not see anything useful that an MPI implementation can do with
a not successful return code except abort with more or less grace.

I would like to suggest that the return code be eliminated from
handlers. We would tell MPI users that if they had a handler that
could recover from some error it encountered it should do so and
use some means other that a return code to provide whatever
notification the outside world might need. If the handler hit
some nonrecoverable error that required taking down the job the
handler itself would call MPI_ABORT

With this change we remove the need to have different parameter
lists for handlers in C and Fortran. The implementation no
longer needs to track the language the call occured from and
one source of user error is eliminated. One reason this is
important is that in a layered implementation (C code with a
Fortran wrapper) it can be difficult to track the calling
language in a threaded environment (read difficult as
"expensive").

Dick Treumann

Dick Treumann IBM RS/6000 Division
(Internet) treumann@kgn.ibm.com Poughkeepsie, NY
(VNET) TREUMANN at KGNVMC Tel: (914) 433-7846
(internal) treumann@windsurf.kgn.ibm.com Fax: (914) 433-8363