Skip to content

Read errors for some chunks after upgrading to HDF5 1.14.6 #5861

Description

@stpklp

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:

hdf5/src/H5Zscaleoffset.c

Lines 1213 to 1214 in 0fe0459

if (minbits >= p.size * 8)
HGOTO_ERROR(H5E_ARGS, H5E_BADVALUE, 0, "minimum number of bits exceeds size of type");

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

Metadata

Metadata

Assignees

Labels

Component - C LibraryCore C library issues (usually in the src directory)

Type

Projects

Status
On-Deck

Relationships

None yet

Development

No branches or pull requests

Issue actions