NetCDF 4.2 Release Notes
The 4.2
release for the netCDF C libraries contains
performance enhancements, bug fixes, new features, and
internal refactoring. It is designed to be compatible with previous
releases, supporting access to netCDF data in previous forms
and software developed with previous releases.
Users of Fortran or C++ interfaces please note: starting with the
4.2 the C, Fortran, and C++ libraries are no longer bundled together,
but are three separate releases. Previously announced Fortran and C++
releases depend on the netCDF C library, and may be built after the C
library is built and installed.
Changes (with "[NCF-nnn]" links to more detailed descriptions):
- Completely rebuilt the DAP constraint handling. This primarily affects users who specify a DAP constraint as part of their URL.
[NCF-120]
-
Fixed cause of slow nccopy performance on
file systems with many records and large disk block
size or many record variables, by accessing data a record at a
time instead of a variable at a time.
[NCF-142]
-
Performance improvement to DAP code to support
fetching partial variables into the cache; especially
important when using nc_get_var() API.
A partial variable is one that has ranges attached
to the projection variables (e.g. x[1:10][20:21])
[NCF-157]
- Separate the Fortran and C++ libraries and release the C library and ncdump/ncgen/nccopy without Fortran or C++.
[NCF-24]
- Documentation mostly migrated to Doxygen, from Texinfo.
[NCF-26]
- Properly convert vara start/count parameters to DAP
[NCF-105][NCF-106]
- Fixed major wasted space from previous default variable chunk sizes algorithm.
[NCF-81]
-
Fixed bug in nccopy, in which compression and chunking
options were ignored for netCDF-4 input files.
[NCF-79]
-
Fixed bug in ncgen in which large variables
(more than 2**18 elements) duplicates the first
2**18 values into subsequent chunks of data
[NCF-154].
-
Applied Greg Sjaardema's nccopy bug fix, not
compressing output variables f they were not already
using compression on the input file when shuffle
specified.
[NCF-162]
- Fixed problem when a DAP URL is provided that contains only a host name.
[NCF-103]
-
Fixed behavior of ncgen flags so that -o => -lb
and, in the absence of any other markers, make
the default be -k1
[NCF-158]
-
Created a text INSTALL file for netCDF-4.2 release.
[NCF-161]
-
Fixed bug in ncgen (reported by Lynton Appel) for variable-length arrays as fields
of compound types where data lists for those
types were improperly interpreted
[NCF-145]
(but see
[NCF-155]).
- Improve use of chunk cache in nccopy utility, making it practical for re-chunking large files.
[NCF-85]
-
Fixed nccopy bug copying a netCDF-4 file with a chunk size for an
unlimited dimension that is larger than the associated dimension
size.
[NCF-139]
-
Fixed nccopy bug when re-chunking a netCDF-4 file with a chunking specification option that doesn't explicitly specify all dimensions.
[NCF-140]
-
Fixed bug in netCDF-4 files with non-coordinate variable with the same name as a dimension.
[NCF-141]
-
Incorporated Wei Huang's fix for bug where netCDF-4 sometimes skips
over too many values before adding fill values to an in-memory
buffer.
[NCF-143]
-
Incorporated Peter Cao's performance fixes using HDF5 link iterator
for any group with many variables or types.
[NCF-148]
-
Incorporated Constantine Khroulev's bug fix for invalid usage of MPI_Comm_f2c in nc_create_par.
[NCF-135]
-
Fix turning off fill values in HDF5 layers when NOFILL mode is set in netCDF-4 API (thanks to Karen Schuchardt).
[NCF-151]
-
Fix bug with scalar coordinate variables in netCDF-4 files, causing failure with --enable-extra-tests
[NCF-149]
- Cleaned up the definition and use of nulldup constant.
[NCF-92][NCF-93][NCF-94]
- Fixed various '#include' bugs.
[NCF-91][NCF-96][NCF-127]
- v2 API functions modified to properly call the external API instead of directly calling the netCDF-3 functions.
[NCF-100]
- Fixed problem with 64-bit offset format where writing more than 2**31 records resulted in erroneous NC_EINVALCOORDS error.
[NCF-101]
- Restored original functionality of ncgen so that a call with no flags, only does the syntax check.
[NCF-104]
- Corrected miscellaneous test bugs.
[NCF-107]
- Modified ncdump to properly output various new types (ubyte, ushort, uint, int64, and uint64).
[NCF-111]
- Fixed incorrect link flag for szip in configure.ac
[NCF-116]
- ncdump -t now properly parses ISO "T" separator in date-time strings.
[NCF-16]
- ncdump -t functionality now available for attributes and bounds variables.
[NCF-70]
- In ncdump, added -g option to support selection of groups for which data is displayed.
[NCF-11]
- Now supports NCAR's bluefire platform.
[NCF-52]
- ncdump now properly displays values of attributes of type NC_USHORT as signed shorts.
[NCF-82]
- Rename some code files so that there are no duplicate file names.
[NCF-99]
- Demonstration of netCDF-4 performance improvement with KNMI data.
[NCF-113]
- Fix so classic model netCDF-4 files allow larger sizes than 64-bit offset classic files.
[NCF-117]
- ncdump now reports correct error message when "-x" option specifying NcML output is used on netCDF-4 enhanced model input.
[NCF-129]
- Fix bug causing infinite loop in ncdump -c of netCDF-4 file with subgroup with variables using inherited dimensions
[NCF-136]
The 4.2 release is available in source form as
a compressed tar file or
a zip file.
Build it according to
these instructions.
This release requires the HDF5
1.8.8 release, and zlib
1.2.5 (or later) release. If building with OPeNDAP remote client
support (the default if libcurl is installed), curl 7.18.0 or later is required.
Report problems to the Unidata
support-netcdf email address.
Last modified: Wed Mar 21 13:50:53 MDT 2012