NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.
To learn about what's going on, see About the Archive Site.
A little more info: If I go ahead and define a variable and write it to the file, I still get the assert error when I try to reopen it. On Wed, Feb 12, 2014 at 9:48 AM, Jim Edwards <jedwards@xxxxxxxx> wrote: > I have a very simple unit test that is failing when I try to use netcdf4 > parallel. The test creates a file, calls enddef, closes the file, then > trys to reopen it. Using netcdf 4.3.0 built with hdf5 1.8.11 I am getting > an assert error when I run this test, > 3:testnetcdf4: nc4file.c:2858: NC4_open: Assertion `0' failed. > 0:testnetcdf4: nc4file.c:2858: NC4_open: Assertion `0' failed. > 1:testnetcdf4: nc4file.c:2858: NC4_open: Assertion `0' failed. > 2:testnetcdf4: nc4file.c:2858: NC4_open: Assertion `0' failed. > > The same test written in F90 instead of C passes. > > #include <netcdf.h> > #include <mpi.h> > #include <netcdf_par.h> > > int main( int *argc, char ***argv) > { > int mype, npe; > int fh, ierr; > MPI_Init(argc,argv); > MPI_Comm_size(MPI_COMM_WORLD, &npe); > MPI_Comm_rank(MPI_COMM_WORLD, &mype); > > ierr = nc_create_par("try.nc",NC_MPIIO, MPI_COMM_WORLD, MPI_INFO_NULL, > &fh); > printf("%d %d\n",__LINE__,ierr); > ierr = nc_enddef(fh); > printf("%d %d\n",__LINE__,ierr); > ierr = nc_close(fh); > printf("%d %d\n",__LINE__,ierr); > > ierr = nc_open_par("try.nc",NC_MPIIO, MPI_COMM_WORLD, MPI_INFO_NULL, > &fh); > printf("%d %d\n",__LINE__,ierr); > ierr = nc_close(fh); > printf("%d %d\n",__LINE__,ierr); > > MPI_Finalize(); > } > > > > > -- > Jim Edwards > > CESM Software Engineering Group > National Center for Atmospheric Research > Boulder, CO > 303-497-1842 > -- Jim Edwards CESM Software Engineering Group National Center for Atmospheric Research Boulder, CO 303-497-1842
netcdfgroup
archives: