[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[netCDF #WNT-807985]: deflation question/clarification

Hi Charlie,

> A user wants to uncompress their files with NCO and setting the
> deflation level to zero works yet the variables are still listed
> as having the deflation filter set. Now I make NCO manually turn-off
> the deflate flag when the deflation level is zero yet I'm wondering
> why the netCDF library does not do this automatically when I call
> var_deflate() with level 0. This makes me think I don't fully
> understand what deflation level equals zero means. And I'm wary
> of introducing bugs through naÃvete.

I'm CC:ing hdf5 support, in case they have a correction for my
understanding of why deflation level 0 is distinguished from

I think netCDF-4 is following HDF5's meaning for deflate level 0.  The
HDF5 reference documentation for H5P_set_deflate() says:

    Note that setting the compression level to 0 (zero) does not turn 
    off use of the gzip filter; it simply sets the filter to perform no
    compression as it processes the data.

> Is there any distinction between uncompressed variables and variables
> with compression set to level zero?

I think this means that the variable must still use chunked rather than 
contiguous layout, whereas an uncompressed variable could use contiguous 

> Are such variables fully uncompressed?


> Perhaps this could be indicated in the manual.

Right, if hdf5 support confirms my understanding, I'll make this 
difference explicit in the documentation.

> Is there a reason not to unset the deflation flag when deflation
> level is zero?

I'll pass the buck to HDF5 support, in case they know a good reason 
why the deflation property is set for data "compressed" with deflation 
level 0.


Russ Rew                                         UCAR Unidata Program
address@hidden                      http://www.unidata.ucar.edu

Ticket Details
Ticket ID: WNT-807985
Department: Support netCDF
Priority: Normal
Status: Closed

NOTE: All email exchanges with Unidata User Support are recorded in the Unidata inquiry tracking system and then made publicly available through the web. If you do not want to have your interactions made available in this way, you must let us know in each email you send to us.