Commit Graph

1545 Commits

Author SHA1 Message Date
Allen Byrne
96cb94a95c Add missing filenames 2019-12-09 14:14:39 -06:00
Allen Byrne
349656ecba Add new test reference 2019-12-08 13:58:35 -06:00
David Young
f1b39ad80e Apparently, + has no special meaning, and neither does \+, in so-called
"obsolete" / POSIX "basic" regular expressions.  Also, not every version of
`sed` out there supports the `-E` option.  So delete the -E flag and use
the regex `[^/][^/]*` instead of `[^/]+`.

Add config/netbsd to the MANIFEST.
2019-11-12 10:43:26 -06:00
Jerome Soumagne
ae490016b9 Add new H5R API that abstracts object, region and attribute reference types
Also support references to external files

Add new H5T_REF type and type conversion routines

Support conversion from H5T_REF_OBJ/DSET_REG to H5T_REF

Add H5Treclaim() API to reclaim memory of vlen/reference types

Deprecate H5Dvlen_reclaim()

Fix H5T_vlen_reclaim() and H5T_reclaim() to use private callback

Add H5T_ref_reclaim()

Move previous H5R APIs to H5Rdeprec.c

Clean up H5Ocopy

Separate H5O_copy_expand_ref() to H5Ocopy_ref()

Add support for copying new reference types

Clean up deprecated routines to go through VOL and same code path

Fix return codes in existing trefer.c test

Rename trefer.c to trefer_deprec.c

trefer.c is for new references

Add performance test for trefer

Add additional obj_copy_ref test

Make use of tokens and blobs to store references

Skip blob encoding for object references

Start adding new reference examples
2019-10-08 14:30:24 -05:00
Quincey Koziol
eaa65c862b Add 'blob' callbacks to VOL, along with a native implementation to store them
in the global heap, and changed the VL datatype conversion code to use blobs.

Move encode/decode of sequence lengths into VL datatype callbacks, from native
VOL blob routines.
2019-10-08 14:30:23 -05:00
Allen Byrne
09e6dcbfbb Add new toolchain file 2019-10-01 10:09:16 -05:00
Jacob Smith
35a9e9c50f Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~jake.smith/hdf5 into bugfix/repack_external_storage 2019-09-23 17:23:02 -05:00
Jacob Smith
aa797af31b Refactor h5repackgentest to have more modular internals, for easier
addition of new tests.
Update manifest and test script for new hdf5 external-storage .h5 files.
2019-09-23 16:21:37 -05:00
Binh-Minh Ribler
a8af828bbf Merge pull request #1908 in HDFFV/hdf5 from ~BMRIBLER/hdf5-bmr:develop to develop
- Added new chunk query functions: H5Dget_num_chunks(), H5Dget_chunk_info(), and H5Dget_chunk_info_by_coord()
- Fixed iterator issue in H5EA_iterate(), H5FA_iterate(), and H5D__none_idx_iterate()

* commit '96dab622e3bbe75d85b0cef3ca2bd5288cf4ac32':
  Fixed error code and error messages Tested on Jelly (very minor)
  Changed H5VL_NATIVE_DATASET_GET_CHUNK_INFO_BY_COOR to H5VL_NATIVE_DATASET_GET_CHUNK_INFO_BY_COORD per a review comment.
  Updated comments
  Updated based on reviews and refactored test code
  Code cleanup and refactor
  Re-ordered items w.r.t. date.
  Fixed typo
  Added notes about HDFFV-10677 and HDFFV-10661
  HDFFV-10677 and HDFFV-10661
2019-09-03 11:08:42 -05:00
Allen Byrne
fa540a3af8 Add 32-bit cross-compile toolchain 2019-08-29 10:36:12 -05:00
Binh-Minh Ribler
e06bf9d263 HDFFV-10677 and HDFFV-10661
Description:
    - Added functions to query chunk information:
        H5Dget_num_chunks(dset_id, fspace_id, *nchunks)
            Gets the number of written chunks that intersect with the given
            dataspace.  However, in this version, the intersection is not
            yet completed.  Thus, the number of all written chunks will be
            returned.
        H5Dget_chunk_info_by_coord(dset_id, *offset, *filter_mask, *addr, *size)
            Given a chunk's logical coordinates, returns the chunk's filter,
            address, and size.
        H5Dget_chunk_info(dset_id, fspace_id, index, *offset, *filter_mask, *addr, *size)
            Given a chunk's index, returns the chunk's logical coordinates, filter,
            address, and size.  The chunk belongs to a set of chunks that have
            nonempty intersection with the specified dataspace.  However, in
            this version, the intersection is not yet completed, and the index
            is of all the written chunks.
        These functions comply with VOL.

    - Fixed some oversights found in the library for the tests in chunk_info.c
      to work correctly.  The returned value from a callback function was not
      checked in H5EA_iterate(), H5FA_iterate(), and H5D__none_idx_iterate().
      This oversight caused a callback function to continue iterating even though
      it's supposed to stop.
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1011test)
2019-08-28 10:08:12 -05:00
Dana Robinson
bd8da502cf Some refactoring prior to implementing new H5P MPI functions.
* Macro cleanup and obvious warning fixes in parallel code.
* Moved H5FD comm and info dup/free wrapper code to a new H5mpi.c file
  and separated it to deal with each MPI type separately.
2019-08-14 16:22:06 -07:00
Dana Robinson
5b6bd7c922 Added the map (H5M) API 2019-08-13 01:36:42 -07:00
Allen Byrne
c60ceb8c08 Merge reconciliation and VFD test fixes 2019-08-04 15:19:51 -05:00
Dana Robinson
4227b8948d Reverts the removal of config/conclude_fc.am while keeping
the changes to config/gnu-fflags.
2019-07-31 22:51:53 -05:00
Dana Robinson
99a6a5a16e Fixed the MANIFEST 2019-07-30 07:29:37 -07:00
Dana Robinson
d169391529 Merge pull request #1808 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:gnu-flags-work to develop
* commit '7d291d059da6287f769951c4854c566da0b93ce8':
  Parallel Fortran tests now use the MPI module instead of including mpif.h.
  First stab at gfortran versions. Tested on gfortran 7-9 so far.
  Moved the -std=f2008 option to gfortran 9 for now.
  Updated gfortran options. * Removed conclude_fc.am, which was causing verbose builds. Need to   investigate more, though. * Added gfortran 9 warnings and flags. This will need to be separated   into other version blocks based on when the options first appeared. * The standard is now explicitly set at 2008.
2019-07-29 16:13:24 -05:00
Larry Knox
8008294578 Squashed commit of the following:
Merge changes from update_merged_S3_HDFS branch into develop.

commit d5034315aea88629929ac0c9c59ebfafd5f21a31
Merge: 9c48823 d3fdcd8
Author: Larry Knox <lrknox@hdfgroup.org>
Date:   Thu Jul 25 08:24:53 2019 -0500

    Merge branch 'develop' into update_merged_S3_HDFS
2019-07-25 11:47:12 -05:00
Jacob Smith
c7f8cb011d Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~jake.smith/hdf5 into bugfix/repack_external_storage 2019-07-22 17:09:54 -05:00
Allen Byrne
7bb020fcec HDFFV-10845 add support for mingw toolchain 2019-07-17 11:56:48 -05:00
Dana Robinson
8bd2c81cd5 Updated gfortran options.
* Removed conclude_fc.am, which was causing verbose builds. Need to
  investigate more, though.
* Added gfortran 9 warnings and flags. This will need to be separated
  into other version blocks based on when the options first appeared.
* The standard is now explicitly set at 2008.
2019-07-17 01:23:44 -07:00
Quincey Koziol
3b594992d6 Add support for GCC9, update warnhist script, and clean up warnings. 2019-07-02 23:43:45 -05:00
Allen Byrne
a03d35dc22 HDFFV-9407 Add test 2019-06-24 07:28:39 -05:00
Jacob Smith
9103fd5953 Undo some formatting modifications.
Update MANIFEST.
2019-06-21 12:05:54 -05:00
Jacob Smith
27d5742b39 Merge branch 'develop' into bugfix/repack_external_storage 2019-06-20 12:37:27 -05:00
Allen Byrne
e7f16c6f2c HDFFV-10805 Add option to only build shared targets
HDFFV-10805 Add ONLY_SHARED_LIBS option and prefer shared over static
HDFFV-10803 Update FindSZIP.cmake find module
Remove unneeded modules and update java modules
2019-06-18 07:46:25 -05:00
Dana Robinson
72dd01b76b Added a warning summary script for gcc to bin 2019-06-17 13:35:08 -07:00
Vailin Choi
f7c2a75404 Merge pull request #1729 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10800-h5ocopy-failure to develop
* commit 'dfdc27b04b2e8bcd1985ba90ce6553d8b3805fda':
  Fix release notes based on feedback from pull request.
  Fix for HDFFV-10800 H5Ocopy failure: The value for the H5F_LIBVER_V18 index in H5O_fill_ver_bounds[], the format version bounds array for fill value message, should be version 3 not 2.
2019-06-17 10:28:58 -05:00
Larry Knox
68fb1c9f37 Merge pull request #1738 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '6c3f90ae222a8d4e8d8edf172a6745028209b75c':
  Update MANIFEST for move of h5cc.in and h5redeploy.in to bin directory.
2019-06-15 14:30:03 -05:00
Larry Knox
6c3f90ae22 Update MANIFEST for move of h5cc.in and h5redeploy.in to bin directory. 2019-06-15 12:34:07 -05:00
Dana Robinson
bb9370d777 Merge branch 'develop' into vol_dev_headers
Also moved the wrapper functions from the H5VLconnector.h to
H5VLconnector_passthru.h
2019-06-14 12:23:06 -07:00
Scot Breitenfeld
9a82fa66d4 Merge pull request #1708 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:H10621 to develop
* commit '0742c15fca95965ed4eb87c6d54f41bb07bd4526':
  makefile clean-up
  move the vol_info to an optional parameter
  added H5Pset_vol
  added vol connector
  added test for vol_connector
  removed H5VL constants
  removed VOLL NULL connector and replaced it with native VOL
  added connector_name test
  added missing files
  add tests
  added more tests
  added missing files
  Implemented VOL APIs and C constants, no tests
  Implemented VOL APIs and C constants, no tests
  initial API impl.
2019-06-12 16:06:21 -05:00
Vailin Choi
8d72e5e3e0 Fix for HDFFV-10800 H5Ocopy failure:
The value for the H5F_LIBVER_V18 index in H5O_fill_ver_bounds[], the format
version bounds array for fill value message, should be version 3 not 2.
2019-06-12 12:55:12 -05:00
Larry Knox
5385f032dd Modified Makefile.ams for h5repack, h5watch and gif2h5 to allow
disabling tests.
Moved h5cc.in from tools/src/misc to src directory to always create h5cc
whether or not tools are enabled.
Added configuration status of tools and tests to libhdf5.settings.
2019-06-12 10:21:41 -05:00
Jacob Smith
a648183cc3 Add initial failing test for h5repack copying external data into new file. 2019-05-30 15:45:53 -05:00
Dana Robinson
d5a8b2a80c Split VOL connector routines into separate headers:
* H5VLconnector.h for terminal connector things
* H5VLconnector_passthru.h for passthrough connector things

Note that these headers are arranged such that they are included in
hdf5.h so VOL connectors only need to include that. The separation into
multiple headers is mainly for readability.
2019-05-24 02:22:08 -07:00
M. Scot Breitenfeld
32c4900e89 removed VOLL NULL connector and replaced it with native VOL 2019-05-16 15:05:12 -05:00
M. Scot Breitenfeld
19d2cea9ae added -M HPC to ctest command 2019-05-10 14:34:56 -05:00
M. Scot Breitenfeld
cf6f2f039d Adding cross-compilation for theta (ANL) and qsub (COBALT) batch controls. 2019-05-09 16:45:22 -05:00
M. Scot Breitenfeld
7dd53873f7 Merge branch 'develop' into H10621 2019-04-24 12:57:30 -05:00
Ray Lu
bdb11caa53 Merge pull request #1600 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:HDFFV-10658-performance-drop-from-1-8 to develop
* commit 'b5ef82a1786605ae86502bc82086047720b7d4ca': (21 commits)
  Moving the handling of null prefix into H5_combine_path.
  Changing the prefix of external file and VDS from empty string to null for performance improvement.
  Improving the condition checking of empty string.
  Replacing string operation strdup with assignment for empty string.
  Adding back links_env.out which I accidentally removed in my previous commit.
  Taking out two unnecessary diff output files.
  Taking out unnecessary diff files for output.
  Adding some comments.
  Some coding style changes.
  Adding the standard output files for the external_env.c and vds_env.c tests.
  Small correction for my previous commit.
  Forgot to add external_common.c and external_common.h.
  Updated CMake for the splitting of external.c and vds.c.
  Minor fix: removal of unnecessary enum values.
  Minor fixes: updating the test vds_env.c according to the set up of vds.c.
  Left out this file in previous commit.
  HDFFV-10658 - setting and getting properties in API context: 1. switched to use the existing H5F_prefix_open_t for enum type; 2. put the common private function used by external.c and external_env.c into external_common.c
  This commit basically has the following changes: 1. restored the datatype, dataspace, and LCPL of the dataset for VOL connector back to the properties. 2. splitted external.c and vds.c because they called HDsetenv in the program, instead using shell scripts to set the environment variables. 3. changed H5CX_get_vds_prefix and H5CX_get_ext_file_prefix to use H5P_peek instead of H5P_get.
  HDFFV-10658: I left out this file in my previous commit.
  HDFFV-10658: 1. moving HDgetenv to dataset initialization stage to reduce the overhead; 2. restoring the retrieval of three vol properties to H5P_get instead of using API context to prepare for Quincey's upcoming refactoring work.
  ...
2019-04-18 10:25:18 -05:00
Songyu Lu
1d1e96f1dd Some coding style changes. 2019-04-11 15:51:21 -05:00
Dana Robinson
9ee3d47211 Renamed the HDF5_TEST_VOL option to HDF5_TEST_PASSTHROUGH_VOL. 2019-04-11 11:27:12 -07:00
Songyu Lu
c0b13e078e Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~songyulu/hdf5_ray into HDFFV-10658-performance-drop-from-1-8 2019-04-09 18:11:06 -05:00
Songyu Lu
477dda3c0d HDFFV-10658 - setting and getting properties in API context:
1. switched to use the existing H5F_prefix_open_t for enum type;
2. put the common private function used by external.c and external_env.c into external_common.c
2019-04-09 16:20:19 -05:00
Vailin Choi
2886cd9e45 HDFFV-10365: Changes as described in the RFC: H5Sencode/H5Sdecode Format Change.
This also addresses HDFFV-10255: H5Sencode/decode performance issue.
2019-04-06 16:55:14 -05:00
Dana Robinson
fc3f606d5c Fixed the MANIFEST 2019-03-07 14:38:11 -08:00
M. Scot Breitenfeld
07fde1e25c Merge branch 'develop' into H10621 2019-03-07 14:47:38 -06:00
Jordan Henderson
3acd486b83 Fixes for JNI updates 2019-02-12 11:56:42 -06:00
Allen Byrne
d0be2f5840 CMake script changes to simplify execution 2019-02-08 10:48:49 -06:00