h5repack error with HDF1.8.20

Not sure if this is a bug or not, or I’m misunderstanding. The error message below isn’t very descriptive of helpful:

I’m trying to repack to files:
-rwxrwxrwx 1 bruce bruce 681574400 May 1 13:11 dbdbv7_level0c_0.h5
-rwxrwxrwx 1 bruce bruce 65724755 Aug 22 2016 dbdbv7_level0c_1.h5

The checksums are good, and they are in the same directory and writable (just in case)

So, when I run the command:

$ h5repack -v -f NONE dbdbv7_level0c_%d.h5 dbdbv7_level0c_full.h5

I get this…I don’t even know where to start…

Objects to modify layout are…
Objects to apply filter are…
Uncompress all
Making file <dbdbv7_level0c_full.h5>…
HDF5-DIAG: Error detected in HDF5 (1.8.17) thread 139890305120000:
#000: H5O.c line 657 in H5Oget_info_by_name(): object not found
major: Symbol table
minor: Object not found
#001: H5Gloc.c line 747 in H5G_loc_info(): can’t find object
major: Symbol table
minor: Object not found
#002: H5Gtraverse.c line 861 in H5G_traverse(): internal path traversal failed
major: Symbol table
minor: Object not found
#003: H5Gtraverse.c line 641 in H5G_traverse_real(): traversal operator failed
major: Symbol table
minor: Callback failed
#004: H5Gloc.c line 702 in H5G_loc_info_cb(): can’t get object info
major: Symbol table
minor: Can’t get value
#005: H5O.c line 2868 in H5O_get_info(): can’t retrieve object’s btree & heap info
major: Object header
minor: Can’t get value
#006: H5Goh.c line 403 in H5O_group_bh_info(): can’t retrieve symbol table size info
major: Symbol table
minor: Can’t get value
#007: H5Gstab.c line 681 in H5G__stab_bh_size(): iteration operator failed
major: B-Tree node
minor: Unable to initialize object
#008: H5B.c line 2005 in H5B_get_info(): B-tree iteration failed
major: B-Tree node
minor: Iteration failed
#009: H5B.c line 1955 in H5B_get_info_helper(): unable to list B-tree node
major: B-Tree node
minor: Unable to list node
#010: H5B.c line 1912 in H5B_get_info_helper(): unable to load B-tree node
major: B-Tree node
minor: Unable to protect metadata
#011: H5AC.c line 1262 in H5AC_protect(): H5C_protect() failed.
major: Object cache
minor: Unable to protect metadata
#012: H5C.c line 3574 in H5C_protect(): can’t load entry
major: Object cache
minor: Unable to load metadata into cache
#013: H5C.c line 7954 in H5C_load_entry(): unable to load entry
major: Object cache
minor: Unable to load metadata into cache
#014: H5Bcache.c line 143 in H5B__load(): wrong B-tree signature
major: B-Tree node
minor: Unable to load metadata into cache
HDF5-DIAG: Error detected in HDF5 (1.8.17) thread 139890305120000:
#000: H5L.c line 1379 in H5Lvisit_by_name(): link visitation failed
major: Symbol table
minor: Iteration failed
#001: H5Gint.c line 1175 in H5G_visit(): can’t visit links
major: Symbol table
minor: Iteration failed
#002: H5Gobj.c line 708 in H5G__obj_iterate(): can’t iterate over symbol table
major: Symbol table
minor: Iteration failed
#003: H5Gstab.c line 566 in H5G__stab_iterate(): iteration operator failed
major: Symbol table
minor: Can’t move to next iterator location
#004: H5B.c line 1221 in H5B_iterate(): B-tree iteration failed
major: B-Tree node
minor: Iteration failed
#005: H5B.c line 1177 in H5B_iterate_helper(): B-tree iteration failed
major: B-Tree node
minor: Iteration failed
#006: H5Gnode.c line 1039 in H5G__node_iterate(): iteration operator failed
major: Symbol table
minor: Can’t move to next iterator location
#007: H5Gobj.c line 708 in H5G__obj_iterate(): can’t iterate over symbol table
major: Symbol table
minor: Iteration failed
#008: H5Gstab.c line 566 in H5G__stab_iterate(): iteration operator failed
major: Symbol table
minor: Can’t move to next iterator location
#009: H5B.c line 1221 in H5B_iterate(): B-tree iteration failed
major: B-Tree node
minor: Iteration failed
#010: H5B.c line 1177 in H5B_iterate_helper(): B-tree iteration failed
major: B-Tree node
minor: Iteration failed
#011: H5Gnode.c line 1039 in H5G__node_iterate(): iteration operator failed
major: Symbol table
minor: Can’t move to next iterator location
#012: H5O.c line 657 in H5Oget_info_by_name(): object not found
major: Symbol table
minor: Object not found
#013: H5Gloc.c line 747 in H5G_loc_info(): can’t find object
major: Symbol table
minor: Object not found
#014: H5Gtraverse.c line 861 in H5G_traverse(): internal path traversal failed
major: Symbol table
minor: Object not found
#015: H5Gtraverse.c line 641 in H5G_traverse_real(): traversal operator failed
major: Symbol table
minor: Callback failed
#016: H5Gloc.c line 702 in H5G_loc_info_cb(): can’t get object info
major: Symbol table
minor: Can’t get value
#017: H5O.c line 2868 in H5O_get_info(): can’t retrieve object’s btree & heap info
major: Object header
minor: Can’t get value
#018: H5Goh.c line 403 in H5O_group_bh_info(): can’t retrieve symbol table size info
major: Symbol table
minor: Can’t get value
#019: H5Gstab.c line 681 in H5G__stab_bh_size(): iteration operator failed
major: B-Tree node
minor: Unable to initialize object
#020: H5B.c line 2005 in H5B_get_info(): B-tree iteration failed
major: B-Tree node
minor: Iteration failed
#021: H5B.c line 1955 in H5B_get_info_helper(): unable to list B-tree node
major: B-Tree node
minor: Unable to list node
#022: H5B.c line 1912 in H5B_get_info_helper(): unable to load B-tree node
major: B-Tree node
minor: Unable to protect metadata
#023: H5AC.c line 1262 in H5AC_protect(): H5C_protect() failed.
major: Object cache
minor: Unable to protect metadata
#024: H5C.c line 3574 in H5C_protect(): can’t load entry
major: Object cache
minor: Unable to load metadata into cache
#025: H5C.c line 7954 in H5C_load_entry(): unable to load entry
major: Object cache
minor: Unable to load metadata into cache
#026: H5Bcache.c line 143 in H5B__load(): wrong B-tree signature
major: B-Tree node
minor: Unable to load metadata into cache

Bruce,

At the bottom of the error stack I see “wrong B-tree signature”, and the indicated library version is 1.8.17. I think the B-tree signature includes an object version number, so this could be an object version issue.

Is it possible that one of your input files was updated by some program or utility linked with HDF5 version 1.10.x? This might have created version “V10” objects inside the file. I think that would fit the symptom. If this is the case, then your easy way out is to use a version of h5repack that is linked with 1.10.x, not 1.8.x.

There is a complicated way to display internal object version numbers with h5debug, but I’m not familiar enough to show how to do it.

A simple test would be to try h5dump -H with two versions of h5dump, and see if the 1.8.x version gets a similar failure. HTH.

–Dave

Bruce,

Sorry, I gave you bad information about change in object versions. From available documentation, it appears that there were no B-tree version changes between HDF5 versions 1.8 and 1.10. So that would not simply explain "wrong B-tree signature”.

Just in case there really is some version issue involved, it might still be useful to run different h5dump -H versions on the input files, if you have both 1.8 and 1.10 easily available. Otherwise try h5dump and h5debug to look for problems part way into each input file.

Also it is not clear to me whether your error message stack is coming from one of the input files or the output file, so these input file diagnostics would help narrow this down.

–Dave

Hi Bruce,

It looks like you have a family of files that you wish to join together. Is that right? We have the h5repart tool that you can use to do this. See:
https://portal.hdfgroup.org/display/HDF5/h5repart

-Barbara

Yes, that is correct and we are getting similar error with this. B-tree errors:

HDF5-DIAG: Error detected in HDF5 (1.8.16) thread 139939035838208:

#000: …/…/…/src/H5O.c line 657 in H5Oget_info_by_name(): object not found

major: Symbol table

minor: Object not found

#001: …/…/…/src/H5Gloc.c line 747 in H5G_loc_info(): can’t find object

major: Symbol table

minor: Object not found

#002: …/…/…/src/H5Gtraverse.c line 861 in H5G_traverse(): internal path traversal failed

major: Symbol table

minor: Object not found

#003: …/…/…/src/H5Gtraverse.c line 641 in H5G_traverse_real(): traversal operator failed

major: Symbol table

minor: Callback failed

#004: …/…/…/src/H5Gloc.c line 702 in H5G_loc_info_cb(): can’t get object info

major: Symbol table

minor: Can’t get value

#005: …/…/…/src/H5O.c line 2868 in H5O_get_info(): can’t retrieve object’s btree & heap info

major: Object header

minor: Can’t get value

#006: …/…/…/src/H5Goh.c line 403 in H5O_group_bh_info(): can’t retrieve symbol table size info

major: Symbol table

minor: Can’t get value

#007: …/…/…/src/H5Gstab.c line 681 in H5G__stab_bh_size(): iteration operator failed

major: B-Tree node

minor: Unable to initialize object

#008: …/…/…/src/H5B.c line 2005 in H5B_get_info(): B-tree iteration failed

major: B-Tree node

minor: Iteration failed

#009: …/…/…/src/H5B.c line 1955 in H5B_get_info_helper(): unable to list B-tree node

major: B-Tree node

minor: Unable to list node

#010: …/…/…/src/H5B.c line 1912 in H5B_get_info_helper(): unable to load B-tree node

major: B-Tree node

minor: Unable to protect metadata

#011: …/…/…/src/H5AC.c line 1262 in H5AC_protect(): H5C_protect() failed.

major: Object cache

minor: Unable to protect metadata

#012: …/…/…/src/H5C.c line 3574 in H5C_protect(): can’t load entry

major: Object cache

minor: Unable to load metadata into cache

#013: …/…/…/src/H5C.c line 7954 in H5C_load_entry(): unable to load entry

major: Object cache

minor: Unable to load metadata into cache

#014: …/…/…/src/H5Bcache.c line 143 in H5B__load(): wrong B-tree signature

major: B-Tree node

minor: Unable to load metadata into cache

HDF5-DIAG: Error detected in HDF5 (1.8.16) thread 139939035838208:

#000: …/…/…/src/H5L.c line 1379 in H5Lvisit_by_name(): link visitation failed

major: Symbol table

minor: Iteration failed

#001: …/…/…/src/H5Gint.c line 1175 in H5G_visit(): can’t visit links

major: Symbol table

minor: Iteration failed

#002: …/…/…/src/H5Gobj.c line 708 in H5G__obj_iterate(): can’t iterate over symbol table

major: Symbol table

minor: Iteration failed

#003: …/…/…/src/H5Gstab.c line 566 in H5G__stab_iterate(): iteration operator failed

major: Symbol table

minor: Can’t move to next iterator location

#004: …/…/…/src/H5B.c line 1221 in H5B_iterate(): B-tree iteration failed

major: B-Tree node

minor: Iteration failed

#005: …/…/…/src/H5B.c line 1177 in H5B_iterate_helper(): B-tree iteration failed

major: B-Tree node

minor: Iteration failed

#006: …/…/…/src/H5Gnode.c line 1039 in H5G__node_iterate(): iteration operator failed

major: Symbol table

minor: Can’t move to next iterator location

#007: …/…/…/src/H5Gobj.c line 708 in H5G__obj_iterate(): can’t iterate over symbol table

major: Symbol table

minor: Iteration failed

#008: …/…/…/src/H5Gstab.c line 566 in H5G__stab_iterate(): iteration operator failed

major: Symbol table

minor: Can’t move to next iterator location

#009: …/…/…/src/H5B.c line 1221 in H5B_iterate(): B-tree iteration failed

major: B-Tree node

minor: Iteration failed

#010: …/…/…/src/H5B.c line 1177 in H5B_iterate_helper(): B-tree iteration failed

major: B-Tree node

minor: Iteration failed

#011: …/…/…/src/H5Gnode.c line 1039 in H5G__node_iterate(): iteration operator failed

major: Symbol table

minor: Can’t move to next iterator location

#012: …/…/…/src/H5O.c line 657 in H5Oget_info_by_name(): object not found

major: Symbol table

minor: Object not found

#013: …/…/…/src/H5Gloc.c line 747 in H5G_loc_info(): can’t find object

major: Symbol table

minor: Object not found

#014: …/…/…/src/H5Gtraverse.c line 861 in H5G_traverse(): internal path traversal failed

major: Symbol table

minor: Object not found

#015: …/…/…/src/H5Gtraverse.c line 641 in H5G_traverse_real(): traversal operator failed

major: Symbol table

minor: Callback failed

#016: …/…/…/src/H5Gloc.c line 702 in H5G_loc_info_cb(): can’t get object info

major: Symbol table

minor: Can’t get value

#017: …/…/…/src/H5O.c line 2868 in H5O_get_info(): can’t retrieve object’s btree & heap info

major: Object header

minor: Can’t get value

#018: …/…/…/src/H5Goh.c line 403 in H5O_group_bh_info(): can’t retrieve symbol table size info

major: Symbol table

minor: Can’t get value

#019: …/…/…/src/H5Gstab.c line 681 in H5G__stab_bh_size(): iteration operator failed

major: B-Tree node

minor: Unable to initialize object

#020: …/…/…/src/H5B.c line 2005 in H5B_get_info(): B-tree iteration failed

major: B-Tree node

minor: Iteration failed

#021: …/…/…/src/H5B.c line 1955 in H5B_get_info_helper(): unable to list B-tree node

major: B-Tree node

minor: Unable to list node

#022: …/…/…/src/H5B.c line 1912 in H5B_get_info_helper(): unable to load B-tree node

major: B-Tree node

minor: Unable to protect metadata

#023: …/…/…/src/H5AC.c line 1262 in H5AC_protect(): H5C_protect() failed.

major: Object cache

minor: Unable to protect metadata

#024: …/…/…/src/H5C.c line 3574 in H5C_protect(): can’t load entry

major: Object cache

minor: Unable to load metadata into cache

#025: …/…/…/src/H5C.c line 7954 in H5C_load_entry(): unable to load entry

major: Object cache

minor: Unable to load metadata into cache

#026: …/…/…/src/H5Bcache.c line 143 in H5B__load(): wrong B-tree signature

major: B-Tree node

minor: Unable to load metadata into cache