Commit Graph
3491 Commits
Author SHA1 Message Date
David Young 94de95266a Change hdset_reg_ref_t and H5R_ref_t from arrays of unsigned char to
structs containing those arrays.  Encapsulating the arrays in this way
makes it easier to write and think about pointers to these types, casts
to/from these types, etc.

An interesting side-effect that we probably should *not* rely on is
that the struct-encapsulation changes the alignment so that some GCC
warnings about casts that increase the alignment requirement of the
operand go away.  Warnings like that have to be taken seriously:  I will
add -Werror=cast-align to the default compiler flags so that they stop
the build quickly.

GCC warnings led me to some surprising casts in test/trefer.c. I found
that it was possible to make many simplifications after introducing the
struct-encapsulation that I described, above.

In test objcopy_ref `same_file` is assigned but never used.  Delete it.
2019-12-09 14:58:22 -06:00
Jerome Soumagne 33f2948a61 H5R: fix H5Tconv to check for null references
Valid for both deprecated and non-deprecated references

Update test
2019-12-09 14:55:14 -06:00
Jerome Soumagne 49fe497201 Revert "Merge branch 'hdf5_1_12' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into hdf5_1_12"
This reverts commit 9f9336a5bd, reversing
changes made to 437a1919e7.
2019-12-09 12:16:52 -06:00
Richard Warren 9f9336a5bd Merge branch 'hdf5_1_12' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into hdf5_1_12 2019-12-06 16:50:47 -05:00
Richard Warren 0c06cfc6ef Merged HDFFV-10929_2GB_testing to hdf5_1_12 2019-12-06 16:42:36 -05:00
Vailin Choi 17b8281ce4 Merge pull request #2080 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/112_hyper_ver to hdf5_1_12
* commit '0f1be317c37ca04db263680e6f1fe4d97b937b39':
  More fixes for the PR: (1) Set the version for reference datatype message to H5O_DTYPE_VERSION_4. (2) The tests for the new reference types should work for V112 and beyond.
  Verify the decoded version for hyperslab selection.
2019-12-06 13:35:55 -06:00
Vailin Choi 0f1be317c3 More fixes for the PR:
(1) Set the version for reference datatype message to H5O_DTYPE_VERSION_4.
(2) The tests for the new reference types should work for V112 and beyond.
2019-12-06 12:17:30 -06:00
Jordan Henderson a7a70824e4 Add OAPL parameter to H5Rcreate_ APIs 2019-12-06 11:12:42 -06:00
Dana Robinson 1fa1ec6190 Merge pull request #2001 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:1_12_alpha_merges to hdf5_1_12
* commit '75f2ed6167b094431fce2b4b700b3cf9da564c51':
  Fixed a bug (HDFFV-10899) where the behavior of the deprecated H5Gget_objinfo() call had changed and passing in a non-existing soft link with a statbuf of NULL passed instead of failed (as it should as per the RM). The HDF5 1.8 and 1.10 behavior was restored and H5Gget_objinfo() will now fail and return -1 as before.
  Fixed the java assert issue with H5O cache corking calls.
  Corrected missing parallel #ifdefs.
  Converted H5O MD cache cork calls to use the VOL.
  Marked up H5Fget/set_mpi_atomicity() to use the VOL.
2019-10-11 15:02:54 -05:00
Vailin Choi db8a59fbb2 Merge pull request #1959 from develop to 1.12. 2019-10-11 11:53:41 -05:00
Dana Robinson 75f2ed6167 Fixed a bug (HDFFV-10899) where the behavior of the deprecated
H5Gget_objinfo() call had changed and passing in a non-existing
soft link with a statbuf of NULL passed instead of failed (as
it should as per the RM). The HDF5 1.8 and 1.10 behavior was
restored and H5Gget_objinfo() will now fail and return -1 as
before.
2019-10-10 20:55:52 -07:00
Larry Knox 984c1bacd9 Merge pull request #1990 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:references_1_12 to hdf5_1_12
* commit '5d2545ee26d4b7013ed363545705f16a67087549':
  Fix func enter macro in H5T_ref_reclaim()
  Update RELEASE.txt for reference changes
  Fix reference type comparison in h5dump
  Make wrappers, tests and tools use H5Treclaim() instead of H5Dvlen_reclaim()
  Add new H5R API that abstracts object, region and attribute reference types
  Remove ability to loc by ref from H5VL layer
  Add support for retrieving object name by token
  Add H5VL_OBJECT_GET_TYPE to get object type
  Add H5VL_MAX_TOKEN_SIZE and H5VL_token_t
  Adapt Jerome's "file info" H5VL 'get' query to retrieve container token info.
  Fix H5VL_blob_get to return size of blob
  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.
2019-10-09 15:45:26 -05:00
Vailin Choi 19c2eb2800 Merge pull request #1962 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/112_HDFFV-10585-investigate-slowness-of-regular to hdf5_1_12
* commit 'bffa18b684de83359f4ad25e11f4ad0b15f34040':
  Merge pull request #1957 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
  Merge pull request #1934 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10585-investigate-slowness-of-regular to develop
2019-10-09 15:03:12 -05:00
Jerome Soumagne 383e7f7871 Make wrappers, tests and tools use H5Treclaim() instead of H5Dvlen_reclaim() 2019-10-08 15:19:28 -05:00
Jerome Soumagne dabdcf9559 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 15:19:21 -05:00
Allen Byrne b6f9fcaec5 Cleanup whitespace and comments compared to develop 2019-10-02 09:22:11 -05:00
Allen Byrne e8c8c29342 fix for statement declare variable 2019-09-30 14:56:30 -05:00
Larry Knox bffa18b684 Merge pull request #1957 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '3fb711e0ff2516cba7a0cb34f2d8ca38241b06a7':
  Number of arguments requires H5Dopen2.
2019-09-30 14:24:52 -05:00
Vailin Choi 6ffdd4f2d6 Merge pull request #1934 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10585-investigate-slowness-of-regular to develop
* commit '7924eee0e5ee0745b784c635042b8633886fb799':
  (1) Address the feedback from the PR review (2) Add release notes
  Fix for HDFFV-10585 investigate hyperslab slowness: 1) Improve hyperslab performance when doing I/O from 1-d disjoint file dataspace to 1-d contiguous memory dataspace. 2) Move coding in H5D__chunk_io_init() that is constructing the chunk mappings to a separate routine.
2019-09-30 13:50:59 -05:00
Allen Byrne 839566f5fc add missing version to list 2019-09-26 10:44:43 -05:00
Larry Knox 2a4bc8c63e Merge Binh-Minh's changes for code improvement to chunk_info.c (PR #1942)
to develop branch.
2019-09-25 14:30:54 -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 1070468dac Change print calls to HD-wrapped.
Minor formatting tweaks (inc. regressions and in-file style-matching).
2019-09-23 16:25:25 -05:00
Allen Byrne 624d5d9a8e HDFFV-10740 - skip copying dirs in for loops 2019-09-18 11:04:09 -05:00
Dana Robinson 78fda91295 Fixed some exit calls. 2019-09-06 18:06:26 -07:00
Binh-Minh Ribler 716125887d Reworked the previously refactorred code.
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1011test)
2019-09-05 14:14:19 -05:00
Binh-Minh Ribler 339bf241be Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5-bmr into develop 2019-09-04 02:09:35 -05:00
Binh-Minh Ribler 714804b280 Improvement of test code
Description:
    Fixed tests to handle the case when a requested compression filter
    is not available.
Platform tested
    Linux/64 (jelly)
    Darwin (osx1011test)
2019-09-04 02:03:32 -05:00
Allen Byrne 781843da4b Fix CMake build of test needing compression libs 2019-09-03 12:07:29 -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
Binh-Minh Ribler 96dab622e3 Fixed error code and error messages
Tested on Jelly (very minor)
2019-09-03 11:00:29 -05:00
Binh-Minh Ribler bde9257f02 Updated comments 2019-09-01 01:25:59 -05:00
Binh-Minh Ribler b679d11bcc Updated based on reviews and refactored test code 2019-09-01 01:13:08 -05:00
Allen Byrne 0b6f5e88cd Fix EXISTS test syntax 2019-08-29 14:43:35 -05:00
Binh-Minh Ribler a633e33334 Code cleanup and refactor 2019-08-29 00:53:40 -05:00
Allen Byrne 43ff3fdc33 fix get gethostname for windows 2019-08-28 10:19:03 -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
Allen Byrne ba974c031d OESS-29 Update HD prefix mostly 2019-08-24 14:07:33 -05:00
Quincey Koziol 5d6f27b32b Merge branch 'develop' into shared_file_ptr 2019-08-21 15:36:17 -05:00
Quincey Koziol 53eaeff26a Begin converting the H5MF interface to use shared file pointers instead
of top file pointers.
2019-08-20 21:07:13 -05:00
Dana Robinson 8c40dab59e Untangle #ifdef mess in ROS3 code. 2019-08-19 18:02:47 -07:00
Quincey Koziol df36318b5f Rest of changes for 'top' file pointer to 'shared' file pointer for H5F__accum
routines.
2019-08-19 18:00:05 -05:00
Quincey Koziol 85a56a9c4f Partial H5F__accum_* routines. 2019-08-19 17:47:28 -05:00
Allen Byrne 9081fb266c Add missing HD prefix 2019-08-18 11:33:45 -05:00
Allen Byrne 96bf97f534 Update HD prefix and reconcile hl/cpp test 2019-08-16 13:23:29 -05:00
Allen Byrne 64e6665b54 Add HD prefix to tests 2019-08-15 16:46:15 -05:00
Allen Byrne 8ef09e5ce9 Correct name of folder 2019-08-15 11:07:24 -05:00
Allen Byrne 98c8c6e45b Mostly whitespace in testpar, addl changes for tmp dir 2019-08-15 10:28:40 -05:00
Jake Smith 396edbe6bf Merge pull request #1872 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:bugfix/ros3_hdfs_warns_squashed to develop
* commit '2e5cd3d2b2d953420252c80ab5e32ac95ac0c5b3':
  Fix compiler warnings with diabled ROS3 and HDFS VFDs. Fix misuse of [HD]strncpy and [HD]snprintf. Minor formatting changes. Fix test cleanup issue with java groups example.
2019-08-14 15:54:10 -05:00
Ray Lu 47e3d99f65 Merge pull request #1871 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/directory_name_develop to develop
* commit '0b868668bac0d268120844adb9ad216a9a8e1395':
  Changed the directory name left out from the previous commit.
  Changed the name of the temporary directory from 'tmp' to a special name to avoid possible conflicts.
2019-08-14 15:49:57 -05:00