Re: [thredds] [netcdf-java] announce release 4.5.5

  • To: John Caron <caron@xxxxxxxx>
  • Subject: Re: [thredds] [netcdf-java] announce release 4.5.5
  • From: Antonio Rodriges <antonio.rrz@xxxxxxxxx>
  • Date: Mon, 9 Mar 2015 22:43:49 +0300
Hello,

Thank you for the 4.5 release.

However, there are troubles migrating from 4.3 to 4.5 (I am trying to
migrate from 4.3 to a higher version for quite long now).

I have used a pre-release snapshot kindly provided at the 17th of
January but I suppose the following issues may stlll hold for the
final release. They are mainly concerned with IOSP grib2 backward
compatibility.

1) Creation of index files
version 4.3 does not create in the same directory where original grib2
files are located indexes for each date I access. But 4.5 does so for
each date:
2015-02-18/06:09:50.118/GMT-00:00 [ucar.nc2.grib.collection.Grib2Iosp]
INFO  GribCollectionBuilder write
D:/RS_DATA/worker/symlinks/CFSR/windspeed/wnd10m.gdas.200508.grb2-20050818-180000.ncx2
ok=true
2015-02-18/06:09:50.120/GMT-00:00 [ucar.nc2.grib.collection.Grib2Iosp]
DEBUG  createIndex for
D:\RS_DATA\worker\symlinks\CFSR\windspeed\wnd10m.gdas.200508.grb2-20050815-000000.ncx2
2015-02-18/06:09:50.120/GMT-00:00 [ucar.nc2.grib.collection.Grib2Iosp]
DEBUG   write RecordMaps: bytes = 218 record = 14 bytesPerRecord=15
2015-02-18/06:09:50.121/GMT-00:00 [ucar.nc2.grib.collection.Grib2Iosp]
DEBUG   write GribCollectionIndex= 551 bytes

At the end of traversing the dates from a given interval one arrives
at a point where the directory has files that are not anticipated to
emerge (for one previously used 4.3).

Even if index creation time is negligible and it significantly
accelerates further operation and etc. etc. it is quite logical to
keep this feature off since it was off or not present in 4.3.

You may argue that it is not so critical but it depends. The following
issue is more severe.

2) Consider grib2 files of CFSR reanalysis, for example:
http://nomads.ncdc.noaa.gov/data/cfsr/198209/wnd10m.gdas.198209.grb2

If I would like to read "u-component_of_wind_height_above_ground" in
version 4.3 it is OK since it finds only a single variable with this
name:

float u-component_of_wind_height_above_ground(time=745,
height_above_ground=1, lat=576, lon=1152);
  :long_name = "u-component of wind @ Specified height level above ground";
  :units = "m/s";
  :missing_value = NaNf; // float
  :abbreviation = "UGRD";
  :Grib_Variable_Id = "VAR_0-2-2_L103";
  :Grib2_Parameter = 0, 2, 2; // int
  :Grib2_Parameter_Discipline = "Meteorological products";
  :Grib2_Parameter_Category = "Momentum";
  :Grib2_Parameter_Name = "u-component of wind";
  :Grib2_Level_Type = 103; // int
  :Grib2_Generating_Process_Type = "Forecast";

However, if I switch to 4.5 the program crashes since 4.5 finds 2
variables of the same name and findVariable returns null

float u-component_of_wind_height_above_ground(time=745,
height_above_ground=1, lat=576, lon=1152);
  :long_name = "u-component of wind @ Specified height level above ground";
  :units = "m/s";
  :missing_value = NaNf; // float
  :abbreviation = "UGRD";
  :coordinates = "time height_above_ground ";
  :Grib_Variable_Id = "VAR_0-2-2_L103";
  :Grib2_Parameter = 0, 2, 2; // int
  :Grib2_Parameter_Discipline = "Meteorological products";
  :Grib2_Parameter_Category = "Momentum";
  :Grib2_Parameter_Name = "u-component of wind";
  :Grib2_Level_Type = "Specified height level above ground";
  :Grib2_Generating_Process_Type = "Forecast";
float u-component_of_wind_height_above_ground(reftime=124, time=7,
height_above_ground=1, lat=576, lon=1152);
  :long_name = "u-component of wind @ Specified height level above ground";
  :units = "m/s";
  :missing_value = NaNf; // float
  :abbreviation = "UGRD";
  :coordinates = "reftime time height_above_ground ";
  :Grib_Variable_Id = "VAR_0-2-2_L103";
  :Grib2_Parameter = 0, 2, 2; // int
  :Grib2_Parameter_Discipline = "Meteorological products";
  :Grib2_Parameter_Category = "Momentum";
  :Grib2_Parameter_Name = "u-component of wind";
  :Grib2_Level_Type = "Specified height level above ground";
  :Grib2_Generating_Process_Type = "Forecast";

Again, it is all about the backward compatibility.

3) Would it be helpful to maintain a collective repository of files
from diverse domains and different formats that are read by
NetCDF-Java users and test all subsequent releases against that
repository?

It could reveal differences/changes and document them at the early
stage and avoid things like described (also recall HDF issues like
http://www.unidata.ucar.edu/support/help/MailArchives/netcdf/msg12946.html
)

2015-03-07 3:55 GMT+03:00 John Caron <caron@xxxxxxxx>:
> Version 4.5.5 of thredds (beta) and netcdf-java (stable) is now released and
> available from our website:
>
> http://www.unidata.ucar.edu/software/thredds/v4.5/netcdf-java/documentation.htm
>
> http://www.unidata.ucar.edu/software/thredds/v4.5/tds/TDS.html
>
>
> The 4.5.5 release fixes several bugs, including:
>
> a memory leak when processing netcdf4/hdf5 files
> a bug with nested aggregations not working when caching was on, eg in TDS
> a bug handling client-side certificates
> handling of scalar runtime coordinate for GRIB collections
> upgrade ncWMS
> fix NIDS start/end dates
>
> Please upgrade asap, especially due to the first bug listed.
>
> thanks!
>
>
> _______________________________________________
> netcdf-java mailing list
> netcdf-java@xxxxxxxxxxxxxxxx
> For list information or to unsubscribe, visit:
> http://www.unidata.ucar.edu/mailing_lists/



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