Read errors for some chunks after upgrading to HDF5 1.14.6
- Dominant language
- C
- Stars
- 988
- Forks
- 355
- Avg merge
- 4d 2h
- Merged PRs (30d)
- 12
Description
After updating to HDF5 1.14.6 I get read errors for some chunks in long existing HDF5 files. I did some debugging and found out that the root cause was introduced in 1.14.5 here:
https://github.com/HDFGroup/hdf5/blob/0fe0459fc24d71be13d5f266513c2832b525671b/src/H5Zscaleoffset.c#L1213-L1214
I think it has to be `if (minbits > p.size * 8)` instead of `>=`. There is an assert `<=` some lines below which contradicts the new check somehow (line 1229) and even a special handling for minbits equal to full precision which is now completely useless (line 1240).
After changing it locally to `>` and rebuilding HDF5 I could read all chunks without problems.
An example dataset that has the problem with 1.14.6 can be found here: http://fly.mpi-cbg.de/~pietzsch/bdv-examples/drosophila.h5
Contributor guide
Assessment
This issue has not been assessed yet.