1
1
openmpi/orte/mca/rml
Ralph Castain 3e2a3db887 Add a missing ntoh conversion when pushing a message back onto the RML progress queue.
If a message cannot be routed because the addressee isn't yet known, then the message is held on a queue in the RML for a period of time (currently set to 500 millisec). At the end of that time, we pop the message from the list and attempt to send it again. This action requires that we convert the header back to
network-byte-order before calling the OOB.

If the message still cannot be routed, we put the message back on the list and reset the timer. However, since we are going to convert the header when it com
es off of the list, we have to ntoh it before putting it back on the list so it all comes out right. This step was missing.

Thus, the problem only showed up relatively rarely because a message would have to be pushed onto the queue at least twice for the problem to surface.

This should fix a specific ticket (1389), but we will wait to see the results of MTT runs to verify. Note that we really don't know why a message is rattling around in the RML for so long, especially since this all seems to be happening during finalize, so this could cause mpirun to hang. Or it could simply trash the message and exit cleanly. Shall be interesting to see!

This commit was SVN r19276.
2008-08-13 17:54:15 +00:00
..
base Repair the MPI-2 dynamic operations. This includes: 2008-07-03 17:53:37 +00:00
ftrm Fixes trac:1392, #1400 2008-07-28 22:40:57 +00:00
oob Add a missing ntoh conversion when pushing a message back onto the RML progress queue. 2008-08-13 17:54:15 +00:00
Makefile.am Clean up a couple of configure things: 2007-05-15 04:23:48 +00:00
rml_types.h Repair the MPI-2 dynamic operations. This includes: 2008-07-03 17:53:37 +00:00
rml.h Fixes trac:1392, #1400 2008-07-28 22:40:57 +00:00