SourceForge has been redesigned. Learn more.
Close

#31 break raises exception when using in-kernel search

closed-fixed
None
5
2005-07-12
2005-07-08
No

The test program below fails, but only when the "break"
statement is included in the inner-most for loop.

import tables
h5file = tables.openFile('DATA20050706_182901.h5',mode='r')
data3d = h5file.root.data3d_best
for frame_no in [184011, 184012]:
for row in data3d.where( data3d.cols.frame ==
frame_no):
print row
break

(Yes, I realize the "break" is totally redundant here,
but this is a simplified program that elicits the
error, which does seem to be a bug.)

The error is:

Traceback (most recent call last):
File "pttest.py", line 5, in ?
for row in data3d.where( data3d.cols.frame ==
frame_no):
File
"/usr/lib/python2.3/site-packages/tables/Table.py",
line 624, in where
return self._whereIndexed(condition, start, stop, step)
File
"/usr/lib/python2.3/site-packages/tables/Table.py",
line 681, in _whereIndexed
ncoords = condition.index.getLookupRange(condition)
File
"/usr/lib/python2.3/site-packages/tables/Index.py",
line 672, in getLookupRange
raise ValueError, \ ValueError: Combination of operators not supported. Use
val1 <{=} col <{=} val2

I've compressed and uploaded the data file used above
to http://astraw.com/DATA20050706_182901.h5.bz2
(caution: compressed 10MB, uncompressed 80MB). I
believe I've seen this error with other files, though,
so I don't think it's specific to this one. On the
other hand, this error doesn't seem to always happen
with every file.

Discussion

  • Francesc Altet

    Francesc Altet - 2005-07-12

    Logged In: YES
    user_id=249033

    This has been fixed in our SVN repository. The cure will
    appear in forthcoming 1.1 release as well.

    Thanks!

     
  • Francesc Altet

    Francesc Altet - 2005-07-12
    • assigned_to: nobody --> falted
    • status: open --> closed-fixed