On Thu, 2011-03-03 at 20:07 +0100, Francesc Alted wrote:
> A Thursday 03 March 2011 16:33:37 Felipe Barriga Richards escrigué:
> > Hi,
> > 
> > I've been trying to open an H5 file from multiple processes as
> > read-only and each process reads a different table. If I do this I
> > get errors so I suspect that pytables doesn't support this ?
> > 
> > I think that this shouldn't be a problem as I'm opening the file as
> > read-only so it won't corrupt the file.
> > 
> > Maybe there is a problem because of the cache that makes pytables of
> > the file ?
> > 
> > Any suggestions ?
> 
> I don't see why this should not work.  Could you send a self-contained 
> example reproducing the problem?
> 

If I open the same file (or 2 files made with a symbolic link to the
same file) I got this error when I try to read them:

-------------
HDF5-DIAG: Error detected in HDF5 (1.8.4) thread 140643212515072:
  #000: ../../../src/H5Dio.c line 174 in H5Dread(): can't read data
    major: Dataset
    minor: Read failed
  #001: ../../../src/H5Dio.c line 404 in H5D_read(): can't read data
    major: Dataset
    minor: Read failed
  #002: ../../../src/H5Dchunk.c line 1715 in H5D_chunk_read(): error
looking up chunk address
    major: Dataset
    minor: Can't get value
  #003: ../../../src/H5Dchunk.c line 2284 in H5D_chunk_get_info(): can't
query chunk address
    major: Dataset
    minor: Can't get value
  #004: ../../../src/H5Dbtree.c line 1010 in H5D_btree_idx_get_addr():
can't get chunk info
    major: Dataset
    minor: Can't get value
  #005: ../../../src/H5B.c line 332 in H5B_find(): unable to load B-tree
node
    major: B-Tree node
    minor: Unable to load metadata into cache
  #006: ../../../src/H5AC.c line 1831 in H5AC_protect(): H5C_protect()
failed.
    major: Object cache
    minor: Unable to protect metadata
  #007: ../../../src/H5C.c line 6160 in H5C_protect(): can't load entry
    major: Object cache
    minor: Unable to load metadata into cache
  #008: ../../../src/H5C.c line 10990 in H5C_load_entry(): unable to
load entry
    major: Object cache
    minor: Unable to load metadata into cache
  #009: ../../../src/H5Bcache.c line 207 in H5B_load(): wrong B-tree
signature
    major: B-Tree node
    minor: Unable to load metadata into cache
Process LoadDataThread-5:
Traceback (most recent call last):
  File "/usr/lib/python2.6/multiprocessing/process.py", line 232, in
_bootstrap
    self.run()
  File "./hdf5_server-multi.py", line 49, in run
    for row in results:
  File "tableExtension.pyx", line 843, in
tables.tableExtension.Row.__next__
  File "tableExtension.pyx", line 900, in
tables.tableExtension.Row.__next__inKernel
  File "tableExtension.pyx", line 565, in
tables.tableExtension.Table._read_records
HDF5ExtError: Problems reading records.
-------------
The Line 'File "./hdf5_server-multi.py", line 49, in run' is:

results = table.where("(timestamp > 10)")
    for row in results:

And I open the file with:
h5File = tables.openFile("file1.h5", mode = "r")


When I try the same but using copies of the file (not symbolic links) it
work fine.


Thanks,
-- 
Felipe Barriga Richards
Algometrics SpA



------------------------------------------------------------------------------
What You Don't Know About Data Connectivity CAN Hurt You
This paper provides an overview of data connectivity, details
its effect on application quality, and explores various alternative
solutions. http://p.sf.net/sfu/progress-d2d
_______________________________________________
Pytables-users mailing list
Pytables-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pytables-users

Reply via email to