v4.6.13
netCDF-Java and the THREDDS Data Server
Version 4.6.13
The NetCDF-Java/Common Data Model (CDM) library and THREDDS Data Server (TDS) version 4.6.13 were released on February 12th, 2019. These are stable releases and contain a variety updates to 3rd party libraries which include security updates, and as such, the development team recommends these upgrades to anyone using the CDM or TDS.
The THREDDS Data Server (TDS) is 100% Java, open source, and runs as a Tomcat web server application. TDS data serving capabilities are built on top of Unidata's netCDF-Java / CDM library. The CDM data model combines the NetCDF-3, DAP2, and HDF5 data models, into what is called the Common Data Model (CDM). It has a pluggable "I/O Service Provider" architecture that allows it to read various file formats into the CDM, including NetCDF, HDF5, GRIB, NEXRAD levels 2 and 3, and others, as well as datasets served through the OPeNDAP protocol. The TDS then builds data services on top of the CDM.
Special note about Tomcat
Starting with versions 7.0.73, 8.0.39, and 8.5.7, Tomcat's Standard HTTP Connectors (NIO, NIO2, and APR/native) have started to reject certain characters in query strings when unencoded (HTTP Response Status Code 400
). This issue has been discussed on GitHub issue 1144, as well as on the THREDDS mailing list. This impacts the TDS, as square brackets in query strings are rejected (critical for OPeNDAP and cdmremote requests, for example). From the Tomcat docs:
The HTTP/1.1 specification requires that certain characters are %nn encoded when used in URI query strings. Unfortunately, many user agents including all the major browsers are not compliant with this specification and use these characters in unencoded form.
If your server needs to support unencoded characters in requests strings, and you are running Tomcat through one of the standard Connectors, then you can consider using the relaxedQueryChars
attribute on the Connector, found in $CATALINA_HOME/conf/server.xml
. For more information, see https://tomcat.apache.org/tomcat-8.5-doc/config/http.html#Standard_Implementation.
Downloads
Artifact | Description |
---|---|
netCDFAll.jar | The netCDF library implements the full CDM model, including all other jar dependencies. [md5] [sha1] |
toolsUI.jar | The toolsUI.jar contains everything to run the ToolsUI application. [md5] [sha1] |
tdmFat.jar | The THREDDS Data Manager (TDM) does background indexing for GRIB Feature Collections. [md5] [sha1] |
thredds.war | The THREDDS Data Server web application. Please note that you will need to rename the download to thredds.war , or, if you are using tomcat, thredds##4.6.13.war . [md5] [sha1] |
Documentation
Changes
Version 4.6.12 was released December 11, 2018, but was not announced due to the government shutdown. The 4.6.13 release addresses the following issues from the previous 4.6.10 release:
New features and enhancements
- Add some UDUnits of substance
- GRIB1 data length overflow
- Add support for PDS 61
- GOES 16/17 Full Disk Support
- Encode urls by default (see here for details on how to control this)
Bug fixes
- Address assorted security vulnerabilities
- Fix godiva2 GetFeatureInfo requests
- Clear cache when grib collections change
- File decompression uses new class StringKeeper
- Remove prohibited "--" from malformed XML comment
- Handle all coordinate transforms (ncss)
- GOES/GEOS Sweep angle axis not properly handled (see: 1198, 1199)
- NCEP GRIB 1/2 Table updates
For a full list of changes between v4.6.10 and v4.6.13, as well as links to the original GitHub issues, please see the GitHub issue tracker.
All users are strongly encouraged to move to 4.6. For more information about the 4.6 release and how to upgrade, please see Upgrading to TDS 4.6.
Many thanks to our external contributor Robert Schmunk (@msdsoftware), Antonio Cofiño (@cofinoa), Ben Caradoc-Davies (@bencaradocdavies), Craig Rose (@craigrose), and Peter Hollemans (@phollemans), who committed code and valuable feedaback to this release!
Real-world use of new features by the user community is integral to the process of creating and refining these libraries. Please send any potential issues to the development team via the THREDDS GitHub issue tracker, Unidata's support system ([email protected] or [email protected]) or the user community mailing lists ([email protected] or [email protected]).