#410: CarpetIOHDF5 may segfault when one_file_per_group is selected --------------------------------+------------------------------------------- Reporter: bmundim | Owner: eschnett Type: defect | Status: new Priority: major | Milestone: Component: Carpet | Version: Keywords: Carpet git version | --------------------------------+------------------------------------------- I was facing one of those cryptic MPI error messages on Ranger, where your job quits without any useful error message. It turns out that this parameter file had
CarpetIOHDF5::one_file_per_group = "yes" CarpetIOHDF5::out2D_vars = " ADMBase::gxx"
and CarpetIOHDF5 would try to loop over the group variables when just one of them was selected. As a result it has accessed memory address that it was not supposed to, consequently killing the job.
I have attached the stack back trace.
#410: CarpetIOHDF5 may segfault when one_file_per_group is selected ----------------------+----------------------------------------------------- Reporter: bmundim | Owner: eschnett Type: defect | Status: new Priority: major | Milestone: Component: Carpet | Version: Resolution: | Keywords: Carpet git version ----------------------+-----------------------------------------------------
Comment (by eschnett):
The corresponding code in CarpetIOHDF5.cc, which outputs data that are not slices, uses the same algorithm. However, it contains an additional check ensuring that a default request is used if the corresponding request does not exist. Look for calls to IOUtil_DefaultIORequest to find this code. I believe that an equivalent logic would correct this problem in OutputSlice.cc.
#410: CarpetIOHDF5 may segfault when one_file_per_group is selected ----------------------+----------------------------------------------------- Reporter: bmundim | Owner: eschnett Type: defect | Status: review Priority: major | Milestone: Component: Carpet | Version: Resolution: | Keywords: Carpet git version ----------------------+----------------------------------------------------- Changes (by rhaas):
* status: new => review
#410: CarpetIOHDF5 may segfault when one_file_per_group is selected ----------------------+----------------------------------------------------- Reporter: bmundim | Owner: eschnett Type: defect | Status: review Priority: major | Milestone: Component: Carpet | Version: Resolution: | Keywords: Carpet git version ----------------------+-----------------------------------------------------
Comment (by eschnett):
This looks fine -- please apply.
#410: CarpetIOHDF5 may segfault when one_file_per_group is selected ----------------------+----------------------------------------------------- Reporter: bmundim | Owner: eschnett Type: defect | Status: closed Priority: major | Milestone: Component: Carpet | Version: Resolution: fixed | Keywords: Carpet git version ----------------------+----------------------------------------------------- Changes (by rhaas):
* status: review => closed * resolution: => fixed
Comment:
applied. Thanks for pointing out what to add (was really simple this way).
trac@lists.einsteintoolkit.org