[Numpy-discussion] Strange problem with h5py and numpy
Johannes Korn
korn at freisingnet.de
Mon Dec 27 12:58:24 EST 2010
Hi,
I have a strange problem with h5py or with numpy.
I try to read a bunch of hdf files in a loop. The problem is that I get
an error at the second file because the file handle is of type <Closed
HDF5 file>
It seems the file is opened and instantaneous closed again. Meanwhile I
found the root of the evil: First I read the contents of a dataset to
the numpy array tmp. In the next step I paste this array into a bigger
one "alb_c1_tmp". The shape of tmp is (651, 1701). Everything works well
if I omit the pasting.
alb_c1_tmp = zeros([3712,3712])
c1_eu = File(filename_ch1_eu,mode='r')
print c1_eu
tmp = c1_eu['AL-SP-BH'][:]
#Source of the evil
alb_c1_tmp[ 3012:3663, 462:2163 ] = tmp
c1_eu.close()
The code as above crashes always when the second file is read. However
originally I had the boundaries of alb_c1_tmp set dynamically from
attributes of the hdf files (they are identical for all files), this
code crashed after a random number of files.
Here´s the line that caused the randomly delayed crashes:
alb_c1_tmp[ 1855 + c1_eu.attrs['LOFF'] - c1_eu.attrs['NL'] : 1855 +
c1_eu.attrs['LOFF'] , 1855 + c1_eu.attrs['COFF'] - c1_eu.attrs['NC'] :
1855 + c1_eu.attrs['COFF'] ] = tmp
Is it a bug or did I something wrong?
Python 2.6.5 (r265:79063, Oct 28 2010, 20:56:56)
Numpy-Version is probably 1.5.0
h5py 1.3.0
Happens under 32bit as well as under 64bit SuSE-release 11.3
Kind regards!
Johannes
More information about the NumPy-Discussion
mailing list