FWIW: this now appears true for *any* case where a parent connects to more than 
one child - i.e., if a process calls connect-accept more than once (e.g., in 
loop_spawn)

This didn't used to be true, so something has changed in OMPI's underlying 
behavior.


On May 26, 2014, at 11:27 PM, Gilles Gouaillardet 
<gilles.gouaillar...@gmail.com> wrote:

> Folks,
> 
> currently, the dynamic/intercomm_create test from the ibm test suite output 
> the following messages :
> 
> dpm_base_disconnect_init: error -12 in isend to process 1
> 
> the root cause it task 0 tries to send messages to already exited tasks.
> 
> one way of seeing things is that this is an application issue :
> task 0 should have MPI_Comm_free'd all its communicator before calling 
> MPI_Comm_disconnect.
> This can be achieved via the attached patch
> 
> an other way of seeing things is that this is a bug in OpenMPI.
> In this case, what would be the the right approach ?
> - automatically free communicators (if needed) when MPI_Comm_disconnect is 
> invoked ?
> - simply remove communicators (if needed) from ompi_mpi_communicators when 
> MPI_Comm_disconnect is invoked ?
>   /* this causes a memory leak, but the application can be seen as 
> responsible of it */
> - other ?
> 
> Thanks in advance for your feedback,
> 
> Gilles
> <intercomm_create.patch>_______________________________________________
> devel mailing list
> de...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
> Link to this post: 
> http://www.open-mpi.org/community/lists/devel/2014/05/14847.php

Reply via email to