You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The library's filter pipeline has an optional/mandatory flag associated with each filter. Optional filters should be skipped if they fail for whatever reason, while a failure with a mandatory filter should cause the operation to fail. Wrappers that set particular filters (e.g. H5Pset_deflate, H5Pset_szip) always mark them as optional. Setting the filters using H5Pset_filter lets the user decide the optional/mandatory flag for each filter.
At the moment, the REST VOL uses wrapper functions to construct filter pipelines on re-opened datasets, setting their required parameter to "optional" in all cases. This is likely the source of this issue.
It would be possible for the REST VOL to work around this by replacing calls to wrappers with use of H5Pset_filter that preserve the required flag, but this would involve duplicating setup work done by each of those wrapper functions.
The text was updated successfully, but these errors were encountered:
mattjala
changed the title
Assumes all filters are optional upon re-opening dataset
VOL should not assume all filters are optional upon re-opening dataset
Oct 16, 2023
The library's filter pipeline has an optional/mandatory flag associated with each filter. Optional filters should be skipped if they fail for whatever reason, while a failure with a mandatory filter should cause the operation to fail. Wrappers that set particular filters (e.g.
H5Pset_deflate
,H5Pset_szip
) always mark them as optional. Setting the filters usingH5Pset_filter
lets the user decide the optional/mandatory flag for each filter.At the moment, the REST VOL uses wrapper functions to construct filter pipelines on re-opened datasets, setting their required parameter to "optional" in all cases. This is likely the source of this issue.
It would be possible for the REST VOL to work around this by replacing calls to wrappers with use of
H5Pset_filter
that preserve the required flag, but this would involve duplicating setup work done by each of those wrapper functions.The text was updated successfully, but these errors were encountered: