This clearly applies to outstanding requests on the node
that's calling close, but what about outstanding requests
on the same open file on other nodes? In other words, is
it legal for the user to allow this to happen:
Node 0 Node 1
MPI_Open( ... "myfile" ... &fh ) MPI_Open( ... "myfile" ... &fh )
. .
MPI_Iread( ... fh ... &req ); .
. MPI_Close( fh ); /* legal? */
MPI_Wait( req ... );
MPI_Close( fh );
Neither node has a local outstanding request when it calls
MPI_Close, but Node 0 has an outstanding request when Node 1
calls close on the same file. (The same problem comes up if
Node 0 issues a blocking read has not completed by the time
Node 1 calls MPI_Close.)
Can we get a clarification of this case?
John