Skip to content

change in behavior in 4.7.4 in handling in nc_def_var_deflate() #1713

@edwardhartnett

Description

@edwardhartnett

Another change that accompanied the recent filter changes was a change in the way nc_def_var_deflate() behaves when called more than once for the same var before enddef.

It used to be that nc_def_var_deflate() could be called repeatedly, and the settings could be changed, until enddef.

Now, the first call to nc_def_var_deflate() sets the deflate settings. Subsequent calls are ignored.

This was never tested in netCDF tests, but it does come up in PIO tests, so I'm sorry I didn't notice this before - I've been spending my time on the GFS weather model instead. ;-)

I'm putting together a test now to demonstrate the problem. @WardF if there is going to soon be a new release, with a reverse of some of the other changes in this code, then we probably want to get this fix in as well before that.

PIO counts on this behavior,. and its not hard to see how other programs may as well, especially fortran codes, which may set all vars to a default deflate, and then allow individual vars to be set to different levels as needed. This worked before, but with 4.7.4 all vars will receive the default deflate settings, and subsequent changes will be ignored.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions