[netcdfgroup] 64-bit offset flag ignored by netcdf 4.3.3.1 for pnetcdf?

Howdy,

I have been using netcdf-c-4.3.1.1 (with a pnetcdf bug fix) for my weather 
model production runs, and just tried using 4.3.3.1 on a new system. I use the 
netcdf-4 interface to create a pnetcdf file, for which I pass the 64-bit offset 
bits:

  cmode  = ior(ior(NF90_PNETCDF,NF90_MPIIO),nf90_64bit_offset)
  status = nf90_create(filename, cmode, ncid, comm = my_comm, info = my_info)

I found that the files were being created as just "classic", however.

Wei-keng Liao found the problem in libsrc5/nc5dispatch.c, which had this:

75 #if 0
76     cmode &= (NC_WRITE | NC_NOCLOBBER | NC_LOCK | NC_SHARE | 
NC_64BIT_OFFSET);
77 #else
78     cmode &= (NC_WRITE | NC_NOCLOBBER | NC_LOCK | NC_SHARE );
79 #endif

which for whatever reason was clobbering the NC_64BIT_OFFSET bits. Is there any 
reason not to always use the first line, i.e., change this to "#if 1"? This is 
what I did, and it fixed the problem.

4.4.0-rc3 has the same issue in libsrcp/ncpdispatch.c (same line numbers). 
Shouldn't the first line (with "| NC_64BIT_OFFSET") be the default?

Cheers,

-- Ted

__________________________________________________________
| Edward Mansell <ted.mansell@xxxxxxxx>
| National Severe Storms Laboratory
|--------------------------------------------------------------
| "The contents of this message are mine personally and
| do not reflect any position of the U.S. Government or NOAA."
|--------------------------------------------------------------



  • 2015 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the netcdfgroup archives: