On Fri, Jan 28, 2011 at 5:08 PM, Barry Smith <span dir="ltr"><<a href="mailto:bsmith@mcs.anl.gov">bsmith@mcs.anl.gov</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br>
  Is there anyway we can get this into the petsc-dev source so it is fixed for everyone in the future?<br></blockquote><div><br></div><div>Brad already pushed it :)</div><div><br></div><div>    Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

   Thanks<br>
<br>
   Barry<br>
<br>
On Jan 28, 2011, at 2:54 PM, Brad Aagaard wrote:<br>
<br>
> Barry-<br>
><br>
> It turns out the workaround was explained deep in some of the HDF5 documentation. I pushed the fix. If the local Vec size is zero, then I created a null memspace and reset the filespace to none.<br>
><br>
> Brad<br>
><br>
><br>
> On 01/28/2011 10:00 AM, Barry Smith wrote:<br>
>><br>
>>   Sounds like a bug report/inquiry to HDF5 folks.<br>
>><br>
>>    Barry<br>
>><br>
>><br>
>> On Jan 28, 2011, at 10:23 AM, Brad Aagaard wrote:<br>
>><br>
>>> We are trying to get HDF5 output working in PyLith using the PETSc HDF5 viewer. I get an HDF5 error<br>
>>><br>
>>> H5Screate_simple(): zero sized dimension for non-unlimited dimension,<br>
>>> VecView_MPI_HDF5() line 771 in petsc-dev/src/vec/vec/impls/mpi/pdvec.c<br>
>>><br>
>>> when I have a Vec that has a zero local size on a processor (the global size is nonzero). The Vec layout is correct in that we expect some processors to have a local size of zero (the field is over only a portion of the domain).<br>

>>><br>
>>> The collective write of the Vec creates the filespace using the global size and the memspace using the local size. It is in trying to create the memspace that the error occurs. I tried adjusting pdvec.c so that it creates a null memspace when the local size is zero but then I get an error during the write about differences in dimensions (the number of dimensions in the filespace and memspace don't agree). I was unable to find any info on this type of use case in the HDF5 documentation.<br>

>>><br>
>>> I have attached a toy example that illustrates the problem.<br>
>>> mpiexec -n 1 test_view [creates the expected test.h5 file]<br>
>>> mpiexec -n 2 test_view [generates the above error]<br>
>>><br>
>>> Thanks,<br>
>>> Brad<br>
>>> <test_view.tgz><br>
>><br>
>><br>
><br>
<br>
</blockquote></div><br><br clear="all"><br>-- <br>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener<br>