The error you are experiencing has to do with the fact that your data has NetCDF files (the .nc files) that are part of the NetCDF Enhanced Model (there NetCDF-4), which is a good thing. However, the NetCDF Classic model (NetCDF-3), which is an older file data format, is also named with the file extension .nc , and the root of the problem that NetCDF-3 and NetCDF-4 are associated with different underlying libraries (the underlying library for the NetCDF-4 is the HDF5 library),despite having the same file extension (.nc).
The problem related to the Hyrax data server, is that internally data files get assigned according to each file’s extension. The fact that NetCDF3 and NetCDF4, which have very different internal libraries, have the same .nc file extension then causes this error on Hyrax.
That said, there are a ways to overcome these issues you are experiencing. In all of these scenarios, you will need to identify all the NetCDF4 files (which may be all of your .nc files, but you may also find some of your .nc files being NetCDF3, which can complicate the scenarios below).
1. Quick solution:
Identify all NetCDF4 and add a .h5 extension to them. Say if a file is filename.nc , then rename it as filename.nc.h5 . This will ensure that Hyrax assigns these files to the internal HDF5 data handler.
2. Intermediate solution A:
If you worry about changing the file extension from NetCDF to HDF5 (nc → .nc.h5), you can also change it to a NetCDF4 file extension, by replacing or adding the file extension .nc4 to your files. And so in the example above filename.nc → filename.nc4 or filename.nc.nc4 .
3. Intermediate solution B:
If you do not want to change at all the file extension to your data files, you can create a configuration called site.conf file Hyrax can read, to assign the HDF5 handler to your NetCDF4 files. If all your .nc files are NetCDF4 files , then this is straightforward and an example on how to do this is on the blog post on the website: https://www.opendap.org/how-to-serve-data-with-groups-with-hyrax/ In particular, Step 4. Note the in that example, all the files are nc4, and so just replace nc4 with nc on the snippet of code.