Well, I've gotta say that you guys have been doing a great job finding what seem to be some very subtle bugs! In recognition of that - here is yet another that I've found! I've only tested the following so far on OS X - there is some similarity with my previous problem getting Unsupported types, so I wonder if they are related. I've also only checked pytables 1.3. I can load a certain hdf5 file just fine, and can use trMap translation for some of the node names. But, if I include certain mappings, I get what sound like very serious errors - including HDF5 sometimes (1.6.5) claiming that it's found an internal error in itself (though seemingly only for certain datasets). I include one error log below. The problem seems to be contingent upon mapping the name of a node, and then mapping a name for something that is a child of a renamed node. A simple example is if you have a file with a nested group structure including '/minc-2.0/image'. # Works fine h = tables.openFile('pyramid2.mnc', trMap={'minc20': 'minc-2.0'}) # Claims that the renamed image dir is unsupported h = tables.openFile('pyramid2.mnc', trMap={'minc20': 'minc-2.0', 'im': 'image'}) This is not a huge problem. I can get the functionality I need using getNode. But, I'm using a published standard (minc 2.0) which requires a number of naming conventions which are not valid python tokens (the 'im': 'image' example above is not, obviously, an example of this - but I have other nodes with names like '0' and 'image-min'). I expect others may need to deal with this kind of issue at some point. I think this should be straightforward to replicate on any file, but if you want an example, let me know and I'll send it. I'll also do some poking around to see if I get this on other systems / versions at some point if you don't fix the problem first. Dav Clark 917-544-8408 Example scary error messages: In [11]: h = tables.openFile('pyramid2.mnc', trMap={'minc20': 'minc-2.0', 'zero': '0', 'image_min': 'image-min', 'image_max': 'image-max'}) In [12]: h HDF5-DIAG: Error detected in HDF5 library version: 1.6.5 thread 0. Back trace follows. #000: H5D.c line 1146 in H5Dopen(): not found major(15): Dataset interface minor(48): Object not found #001: H5G.c line 2296 in H5G_find(): object not found major(10): Symbol table layer minor(48): Object not found #002: H5G.c line 1495 in H5G_namei(): component not found major(10): Symbol table layer minor(48): Object not found #003: H5Gstab.c line 164 in H5G_stab_find(): not found major(10): Symbol table layer minor(48): Object not found HDF5-DIAG: Error detected in HDF5 library version: 1.6.5 thread 0. Back trace follows. #000: H5T.c line 1538 in H5Tclose(): not a data type major(01): Function arguments minor(03): Inappropriate type HDF5-DIAG: Error detected in HDF5 library version: 1.6.5 thread 0. Back trace follows. #000: H5D.c line 1207 in H5Dclose(): not a dataset major(01): Function arguments minor(03): Inappropriate type tables/Group.py:292: UserWarning: leaf ``/minc20/image/zero/image_max`` is of an unsupported type; it will become an ``UnImplemented`` node tables/Group.py:396: UserWarning: problems loading leaf ``/minc20/image/zero/image_max``:: tuple index out of range The leaf will become an ``UnImplemented`` node. |
- [Pytables-users] Strange differences in behavior via trMap Dav Clark