Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test failures in test_vlarray with last release and current master #845

Closed
bnavigator opened this issue Dec 24, 2020 · 5 comments
Closed
Labels
Milestone

Comments

@bnavigator
Copy link
Contributor

Hello, I am trying to fix the currently failing package of python-tables in openSUSE Tumbleweed. Both the last release version 3.6.1 and current master fail 12 times in test_vlarray with the same error from HDF5:

[   58s] + python3 -B -m tables.tests.test_all
[   59s] -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
[   59s] PyTables version:    3.6.2.dev0
[   59s] HDF5 version:        1.10.7
[   59s] NumPy version:       1.19.2
[   59s] Numexpr version:     2.7.1 (not using Intel's VML/MKL)
[   59s] Zlib version:        1.2.11 (in Python interpreter)
[   59s] LZO version:         2.10 (Mar 01 2017)
[   59s] BZIP2 version:       1.0.8 (13-Jul-2019)
[   59s] Blosc version:       1.20.1 (2020-09-08)
[   59s] Blosc compressors:   blosclz (2.3.0), lz4 (1.9.3), lz4hc (1.9.3), snappy (unknown), zlib (1.2.11), zstd (1.4.5)
[   59s] Blosc filters:       shuffle, bitshuffle
[   59s] Cython version:      0.29.21
[   59s] Python version:      3.8.6 (default, Nov 09 2020, 12:09:06) [GCC]
[   59s] Platform:            Linux-5.9.14-1-default-x86_64-with-glibc2.2.5
[   59s] Byte-ordering:       little
[   59s] Detected cores:      4
[   59s] Default encoding:    utf-8
[   59s] Default FS encoding: utf-8
[   59s] Default locale:      (en_US, UTF-8)
[   59s] -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
...
[  270s] ERROR: test04_get_row_size (tables.tests.test_vlarray.AllFiltersTestCase)
[  270s] Checking get_row_size method.
[  270s] ----------------------------------------------------------------------
[  270s] Traceback (most recent call last):
[  270s]   File "/home/abuild/rpmbuild/BUILDROOT/python-tables-3.6.1+git88.92c953a-0.x86_64/usr/lib64/python3.8/site-packages/tables/tests/test_vlarray.py", line 35, in setUp
[  270s]     self.populateFile()
[  270s]   File "/home/abuild/rpmbuild/BUILDROOT/python-tables-3.6.1+git88.92c953a-0.x86_64/usr/lib64/python3.8/site-packages/tables/tests/test_vlarray.py", line 45, in populateFile
[  270s]     vlarray = self.h5file.create_vlarray(group, 'vlarray1',
[  270s]   File "/home/abuild/rpmbuild/BUILDROOT/python-tables-3.6.1+git88.92c953a-0.x86_64/usr/lib64/python3.8/site-packages/tables/file.py", line 1491, in create_vlarray
[  270s]     ptobj = VLArray(parentnode, name,
[  270s]   File "/home/abuild/rpmbuild/BUILDROOT/python-tables-3.6.1+git88.92c953a-0.x86_64/usr/lib64/python3.8/site-packages/tables/vlarray.py", line 347, in __init__
[  270s]     super().__init__(parentnode, name, new, filters,
[  270s]   File "/home/abuild/rpmbuild/BUILDROOT/python-tables-3.6.1+git88.92c953a-0.x86_64/usr/lib64/python3.8/site-packages/tables/leaf.py", line 284, in __init__
[  270s]     super().__init__(parentnode, name, _log)
[  270s]   File "/home/abuild/rpmbuild/BUILDROOT/python-tables-3.6.1+git88.92c953a-0.x86_64/usr/lib64/python3.8/site-packages/tables/node.py", line 262, in __init__
[  270s]     self._v_objectid = self._g_create()
[  270s]   File "/home/abuild/rpmbuild/BUILDROOT/python-tables-3.6.1+git88.92c953a-0.x86_64/usr/lib64/python3.8/site-packages/tables/vlarray.py", line 417, in _g_create
[  270s]     self._v_objectid = self._create_array(self._v_new_title)
[  270s]   File "tables/hdf5extension.pyx", line 1960, in tables.hdf5extension.VLArray._create_array
[  270s] tables.exceptions.HDF5ExtError: HDF5 error back trace
[  270s] 
[  270s]   File "H5D.c", line 152, in H5Dcreate2
[  270s]     unable to create dataset
[  270s]   File "H5Dint.c", line 338, in H5D__create_named
[  270s]     unable to create and link to dataset
[  270s]   File "H5L.c", line 1605, in H5L_link_object
[  270s]     unable to create new link to object
[  270s]   File "H5L.c", line 1846, in H5L__create_real
[  270s]     can't insert link
[  270s]   File "H5Gtraverse.c", line 848, in H5G_traverse
[  270s]     internal path traversal failed
[  270s]   File "H5Gtraverse.c", line 624, in H5G__traverse_real
[  270s]     traversal operator failed
[  270s]   File "H5L.c", line 1652, in H5L__link_cb
[  270s]     unable to create object
[  270s]   File "H5Oint.c", line 2496, in H5O_obj_create
[  270s]     unable to open object
[  270s]   File "H5Doh.c", line 300, in H5O__dset_create
[  270s]     unable to create dataset
[  270s]   File "H5Dint.c", line 1230, in H5D__create
[  270s]     H5Z_has_optional_filter() failed
[  270s]   File "H5Z.c", line 1060, in H5Z_ignore_filters
[  270s]     not suitable for filters
[  270s] 
[  270s] End of HDF5 error back trace
[  270s] 
[  270s] Problems creating the VLArray.

Any hints?

@avalentino
Copy link
Member

I haven't had the time to give a look to it, but if I understand correctly the build of v3.6.1 worked at some point and than started failing, is it correct?
I so It would be interesting to know what changed in the environment and dependencies since the last successful build.

@bnavigator
Copy link
Contributor Author

The hdf5 library package was updated from 1.10.5 to 1.10.7 at roughly about the same time as the build started to fail: At the end of November. I am not 100% sure though, as I have not found a way yet how to determine the exact change between builds.

@avalentino
Copy link
Member

OK, I can confirm that running the test suite in a conda environment with HDF5 v1.10.7 I have several errors (including your one).
Almost all of them seems to be related to compressors.

$ python3 tables/tests/test_all.py
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
PyTables version:    3.6.1
HDF5 version:        1.10.7
NumPy version:       1.19.2
Numexpr version:     2.7.1 (using VML/MKL 2020.0.2)
Zlib version:        1.2.11 (in Python interpreter)
LZO version:         2.10 (Mar 01 2017)
BZIP2 version:       1.0.8 (13-Jul-2019)
Blosc version:       1.20.1 (2020-09-08)
Blosc compressors:   blosclz (2.3.0), lz4 (1.9.2), lz4hc (1.9.2), zlib (1.2.11), zstd (1.4.5)
Blosc filters:       shuffle, bitshuffle
Cython version:      0.29.21
Python version:      3.8.5 (default, Sep  4 2020, 07:30:14) 
[GCC 7.3.0]
Platform:            Linux-5.8.0-34-generic-x86_64-with-glibc2.10
Byte-ordering:       little
Detected cores:      8
Default encoding:    utf-8
Default FS encoding: utf-8
Default locale:      (it_IT, UTF-8)
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Performing only a light (yet comprehensive) subset of the test suite.
If you want a more complete test, try passing the --heavy flag to this script
(or set the 'heavy' parameter in case you are using tables.test() call).
The whole suite will take more than 4 hours to complete on a relatively
modern CPU and around 512 MB of main memory.
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

...

======================================================================
ERROR: test00_attributes (tables.tests.test_vlarray.Fletcher32TestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 37, in setUp
    self.populateFile()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 47, in populateFile
    vlarray = self.h5file.create_vlarray(group, 'vlarray1',
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/file.py", line 1493, in create_vlarray
    ptobj = VLArray(parentnode, name,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 349, in __init__
    super(VLArray, self).__init__(parentnode, name, new, filters,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/leaf.py", line 286, in __init__
    super(Leaf, self).__init__(parentnode, name, _log)
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/node.py", line 264, in __init__
    self._v_objectid = self._g_create()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 419, in _g_create
    self._v_objectid = self._create_array(self._v_new_title)
  File "tables/hdf5extension.pyx", line 1968, in tables.hdf5extension.VLArray._create_array
tables.exceptions.HDF5ExtError: HDF5 error back trace

  File "H5D.c", line 152, in H5Dcreate2
    unable to create dataset
  File "H5Dint.c", line 338, in H5D__create_named
    unable to create and link to dataset
  File "H5L.c", line 1605, in H5L_link_object
    unable to create new link to object
  File "H5L.c", line 1846, in H5L__create_real
    can't insert link
  File "H5Gtraverse.c", line 848, in H5G_traverse
    internal path traversal failed
  File "H5Gtraverse.c", line 624, in H5G__traverse_real
    traversal operator failed
  File "H5L.c", line 1652, in H5L__link_cb
    unable to create object
  File "H5Oint.c", line 2496, in H5O_obj_create
    unable to open object
  File "H5Doh.c", line 300, in H5O__dset_create
    unable to create dataset
  File "H5Dint.c", line 1230, in H5D__create
    H5Z_has_optional_filter() failed
  File "H5Z.c", line 1060, in H5Z_ignore_filters
    not suitable for filters

End of HDF5 error back trace

Problems creating the VLArray.

======================================================================
ERROR: test01_read (tables.tests.test_vlarray.Fletcher32TestCase)
Checking vlarray read.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 37, in setUp
    self.populateFile()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 47, in populateFile
    vlarray = self.h5file.create_vlarray(group, 'vlarray1',
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/file.py", line 1493, in create_vlarray
    ptobj = VLArray(parentnode, name,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 349, in __init__
    super(VLArray, self).__init__(parentnode, name, new, filters,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/leaf.py", line 286, in __init__
    super(Leaf, self).__init__(parentnode, name, _log)
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/node.py", line 264, in __init__
    self._v_objectid = self._g_create()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 419, in _g_create
    self._v_objectid = self._create_array(self._v_new_title)
  File "tables/hdf5extension.pyx", line 1968, in tables.hdf5extension.VLArray._create_array
tables.exceptions.HDF5ExtError: HDF5 error back trace

  File "H5D.c", line 152, in H5Dcreate2
    unable to create dataset
  File "H5Dint.c", line 338, in H5D__create_named
    unable to create and link to dataset
  File "H5L.c", line 1605, in H5L_link_object
    unable to create new link to object
  File "H5L.c", line 1846, in H5L__create_real
    can't insert link
  File "H5Gtraverse.c", line 848, in H5G_traverse
    internal path traversal failed
  File "H5Gtraverse.c", line 624, in H5G__traverse_real
    traversal operator failed
  File "H5L.c", line 1652, in H5L__link_cb
    unable to create object
  File "H5Oint.c", line 2496, in H5O_obj_create
    unable to open object
  File "H5Doh.c", line 300, in H5O__dset_create
    unable to create dataset
  File "H5Dint.c", line 1230, in H5D__create
    H5Z_has_optional_filter() failed
  File "H5Z.c", line 1060, in H5Z_ignore_filters
    not suitable for filters

End of HDF5 error back trace

Problems creating the VLArray.

======================================================================
ERROR: test02a_getitem (tables.tests.test_vlarray.Fletcher32TestCase)
Checking vlarray __getitem__ (slices)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 37, in setUp
    self.populateFile()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 47, in populateFile
    vlarray = self.h5file.create_vlarray(group, 'vlarray1',
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/file.py", line 1493, in create_vlarray
    ptobj = VLArray(parentnode, name,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 349, in __init__
    super(VLArray, self).__init__(parentnode, name, new, filters,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/leaf.py", line 286, in __init__
    super(Leaf, self).__init__(parentnode, name, _log)
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/node.py", line 264, in __init__
    self._v_objectid = self._g_create()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 419, in _g_create
    self._v_objectid = self._create_array(self._v_new_title)
  File "tables/hdf5extension.pyx", line 1968, in tables.hdf5extension.VLArray._create_array
tables.exceptions.HDF5ExtError: HDF5 error back trace

  File "H5D.c", line 152, in H5Dcreate2
    unable to create dataset
  File "H5Dint.c", line 338, in H5D__create_named
    unable to create and link to dataset
  File "H5L.c", line 1605, in H5L_link_object
    unable to create new link to object
  File "H5L.c", line 1846, in H5L__create_real
    can't insert link
  File "H5Gtraverse.c", line 848, in H5G_traverse
    internal path traversal failed
  File "H5Gtraverse.c", line 624, in H5G__traverse_real
    traversal operator failed
  File "H5L.c", line 1652, in H5L__link_cb
    unable to create object
  File "H5Oint.c", line 2496, in H5O_obj_create
    unable to open object
  File "H5Doh.c", line 300, in H5O__dset_create
    unable to create dataset
  File "H5Dint.c", line 1230, in H5D__create
    H5Z_has_optional_filter() failed
  File "H5Z.c", line 1060, in H5Z_ignore_filters
    not suitable for filters

End of HDF5 error back trace

Problems creating the VLArray.

======================================================================
ERROR: test02b_getitem (tables.tests.test_vlarray.Fletcher32TestCase)
Checking vlarray __getitem__ (scalars)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 37, in setUp
    self.populateFile()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 47, in populateFile
    vlarray = self.h5file.create_vlarray(group, 'vlarray1',
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/file.py", line 1493, in create_vlarray
    ptobj = VLArray(parentnode, name,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 349, in __init__
    super(VLArray, self).__init__(parentnode, name, new, filters,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/leaf.py", line 286, in __init__
    super(Leaf, self).__init__(parentnode, name, _log)
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/node.py", line 264, in __init__
    self._v_objectid = self._g_create()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 419, in _g_create
    self._v_objectid = self._create_array(self._v_new_title)
  File "tables/hdf5extension.pyx", line 1968, in tables.hdf5extension.VLArray._create_array
tables.exceptions.HDF5ExtError: HDF5 error back trace

  File "H5D.c", line 152, in H5Dcreate2
    unable to create dataset
  File "H5Dint.c", line 338, in H5D__create_named
    unable to create and link to dataset
  File "H5L.c", line 1605, in H5L_link_object
    unable to create new link to object
  File "H5L.c", line 1846, in H5L__create_real
    can't insert link
  File "H5Gtraverse.c", line 848, in H5G_traverse
    internal path traversal failed
  File "H5Gtraverse.c", line 624, in H5G__traverse_real
    traversal operator failed
  File "H5L.c", line 1652, in H5L__link_cb
    unable to create object
  File "H5Oint.c", line 2496, in H5O_obj_create
    unable to open object
  File "H5Doh.c", line 300, in H5O__dset_create
    unable to create dataset
  File "H5Dint.c", line 1230, in H5D__create
    H5Z_has_optional_filter() failed
  File "H5Z.c", line 1060, in H5Z_ignore_filters
    not suitable for filters

End of HDF5 error back trace

Problems creating the VLArray.

======================================================================
ERROR: test03_append (tables.tests.test_vlarray.Fletcher32TestCase)
Checking vlarray append.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 37, in setUp
    self.populateFile()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 47, in populateFile
    vlarray = self.h5file.create_vlarray(group, 'vlarray1',
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/file.py", line 1493, in create_vlarray
    ptobj = VLArray(parentnode, name,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 349, in __init__
    super(VLArray, self).__init__(parentnode, name, new, filters,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/leaf.py", line 286, in __init__
    super(Leaf, self).__init__(parentnode, name, _log)
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/node.py", line 264, in __init__
    self._v_objectid = self._g_create()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 419, in _g_create
    self._v_objectid = self._create_array(self._v_new_title)
  File "tables/hdf5extension.pyx", line 1968, in tables.hdf5extension.VLArray._create_array
tables.exceptions.HDF5ExtError: HDF5 error back trace

  File "H5D.c", line 152, in H5Dcreate2
    unable to create dataset
  File "H5Dint.c", line 338, in H5D__create_named
    unable to create and link to dataset
  File "H5L.c", line 1605, in H5L_link_object
    unable to create new link to object
  File "H5L.c", line 1846, in H5L__create_real
    can't insert link
  File "H5Gtraverse.c", line 848, in H5G_traverse
    internal path traversal failed
  File "H5Gtraverse.c", line 624, in H5G__traverse_real
    traversal operator failed
  File "H5L.c", line 1652, in H5L__link_cb
    unable to create object
  File "H5Oint.c", line 2496, in H5O_obj_create
    unable to open object
  File "H5Doh.c", line 300, in H5O__dset_create
    unable to create dataset
  File "H5Dint.c", line 1230, in H5D__create
    H5Z_has_optional_filter() failed
  File "H5Z.c", line 1060, in H5Z_ignore_filters
    not suitable for filters

End of HDF5 error back trace

Problems creating the VLArray.

======================================================================
ERROR: test04_get_row_size (tables.tests.test_vlarray.Fletcher32TestCase)
Checking get_row_size method.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 37, in setUp
    self.populateFile()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 47, in populateFile
    vlarray = self.h5file.create_vlarray(group, 'vlarray1',
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/file.py", line 1493, in create_vlarray
    ptobj = VLArray(parentnode, name,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 349, in __init__
    super(VLArray, self).__init__(parentnode, name, new, filters,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/leaf.py", line 286, in __init__
    super(Leaf, self).__init__(parentnode, name, _log)
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/node.py", line 264, in __init__
    self._v_objectid = self._g_create()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 419, in _g_create
    self._v_objectid = self._create_array(self._v_new_title)
  File "tables/hdf5extension.pyx", line 1968, in tables.hdf5extension.VLArray._create_array
tables.exceptions.HDF5ExtError: HDF5 error back trace

  File "H5D.c", line 152, in H5Dcreate2
    unable to create dataset
  File "H5Dint.c", line 338, in H5D__create_named
    unable to create and link to dataset
  File "H5L.c", line 1605, in H5L_link_object
    unable to create new link to object
  File "H5L.c", line 1846, in H5L__create_real
    can't insert link
  File "H5Gtraverse.c", line 848, in H5G_traverse
    internal path traversal failed
  File "H5Gtraverse.c", line 624, in H5G__traverse_real
    traversal operator failed
  File "H5L.c", line 1652, in H5L__link_cb
    unable to create object
  File "H5Oint.c", line 2496, in H5O_obj_create
    unable to open object
  File "H5Doh.c", line 300, in H5O__dset_create
    unable to create dataset
  File "H5Dint.c", line 1230, in H5D__create
    H5Z_has_optional_filter() failed
  File "H5Z.c", line 1060, in H5Z_ignore_filters
    not suitable for filters

End of HDF5 error back trace

Problems creating the VLArray.

======================================================================
ERROR: test00_attributes (tables.tests.test_vlarray.AllFiltersTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 37, in setUp
    self.populateFile()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 47, in populateFile
    vlarray = self.h5file.create_vlarray(group, 'vlarray1',
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/file.py", line 1493, in create_vlarray
    ptobj = VLArray(parentnode, name,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 349, in __init__
    super(VLArray, self).__init__(parentnode, name, new, filters,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/leaf.py", line 286, in __init__
    super(Leaf, self).__init__(parentnode, name, _log)
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/node.py", line 264, in __init__
    self._v_objectid = self._g_create()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 419, in _g_create
    self._v_objectid = self._create_array(self._v_new_title)
  File "tables/hdf5extension.pyx", line 1968, in tables.hdf5extension.VLArray._create_array
tables.exceptions.HDF5ExtError: HDF5 error back trace

  File "H5D.c", line 152, in H5Dcreate2
    unable to create dataset
  File "H5Dint.c", line 338, in H5D__create_named
    unable to create and link to dataset
  File "H5L.c", line 1605, in H5L_link_object
    unable to create new link to object
  File "H5L.c", line 1846, in H5L__create_real
    can't insert link
  File "H5Gtraverse.c", line 848, in H5G_traverse
    internal path traversal failed
  File "H5Gtraverse.c", line 624, in H5G__traverse_real
    traversal operator failed
  File "H5L.c", line 1652, in H5L__link_cb
    unable to create object
  File "H5Oint.c", line 2496, in H5O_obj_create
    unable to open object
  File "H5Doh.c", line 300, in H5O__dset_create
    unable to create dataset
  File "H5Dint.c", line 1230, in H5D__create
    H5Z_has_optional_filter() failed
  File "H5Z.c", line 1060, in H5Z_ignore_filters
    not suitable for filters

End of HDF5 error back trace

Problems creating the VLArray.

======================================================================
ERROR: test01_read (tables.tests.test_vlarray.AllFiltersTestCase)
Checking vlarray read.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 37, in setUp
    self.populateFile()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 47, in populateFile
    vlarray = self.h5file.create_vlarray(group, 'vlarray1',
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/file.py", line 1493, in create_vlarray
    ptobj = VLArray(parentnode, name,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 349, in __init__
    super(VLArray, self).__init__(parentnode, name, new, filters,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/leaf.py", line 286, in __init__
    super(Leaf, self).__init__(parentnode, name, _log)
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/node.py", line 264, in __init__
    self._v_objectid = self._g_create()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 419, in _g_create
    self._v_objectid = self._create_array(self._v_new_title)
  File "tables/hdf5extension.pyx", line 1968, in tables.hdf5extension.VLArray._create_array
tables.exceptions.HDF5ExtError: HDF5 error back trace

  File "H5D.c", line 152, in H5Dcreate2
    unable to create dataset
  File "H5Dint.c", line 338, in H5D__create_named
    unable to create and link to dataset
  File "H5L.c", line 1605, in H5L_link_object
    unable to create new link to object
  File "H5L.c", line 1846, in H5L__create_real
    can't insert link
  File "H5Gtraverse.c", line 848, in H5G_traverse
    internal path traversal failed
  File "H5Gtraverse.c", line 624, in H5G__traverse_real
    traversal operator failed
  File "H5L.c", line 1652, in H5L__link_cb
    unable to create object
  File "H5Oint.c", line 2496, in H5O_obj_create
    unable to open object
  File "H5Doh.c", line 300, in H5O__dset_create
    unable to create dataset
  File "H5Dint.c", line 1230, in H5D__create
    H5Z_has_optional_filter() failed
  File "H5Z.c", line 1060, in H5Z_ignore_filters
    not suitable for filters

End of HDF5 error back trace

Problems creating the VLArray.

======================================================================
ERROR: test02a_getitem (tables.tests.test_vlarray.AllFiltersTestCase)
Checking vlarray __getitem__ (slices)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 37, in setUp
    self.populateFile()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 47, in populateFile
    vlarray = self.h5file.create_vlarray(group, 'vlarray1',
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/file.py", line 1493, in create_vlarray
    ptobj = VLArray(parentnode, name,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 349, in __init__
    super(VLArray, self).__init__(parentnode, name, new, filters,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/leaf.py", line 286, in __init__
    super(Leaf, self).__init__(parentnode, name, _log)
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/node.py", line 264, in __init__
    self._v_objectid = self._g_create()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 419, in _g_create
    self._v_objectid = self._create_array(self._v_new_title)
  File "tables/hdf5extension.pyx", line 1968, in tables.hdf5extension.VLArray._create_array
tables.exceptions.HDF5ExtError: HDF5 error back trace

  File "H5D.c", line 152, in H5Dcreate2
    unable to create dataset
  File "H5Dint.c", line 338, in H5D__create_named
    unable to create and link to dataset
  File "H5L.c", line 1605, in H5L_link_object
    unable to create new link to object
  File "H5L.c", line 1846, in H5L__create_real
    can't insert link
  File "H5Gtraverse.c", line 848, in H5G_traverse
    internal path traversal failed
  File "H5Gtraverse.c", line 624, in H5G__traverse_real
    traversal operator failed
  File "H5L.c", line 1652, in H5L__link_cb
    unable to create object
  File "H5Oint.c", line 2496, in H5O_obj_create
    unable to open object
  File "H5Doh.c", line 300, in H5O__dset_create
    unable to create dataset
  File "H5Dint.c", line 1230, in H5D__create
    H5Z_has_optional_filter() failed
  File "H5Z.c", line 1060, in H5Z_ignore_filters
    not suitable for filters

End of HDF5 error back trace

Problems creating the VLArray.

======================================================================
ERROR: test02b_getitem (tables.tests.test_vlarray.AllFiltersTestCase)
Checking vlarray __getitem__ (scalars)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 37, in setUp
    self.populateFile()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 47, in populateFile
    vlarray = self.h5file.create_vlarray(group, 'vlarray1',
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/file.py", line 1493, in create_vlarray
    ptobj = VLArray(parentnode, name,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 349, in __init__
    super(VLArray, self).__init__(parentnode, name, new, filters,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/leaf.py", line 286, in __init__
    super(Leaf, self).__init__(parentnode, name, _log)
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/node.py", line 264, in __init__
    self._v_objectid = self._g_create()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 419, in _g_create
    self._v_objectid = self._create_array(self._v_new_title)
  File "tables/hdf5extension.pyx", line 1968, in tables.hdf5extension.VLArray._create_array
tables.exceptions.HDF5ExtError: HDF5 error back trace

  File "H5D.c", line 152, in H5Dcreate2
    unable to create dataset
  File "H5Dint.c", line 338, in H5D__create_named
    unable to create and link to dataset
  File "H5L.c", line 1605, in H5L_link_object
    unable to create new link to object
  File "H5L.c", line 1846, in H5L__create_real
    can't insert link
  File "H5Gtraverse.c", line 848, in H5G_traverse
    internal path traversal failed
  File "H5Gtraverse.c", line 624, in H5G__traverse_real
    traversal operator failed
  File "H5L.c", line 1652, in H5L__link_cb
    unable to create object
  File "H5Oint.c", line 2496, in H5O_obj_create
    unable to open object
  File "H5Doh.c", line 300, in H5O__dset_create
    unable to create dataset
  File "H5Dint.c", line 1230, in H5D__create
    H5Z_has_optional_filter() failed
  File "H5Z.c", line 1060, in H5Z_ignore_filters
    not suitable for filters

End of HDF5 error back trace

Problems creating the VLArray.

======================================================================
ERROR: test03_append (tables.tests.test_vlarray.AllFiltersTestCase)
Checking vlarray append.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 37, in setUp
    self.populateFile()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 47, in populateFile
    vlarray = self.h5file.create_vlarray(group, 'vlarray1',
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/file.py", line 1493, in create_vlarray
    ptobj = VLArray(parentnode, name,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 349, in __init__
    super(VLArray, self).__init__(parentnode, name, new, filters,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/leaf.py", line 286, in __init__
    super(Leaf, self).__init__(parentnode, name, _log)
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/node.py", line 264, in __init__
    self._v_objectid = self._g_create()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 419, in _g_create
    self._v_objectid = self._create_array(self._v_new_title)
  File "tables/hdf5extension.pyx", line 1968, in tables.hdf5extension.VLArray._create_array
tables.exceptions.HDF5ExtError: HDF5 error back trace

  File "H5D.c", line 152, in H5Dcreate2
    unable to create dataset
  File "H5Dint.c", line 338, in H5D__create_named
    unable to create and link to dataset
  File "H5L.c", line 1605, in H5L_link_object
    unable to create new link to object
  File "H5L.c", line 1846, in H5L__create_real
    can't insert link
  File "H5Gtraverse.c", line 848, in H5G_traverse
    internal path traversal failed
  File "H5Gtraverse.c", line 624, in H5G__traverse_real
    traversal operator failed
  File "H5L.c", line 1652, in H5L__link_cb
    unable to create object
  File "H5Oint.c", line 2496, in H5O_obj_create
    unable to open object
  File "H5Doh.c", line 300, in H5O__dset_create
    unable to create dataset
  File "H5Dint.c", line 1230, in H5D__create
    H5Z_has_optional_filter() failed
  File "H5Z.c", line 1060, in H5Z_ignore_filters
    not suitable for filters

End of HDF5 error back trace

Problems creating the VLArray.

======================================================================
ERROR: test04_get_row_size (tables.tests.test_vlarray.AllFiltersTestCase)
Checking get_row_size method.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 37, in setUp
    self.populateFile()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_vlarray.py", line 47, in populateFile
    vlarray = self.h5file.create_vlarray(group, 'vlarray1',
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/file.py", line 1493, in create_vlarray
    ptobj = VLArray(parentnode, name,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 349, in __init__
    super(VLArray, self).__init__(parentnode, name, new, filters,
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/leaf.py", line 286, in __init__
    super(Leaf, self).__init__(parentnode, name, _log)
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/node.py", line 264, in __init__
    self._v_objectid = self._g_create()
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/vlarray.py", line 419, in _g_create
    self._v_objectid = self._create_array(self._v_new_title)
  File "tables/hdf5extension.pyx", line 1968, in tables.hdf5extension.VLArray._create_array
tables.exceptions.HDF5ExtError: HDF5 error back trace

  File "H5D.c", line 152, in H5Dcreate2
    unable to create dataset
  File "H5Dint.c", line 338, in H5D__create_named
    unable to create and link to dataset
  File "H5L.c", line 1605, in H5L_link_object
    unable to create new link to object
  File "H5L.c", line 1846, in H5L__create_real
    can't insert link
  File "H5Gtraverse.c", line 848, in H5G_traverse
    internal path traversal failed
  File "H5Gtraverse.c", line 624, in H5G__traverse_real
    traversal operator failed
  File "H5L.c", line 1652, in H5L__link_cb
    unable to create object
  File "H5Oint.c", line 2496, in H5O_obj_create
    unable to open object
  File "H5Doh.c", line 300, in H5O__dset_create
    unable to create dataset
  File "H5Dint.c", line 1230, in H5D__create
    H5Z_has_optional_filter() failed
  File "H5Z.c", line 1060, in H5Z_ignore_filters
    not suitable for filters

End of HDF5 error back trace

Problems creating the VLArray.

======================================================================
FAIL: None (tables.tests.test_expression.FunctionsTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/antonio/projects/PyTables/build/lib.linux-x86_64-3.8/tables/tests/test_expression.py", line 912, in test00_simple
    self.assertTrue(common.areArraysEqual(r1, r2),
AssertionError: False is not true : Evaluate is returning a wrong value.

----------------------------------------------------------------------
Ran 6355 tests in 220.066s

FAILED (failures=1, errors=12, skipped=54)
...

@avalentino avalentino added this to the 3.6.2 milestone Mar 20, 2021
drewrisinger added a commit to drewrisinger/nixpkgs that referenced this issue Apr 28, 2021
This package only exists for compatibility with
``python3Packages.tables``, as far as I can tell based on usage in
nixpkgs.

``tables`` tests fail on hdf5 > v1.10.5, so we are reverting this to
the last "good" version of hdf5 that works with ``tables``.
``hdf5_1_10`` should hopefully be unpinned on the next release of
``python3Packages.tables``.
PyTables/PyTables#845
@ArchangeGabriel
Copy link

FWIW, I do have the same issues on Arch Linux, now at HDF5 1.12.1. But apparently it used to work against 1.12.0 (I did not have to disable tests in archlinux/svntogit-community@4664ec9).

@opoplawski
Copy link

Seeing the same in Fedora now that I'm updating from hdf5 1.10.6 to 1.10.7.

mennthor pushed a commit to mennthor/PyTables that referenced this issue Dec 16, 2021
hdf5 doesn't like that:
h5py/h5py#1948
HDFGroup/hdf5@16349c5

> The 'not suitable for filters' message does seem to have been added
> in 1.12.1 From the code, it looks like it will refuse to apply any
> filters to vlen strings.

This patch is based on the assumption that the hdf5 code is *correct*, and
indeed fletcher32 shouldn't be used in that vlarrays. But if hdf5 is wrong,
then the fix should be their side. It might make sense to apply this to
get the tests passing again, even if ultimately hdf5 is adjusted too.

Fixes PyTables#845.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants