I think the '5' in the HP5set_fapl_core means to allocate only 5 more
bytes each time it needs to allocate. I think that is too small and
maybe a problem since its an odd number and not a power of 2.

Although I would not necessarily expect that to have failed in the way
you are seeing either.

Try '5<<20' instead of '5'

Other than that, I don't see anything wrong with what your are doing.
Except that maybe allocating the 30 gigabyte buffer in HDF5 to read your
file into core is failing due to too large a request. I guess that is
possible. To see if that is happening, if your HDF5 installation was
compiled with tracing/debugging features turned on, then try setting
HDF5_DEBUG=all in your enviornment where you are running your
application.

Mark



On Wed, 2010-03-03 at 09:07, Thorben Kröger wrote:
> > > On Wednesday 03 March 2010 16:47:20 Mark Miller wrote:
> > > > Hello Thorben,
> 
> > > > However, did you in fact try using HDF5-1.8.4
> > > > and reading the file with the CORE vfd (H5Pset_fapl_core)
> 
> instead of opening my file like this:
> 
> hdf5geometryFile_ = H5Fopen(filename.c_str(), H5F_ACC_RDONLY, H5P_DEFAULT);
> 
> I am now doing this:
> 
> hid_t fapl = H5Pcreate(H5P_FILE_ACCESS);
> if(fapl < 0) {throw std::runtime_error("fapl < 0");}
> hid_t ret = H5Pset_fapl_core(fapl,  5/*MB?*/, 0 /*no backing store*/);
> if(ret < 0) {throw std::runtime_error("could not create fapl core");}
> hdf5geometryFile_ = H5Fopen(filename.c_str(), H5F_ACC_RDONLY, fapl);
> 
> But using the second way, it cannot open any of my datasets:
> 
> HDF5-DIAG: Error detected in HDF5 (1.8.4) thread 0:
>   #000: H5D.c line 321 in H5Dopen2(): not found
>     major: Dataset
>     minor: Object not found
>   #001: H5Gloc.c line 468 in H5G_loc_find(): can't find object
>     major: Symbol table
>     minor: Object not found
>   #002: H5Gtraverse.c line 877 in H5G_traverse(): internal path traversal 
> failed
>     major: Symbol table
>     minor: Object not found
>   #003: H5Gtraverse.c line 665 in H5G_traverse_real(): can't look up component
>     major: Symbol table
>     minor: Object not found
>   #004: H5Gobj.c line 1047 in H5G_obj_lookup(): can't locate object
>     major: Symbol table
>     minor: Object not found
>   #005: H5Gstab.c line 860 in H5G_stab_lookup(): not found
>     major: Symbol table
>     minor: Object not found
>   #006: H5B.c line 360 in H5B_find(): can't lookup key in leaf node
>     major: B-Tree node
>     minor: Object not found
>   #007: H5Gnode.c line 522 in H5G_node_found(): unable to protect symbol 
> table 
> node
>     major: Symbol table
>     minor: Unable to load metadata into cache
>   #008: H5AC.c line 1831 in H5AC_protect(): H5C_protect() failed.
>     major: Object cache
>     minor: Unable to protect metadata
>   #009: H5C.c line 6160 in H5C_protect(): can't load entry
>     major: Object cache
>     minor: Unable to load metadata into cache
>   #010: H5C.c line 10990 in H5C_load_entry(): unable to load entry
>     major: Object cache
>     minor: Unable to load metadata into cache
>   #011: H5Gcache.c line 176 in H5G_node_load(): bad symbol table node 
> signature
>     major: Symbol table
>     minor: Unable to load metadata into cache
> 
> I'm at a loss now, what am I doing wrong here?
> 
> Cheers,
> Thorben
> 
> _______________________________________________
> Hdf-forum is for HDF software users discussion.
> [email protected]
> http://*mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org
-- 
Mark C. Miller, Lawrence Livermore National Laboratory
================!!LLNL BUSINESS ONLY!!================
[email protected]      urgent: [email protected]
T:8-6 (925)-423-5901     M/W/Th:7-12,2-7 (530)-753-851


_______________________________________________
Hdf-forum is for HDF software users discussion.
[email protected]
http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org

Reply via email to