Re: [netcdfgroup] bug in nc_open_par?

Hi Quincey,

I still get the error after making the suggested changes.  What versions of
hdf5 and netcdf are you using?

Jim



On Tue, Feb 18, 2014 at 7:41 AM, Quincey Koziol <quincey@xxxxxxxxx> wrote:

> Hi Jim,
>         I've tested your program on the latest version of HDF5 and the
> latest version of netCDF-4 and it's working fine with "mpirun -np 4 ./bug".
>  I did have to tweak your program slightly to get it to compile, so maybe
> that's the issue you are having:
>
> #include <stdio.h>
> #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();
> }
>
>         Give that version a try a see if it works for you,
>                 Quincey
>
>
> > 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();
> > }
> >
>
> _______________________________________________
> netcdfgroup mailing list
> netcdfgroup@xxxxxxxxxxxxxxxx
> For list information or to unsubscribe,  visit:
> http://www.unidata.ucar.edu/mailing_lists/
>



-- 
Jim Edwards

CESM Software Engineering Group
National Center for Atmospheric Research
Boulder, CO
303-497-1842
  • 2014 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the netcdfgroup archives: