Skip to content

h5py string compatible IO test fails with HDF5 1.12.1 #523

@planetmarshall

Description

@planetmarshall

The following test scenario fails

Scenario: testing h5py compatible string IO
Given: a UTF8 string dataset
And given: a vector buffer
Then: we can read the data back without a special data type

Steps to reproduce

GCC 7.5
CMake 3.10.2
HDF5 1.12.1

These are the default tools packaged with Ubuntu 18.04 LTS.

For a Docker image to reproduce this issue see

docker pull algodynamic/ubuntu-dev:18.04

See also https://github.com/planetmarshall/h5cpp/runs/4204396185?check_suite_focus=true

mkdir build
cd build
cmake .. -D WITH_BOOST=False
cmake --build . 
ctest

Expected results

All tests run and pass

Actual Results

The above test fails with

HDF5-DIAG: Error detected in HDF5 (1.12.1) thread 0:
  #000: /tmp/hdf5-hdf5-1_12_1/src/H5Dio.c line 179 in H5Dread(): can't read data
    major: Dataset
    minor: Read failed
  #001: /tmp/hdf5-hdf5-1_12_1/src/H5VLcallback.c line 2011 in H5VL_dataset_read(): dataset read failed
    major: Virtual Object Layer
    minor: Read failed
  #002: /tmp/hdf5-hdf5-1_12_1/src/H5VLcallback.c line 1978 in H5VL__dataset_read(): dataset read failed
    major: Virtual Object Layer
    minor: Read failed
  #003: /tmp/hdf5-hdf5-1_12_1/src/H5VLnative_dataset.c line 166 in H5VL__native_dataset_read(): can't read data
    major: Dataset
    minor: Read failed
  #004: /tmp/hdf5-hdf5-1_12_1/src/H5Dio.c line 403 in H5D__read(): unable to set up type info
    major: Dataset
    minor: Unable to initialize object
  #005: /tmp/hdf5-hdf5-1_12_1/src/H5Dio.c line 923 in H5D__typeinfo_init(): unable to convert between src and dest datatype
    major: Dataset
    minor: Feature is unsupported
  #006: /tmp/hdf5-hdf5-1_12_1/src/H5T.c line 4973 in H5T_path_find(): can't find datatype conversion path
    major: Datatype
    minor: Can't get value
  #007: /tmp/hdf5-hdf5-1_12_1/src/H5T.c line 5195 in H5T__path_find_real(): no appropriate function for conversion path
    major: Datatype
    minor: Unable to initialize object

/tmp/h5cpp/test/node/dataset_h5py_string_compat_test.cpp:75: Failure:
due to unexpected exception with message:
  Failure to read variable length string data from dataset [/utf8_string]!

Metadata

Metadata

Assignees

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