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
Minimal, reproducible code sample, a copy-pastable example if possible
# Jenkin's lookup3 can be useful for verifying HDF5 data structures such as the superblock belowimportjenkins_cffiwithopen("original_hdf5_zarr_shard_demo.h5", "rb") asf:
b=f.read(48)
hash_bytes=jenkins_cffi.hashlittle(bytes(b[:-4])).to_bytes(4, "little")
print(b[-4:] ==hash_bytes) # True
Problem description
Jenkin's lookup3 is an integral component of the HDF5 specification for its internal datastructures.
This becomes relevant if we would like to reuse HDF5 data structures. For example, the HDF5 Fixed Array Data Block can made byte compatible with the proposed Zarr shard specification, except for the four byte checksum. Currently, the only permitted checksum is crc32.
We tend to favor either vendoring outside libraries or reimplementing algorithms in Cython. (Numcodecs has no dependencies other than numpy.) Both options seem plausible here. I'd go for the path of least resistance.
@mkitti - are you interested in working on PR to add this codec? We will be glad to support you.
I would be happy to work on it if there is a clear path forward. I would prefer to avoid the outcome of the SZIP/libaec effort with the pull request: #420 / #422
Minimal, reproducible code sample, a copy-pastable example if possible
Problem description
Jenkin's lookup3 is an integral component of the HDF5 specification for its internal datastructures.
This becomes relevant if we would like to reuse HDF5 data structures. For example, the HDF5 Fixed Array Data Block can made byte compatible with the proposed Zarr shard specification, except for the four byte checksum. Currently, the only permitted checksum is crc32.
zarr-developers/zarr-specs#152 (comment)
An implementation of Bob Jenkin's lookup3 is widely available across many languages.
Version and installation information
Please provide the following:
The text was updated successfully, but these errors were encountered: