This is a much saner solution. We [mostly] stayed away from calling exit deep 
into our libraries, there is no reason to add it now. I'll vote in favor of 
show_help + return code.

  george.

On Nov 1, 2011, at 15:14 , Jeff Squyres wrote:

> We talked about this on the call today.
> 
> A good suggestion was made: call show_help/opal_finalize/exit only when 
> OPAL_ENABLE_DEBUG is true.  Otherwise, return an error code.
> 
> If no one objects to this, I'll commit this tomorrow.
> 
> 
> 
> On Oct 31, 2011, at 4:16 PM, Jeff Squyres wrote:
> 
>> WHAT: what to do if registering an MCA param results in an error?
>> 
>> WHERE: opal/mca/base/mca_base_param.c
>> 
>> WHY: MCA param re-registration issues should be treated as OMPI developer 
>> errors
>> 
>> WHEN: COB Friday, 4 Nov 2011
>> 
>> -----------------
>> 
>> Short version: 
>> 
>> Re-registering an MCA param to be a different type (e.g., it was initially 
>> registered to be a string, but was later re-registered to be an int) should 
>> be treated as an OMPI developer error, and should opal_finalize()/exit(1).
>> 
>> More details:
>> 
>> A mistaken MCA param re-registration recently caused an orted segv.
>> 
>> The MCA param subsystem was fixed to avoid this segv, but silently convert 
>> the MCA param to the newly-registered type.  Upon reflection and some 
>> discussion, this seems to be a bad idea.  Instead, we should loudly complain 
>> via a show_help message and then exit(1).
>> 
>> Specifically: this kind of behavior is clearly an error and should be fixed. 
>>  Unfortunately, in most cases, we don't actually check the return value from 
>> MCA param registration functions, so if we change the MCA param function to 
>> simply return a non OPAL_SUCCESS status, it's unlikely that anyone will 
>> notice until some code tries to read the param value, likely still resulting 
>> in a segv.
>> 
>> Does anyone have heartburn if I change the error behavior to 
>> opal_finalize()/exit(1)?
>> 
>> -- 
>> Jeff Squyres
>> jsquy...@cisco.com
>> For corporate legal information go to:
>> http://www.cisco.com/web/about/doing_business/legal/cri/
>> 
>> 
>> _______________________________________________
>> devel mailing list
>> de...@open-mpi.org
>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
> 
> 
> -- 
> Jeff Squyres
> jsquy...@cisco.com
> For corporate legal information go to:
> http://www.cisco.com/web/about/doing_business/legal/cri/
> 
> 
> _______________________________________________
> devel mailing list
> de...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/devel


Reply via email to