[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: sync problem?
- Subject: Re: sync problem?
- Date: Mon, 06 Nov 2000 16:46:28 -0700
>To: address@hidden
>From: Tom LeFebvre <address@hidden>
>Subject: Re: 20001106: sync problem?
>Organization: NOAA/FSL
>Keywords: ncsync bug
Tom,
> I've bumped into a problem and I'm wondering if it's documented or a
> patch is out. I didn't see it on the known problems netCDF page.
>
> I'm changing the value of a variable attribute. Shortly after I call
> add_att, I can read the newly corrected value. However, if I stop my
> program gracefully calling all destructors, I see the old value on the
> disk file. Calling NcFIle->sync() seems to fix the problem. Is there a
> known problem with respect to flushing modified data to the disk?
Yes, there was a problem in netCDF 3.4, which is still the latest
general release, that we fixed in netCDF 3.5, which is still only
available as a beta release (beta6 from Oct 19 is the latest). We're
getting close to a final release of netCDF 3.5; all the changes lately
have just been related to porting to additional platforms such as
MacOS X. So if you want to try netCDF 3.5 beta6, we'd be interested
if it fixes the problem. I've appended the RELEASE_NOTES for 3.5,
which gives a slightly more detailed description of the fix.
The beta release is available from
ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-beta.tar.Z
--Russ
This file contains a high-level description of this package's evolution.
Entries are in reverse chronological order (most recent first).
VERSION COMMENTS
------- --------
3.5 YYYY-MM-DD
Added Fortran 90 interface.
Changed C macro TIMELEN in file cxx/nctst.cpp to
TIMESTRINGLEN to avoid clash with macro defined on AIX
systems in /usr/include/time.h.
Fixed miswriting of netCDF header when exiting define
mode. Because the header was always written correctly
later, this was only a problem if there was another
reader of the netCDF file.
Fixed explicit synchronizing between netCDF writer and
readers via the nc_sync(), nf_sync(), and ncsync()
functions.
Fixed a number of bugs related to attempts to support
shrinking the header in netCDF files when attributes
are rewritten or deleted. Also fixed the problem that
nc__endef() did not work as intended in reserving
extra space in the file header, since the extra space
would be compacted again on calling nc_close().
Fixed the "redef bug" that occurred when nc_enddef()
or nf_enddef() is called after nc_redef() or
nf_redef(), the file is growing such that the new
beginning of a record variable is in the next "chunk",
and the size of at least one record variable exceeds
the chunk size (see netcdf.3 man page for a
description of this tuning parameter and how to set
it). This bug resulted in corruption of some values
in other variables than the one being added.
The "__" tuning functions for the Fortran interface,
nf__create, nf__open, and nf__enddef, are now
documented in the Fortran interface man pages.
Permit additional characters in netCDF names in CDL:
any of ".", "@", "#", "[", and "]" are now permitted in
names, in addition to alphanumeric characters, "_", and
"-".
Add an 'uninstall' target to all the Makefiles.
Dave Glowacki <address@hidden> 199810011851.MAA27335
Added support for multiprocessing on Cray T3E.
Hooks added by Glenn, but the majority of the work
was done at NERSC. Also includes changes to ffio
option specification. Patch rollup provided by
R. K. Owen <address@hidden>. The following functions
are added to the public interface.
nc__create_mp()
nc__open_mp()
nc_set_base_pe()
nc_inq_base_pe()
Fixed makefile URL for Win32 systems in INSTALL file.
Made test for UNICOS system in the configure script case
independent.
Ported to the following systems:
AIX 4.3 (both /bin/xlc and /usr/vac/bin/xlc compilers)
IRIX 6.5
IRIX64 6.5
Changed the extension of C++ files from ".cc" to ".cpp".
Renamed the C++ interface header file "netcdfcpp.h"
instead of "netcdf.hh", changing "netcdf.hh" to
include "netcdfcpp.h" for backward compatibility.
Treat "FreeBSD" systems the same as "BSD/OS" system
w.r.t. Fortran and "whatis" database.
Corrected manual pages: corrected spelling of "enddef" (was
"endef") and ensured that the words "index" and "format"
will be correctly printed.
Updated support for Fortran-calling-C interface by
updating "fortran/cfortran.h" from version 3.9 to
version 4.1. This new version supports the Portland
Group Fortran compiler (C macro "pgiFortran")
and the Absoft Pro Fortran compiler (C macro
"AbsoftProFortran").
Corrected use of non-integral-constant-expression
in specifying size of temporary arrays in file
"libsrc/ncx_cray.c".
Added Compaq Alpha Linux workstation example to INSTALL
file.
Ported cfortran.h to Cygnus GNU Win32 C compiler (gcc
for Windows).
Fixed bug in ncdump using same CDL header name when
called with multiple files.
Added new NULL data type NC_NAT (Not A Type) to
facilitate checking whether a variable object has had
its type defined yet, for example when working with
packed values.
Fixed use of compile-time macro NO_NETCDF_2 so it
really doesn't include old netCDF-2 interfaces, as
intended.
Ported to MacOS X Public Beta (Darwin 1.2/PowerPC).
Modified NCGEN and NCDUMP macros: added setting of PATH
environment variable to command such that the just-built
utility is used if available.