Skip to content

Missing metadata in HDF5 fusion leads to error opening file #167

Description

@ScientistRachel

The AIC has identified a bug in fusion to an hdf5 file. This an overview of our workflow:

  1. Convert raw tifs to BDV format using BigStitcher's SiMView loader
  2. Resave as hdf5
  3. Register multiview camera images
  4. Fuse to hdf5
  5. Attempt to open the fused file --> ERROR

The error, which seems to happen most often when an image contains some number of saturated pixels leads to a large wall of red text in the Fiji console, and often freezes Fiji so thoroughly that we have to force close the app. I will attach the full text of one example error. The key part looks like this:

java.util.concurrent.ExecutionException: hdf.hdf5lib.exceptions.HDF5DatatypeInterfaceException: Can't convert datatypes ["f:\jhdf5\c\build\cmake-hdf5-1.10.5\hdf5-1.10.5\src\h5tconv.c line 5236 in H5T__conv_ushort_short(): can't handle conversion exception
"]
	at net.imglib2.cache.ref.SoftRefLoaderCache.get(SoftRefLoaderCache.java:145)
	at net.imglib2.cache.util.LoaderCacheKeyAdapter.get(LoaderCacheKeyAdapter.java:53)
	at net.imglib2.cache.util.LoaderCacheAsCacheAdapter.get(LoaderCacheAsCacheAdapter.java:76)
	at net.imglib2.cache.ref.WeakRefVolatileCache.getBlocking(WeakRefVolatileCache.java:484)
	at net.imglib2.cache.ref.WeakRefVolatileCache.access$000(WeakRefVolatileCache.java:53)
	at net.imglib2.cache.ref.WeakRefVolatileCache$FetchEntry.call(WeakRefVolatileCache.java:531)
	at net.imglib2.cache.ref.WeakRefVolatileCache$FetchEntry.call(WeakRefVolatileCache.java:508)
	at net.imglib2.cache.queue.FetcherThreads$Fetcher.run(FetcherThreads.java:181)
Caused by: hdf.hdf5lib.exceptions.HDF5DatatypeInterfaceException: Can't convert datatypes ["f:\jhdf5\c\build\cmake-hdf5-1.10.5\hdf5-1.10.5\src\h5tconv.c line 5236 in H5T__conv_ushort_short(): can't handle conversion exception
"]

With help from @takashi310, we have identified that the issue is that the metadata in the hdf5 output does not include the data type. We do not have this issue with fusion to zarr, and use that when we can, but there are advantages to hdf5 for some of our users, so would also like to be able to use that format when helpful. Thank you for any suggestions on fixing this error!

metadata_error.txt

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