slaclab / lc2-hdf5-110

Investigate hdf5 1.10 features like SWMR and virtual dataset for LCLS II
Apache License 2.0
0 stars 2 forks source link

VDS doens't support point selection - useful for offline/static file based views #8

Open davidslac opened 7 years ago

davidslac commented 7 years ago

In principle, we could make a very nice VDS view to align the data after it is all written, this would hide any tables we might be creating during streaming/live mode help users align.

I realized the correct way to select the src elements is with what is called a point select in Hdf5. I developed a program to test this, see how it performs, but I got an error message, the point select is not currently supported in VDS - this means you really have to use hyperslabs, and organize in blocks, etc.

This is in the

https://github.com/slaclab/lc2-hdf5-110/blob/master/questions/vds_random/vds_random.cpp

(lc2) $ ./vds_random 100
/reg/d/ana01/temp/davidsch/lc2/vds_random_src.h5
created src file: /reg/d/ana01/temp/davidsch/lc2/vds_random_src.h5 in 0 sec and 68 milli
HDF5-DIAG: Error detected in HDF5 (1.10.0-patch1) thread 0:
  #000: H5Pdcpl.c line 2163 in H5Pset_virtual(): invalid mapping selections
    major: Property lists
    minor: Bad value
  #001: H5Dvirtual.c line 185 in H5D_virtual_check_mapping_pre(): point selections not currently supported with virtual datasets
    major: Dataset
    minor: Feature is unsupported
HDF5-DIAG: Error detected in HDF5 (1.10.0-patch1) thread 0:
  #000: H5F.c line 749 in H5Fclose(): not a file ID
    major: Invalid arguments to routine
    minor: Inappropriate type
HDF5-DIAG: Error detected in HDF5 (1.10.0-patch1) thread 0:
  #000: H5P.c line 1515 in H5Pclose(): not a property list
    major: Invalid arguments to routine
    minor: Inappropriate type
created view file: /reg/d/ana01/temp/davidsch/lc2/vds_random_view.h5 in 0 sec and 32 milli