Compare commits

...

3866 Commits

Author SHA1 Message Date
John Mainzer
ac2b0e55b6 Merge pull request #2897 in HDFFV/hdf5 from ~MAINZER/vfd_swmr_alpha_1:feature/vfd_swmr_alpha_1 to feature/vfd_swmr_alpha_1
* commit '1bbec8d69d8c7d3aa46e44b5448733ef396eece1':
  Deleted extraneous files from doc, and updated the contact email address in doc/vfd-swmr-user-guide.phg to swmr@forum.hdfgroup.org
2020-09-23 16:12:57 -05:00
mainzer
1bbec8d69d Deleted extraneous files from doc, and updated the contact email
address in doc/vfd-swmr-user-guide.phg to swmr@forum.hdfgroup.org
2020-09-23 15:48:00 -05:00
Dana Robinson
1f8482247a Adds missing autotools files and updates MANIFEST 2020-09-22 14:18:50 -07:00
Dana Robinson
9c65b08041 Adds Autotools generated files for alpha release 2020-09-22 13:58:09 -07:00
John Mainzer
0698d23269 Merge pull request #2893 in HDFFV/hdf5 from ~MAINZER/vfd_swmr:feature/vfd_swmr to feature/vfd_swmr
* commit '47b1c667c64677d2e28c4128fc027cfdfe60b354':
  More minor edits to users guide.
  Updated users guide for location of alpha 1 release & repaired several typos.
  Added .pdf and .docx versions of the most recent version of the VFD SWMR RFC.  Updates on the RFC are cursory, and mostly in the introduction.  The design section is dated -- added a warning to this effect.
2020-09-21 17:41:09 -05:00
mainzer
47b1c667c6 More minor edits to users guide. 2020-09-21 17:38:18 -05:00
mainzer
2dd0cbe9a7 Updated users guide for location of alpha 1 release & repaired
several typos.
2020-09-21 17:30:06 -05:00
Dana Robinson
35b47b892a Merge pull request #2890 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:feature/vfd_swmr to feature/vfd_swmr
* commit '594b17165effd9ce43bf0b2dd97e0b3df281e69d':
  Removes older VFD SWMR RFC versions
2020-09-21 16:45:01 -05:00
mainzer
3696129c7b Added .pdf and .docx versions of the most recent version of the
VFD SWMR RFC.  Updates on the RFC are cursory, and mostly in the
introduction.  The design section is dated -- added a warning to
this effect.

Reviewed and editied the users guide -- specifically:

   Verified instructions for build and test, and also for demos.
   Removed mention of call to autogen.sh, as that will already be
   run on the friendly user release version.

   Re-worked the introduction to better discribe VFD SWMR, and
   to outline current limitations.

   Changed references to "shadow file" to "metadata file" to match
   field names.

Still need to update pointer to the bit-bucket repository for the
friendly user release.

Also, must verify that the demo code mentioned in the user guide
is publicly available.
2020-09-21 09:01:06 -05:00
David Young
b3cf131855 Merge pull request #2889 in HDFFV/hdf5 from ~DYOUNG/vchoi_fork:quiet-zoo to feature/vfd_swmr
* commit 'aebc84053f9a592aac765fbd3b26f2941015d2e5':
  Limit the repeat rate for duplicate zoo warnings to once every five seconds.
  Move below_speed_limit() from vfd_swmr_bigset_writer.c to vfd_swmr_common.c, document it, and fix a bug.
  Document some of the functions in here.  Update the comment at the top of the file.  NFCI.
2020-09-17 17:18:15 -05:00
Dana Robinson
594b17165e Removes older VFD SWMR RFC versions
These are archived in hdf5doc.
2020-09-17 14:49:48 -07:00
David Young
aebc84053f Merge branch 'vswmr-base' into quiet-zoo 2020-09-17 15:31:33 -05:00
David Young
07ad063b4b Limit the repeat rate for duplicate zoo warnings to once every five
seconds.
2020-09-17 15:24:36 -05:00
David Young
8e2053bb3d Move below_speed_limit() from vfd_swmr_bigset_writer.c to
vfd_swmr_common.c, document it, and fix a bug.
2020-09-17 14:35:54 -05:00
David Young
da688311af Document some of the functions in here. Update the comment at the top
of the file.  NFCI.
2020-09-17 14:34:46 -05:00
David Young
43470c8daf Merge branch 'feature/vfd_swmr' into multi 2020-09-14 12:42:33 -05:00
David Young
69f4053692 Move the open issues noted in the outdated VFD_SWMR_Guide.md to
vfd-swmr-user-guide.md and delete VFD_SWMR_Guide.md.
2020-09-14 12:41:27 -05:00
David Young
c96c891d32 Merge branch 'feature/vfd_swmr' into multi 2020-09-14 11:17:11 -05:00
David Young
2b7d87ecbe Add the U. of California copyright notice from src/H5queue.h. 2020-09-14 11:16:31 -05:00
David Young
86ee920e8c Merge branch 'feature/vfd_swmr' into multi 2020-09-14 11:07:55 -05:00
Dana Robinson
a56e5dc7e4 Fixes a leak of the metadata index memory 2020-09-14 10:48:02 -05:00
David Young
de03f876f5 Merge branch 'feature/vfd_swmr' into multi 2020-09-14 10:47:34 -05:00
Dana Robinson
361861da89 Merge pull request #1 in ~DYOUNG/vchoi_fork from ~DEROBINS/hdf5_der:svd_multi_memory_fix to multi
* commit '09981b58d800d784a2aa7e3ea5f7f1cad576e8db':
  Fixes a leak of the metadata index memory
2020-09-08 20:04:06 -05:00
Dana Robinson
09981b58d8 Fixes a leak of the metadata index memory 2020-09-08 14:59:33 -07:00
David Young
1acfef5737 Rewrap lines. 2020-09-03 16:48:33 -05:00
David Young
ff8b70dc0f Merge branch 'feature/vfd_swmr' into multi 2020-09-03 14:58:57 -05:00
David Young
9bb743136e Individually track the steps verified on each dataset. Take care
not to skip a step.
2020-09-03 14:58:15 -05:00
David Young
68643772e3 Mention that creating new objects is not possible with legacy SWMR.
Add abbreviation TBD where we need to add a hyperlink.
2020-09-03 14:58:15 -05:00
David Young
101f040b80 Add Dana's words about MS Windows support. 2020-09-03 14:58:15 -05:00
David Young
a4a969f0fd Give an overview of the bigsets test in a mega-comment at the top. Also,
describe the test pattern.  And while I'm here, repair a comment,
s/writer/reader/.
2020-09-03 14:58:14 -05:00
David Young
f58c2c5cce Merge branch 'feature/vfd_swmr' into multi 2020-09-02 11:08:34 -05:00
David Young
135af42c09 Describe the command-line options for the bigset reader/writer
with a handful of bullets.
2020-09-02 10:50:34 -05:00
David Young
bfc42a18ce Don't pass CFLAGS to the configure script, that's not in the HDF5 configure
idiom and it's just too much detail.

Repair a TBD: mention the vfdswmr@hdfgroup.org address for contacting the VFD
SWMR developers.
2020-09-02 10:06:20 -05:00
David Young
79560265af Merge branch 'feature/vfd_swmr' into multi 2020-08-31 18:56:25 -05:00
David Young
f45bb21979 Write a comment about a bit of overflow-avoidance logic. NFCI. 2020-08-31 17:21:58 -05:00
David Young
599be55d97 Be less specific about Windows support. 2020-08-31 17:01:50 -05:00
David Young
53fe9189e1 Improve/expand the comments on the file->writer assertions. 2020-08-31 15:57:59 -05:00
David Young
aaeb21bdea Delete an unhelpful comment. NFCI. 2020-08-31 15:57:39 -05:00
David Young
918d8894a0 Add some header comments to functions. 2020-08-31 15:56:46 -05:00
David Young
4f833668b0 Rename api_elapsed_nslots to api_elapsed_nbuckets: possibly clarifies
things, possibly does not?  NFCI.
2020-08-31 15:55:20 -05:00
David Young
349ed1418b Document vfd_swmr_pageno_to_mdf_idx_entry() and rename its parameter
nindices -> nentries.
2020-08-31 15:52:48 -05:00
David Young
96c6a7c8d8 Wrap a line in a comment at 80 columns. 2020-08-31 15:52:17 -05:00
David Young
733a02386b Add/improve some struct/member documentation per John's request. 2020-08-31 15:50:31 -05:00
David Young
fd406a654c Document vfd_swmr_writer_may_increase_tick_to() and
vfd_swmr_reader_did_increase_tick_to().  NFCI.
2020-08-31 15:46:47 -05:00
David Young
5756ac4233 Document H5HG_trap(). 2020-08-31 15:46:22 -05:00
David Young
60787f34e7 Delete unused local variable. NFCI. 2020-08-31 15:46:05 -05:00
David Young
aecd29c2ad Use the DECODE macro with the correct signedness for the variable. 2020-08-31 15:43:35 -05:00
David Young
b0e9960460 Merge branch 'feature/vfd_swmr' into multi 2020-08-28 12:51:39 -05:00
David Young
0624ed2e48 Also accept transitions of the superblock status flags to
H5F_SUPER_WRITE_ACCESS|H5F_SUPER_SWMR_WRITE_ACCESS.  This should fix the
problem Dana's seeing on his test VM.
2020-08-28 12:49:40 -05:00
David Young
0c7c4ba490 Fix a typo in a comment. NFCI. 2020-08-28 09:23:46 -05:00
David Young
a9d7f0d2ec Merge branch 'feature/vfd_swmr' into multi 2020-08-25 15:47:07 -05:00
David Young
c97970f7a1 Use the terminology "expected" and "unexpected" errors instead of "soft" and
"hard" errors.
2020-08-25 15:46:34 -05:00
David Young
ea6dd16fbb Describe the behavior of H5FD_vfd_swmr_dedup() in excruciating detail. 2020-08-25 15:46:34 -05:00
David Young
9ee6be22b9 Clarify my descriptions of H5FD_dedup() and H5FD_deduplicate(). 2020-08-25 15:46:34 -05:00
David Young
e1419c872e Do not use first person singular in the SWMR demos section.
In the `vfd_swmr_create_fapl()` dissection, change the /** **/
comments in the literal code to plain markdown paragraphs.

Slightly change wording and markdown elsewhere.
2020-08-25 10:46:36 -05:00
David Young
da4c72a138 Incorporate Mike's changes, fix some of my punctuation and markdown. 2020-08-25 10:23:01 -05:00
David Young
c492036b0d Add the VFD SWMR User's Guide, a work in progress. 2020-08-25 09:22:04 -05:00
David Young
563665c894 Merge branch 'feature/vfd_swmr' into multi 2020-08-21 13:44:27 -05:00
David Young
7af1fa67d6 When the superblock status flags don't meet our expectations, print
the flags and the expectations.
2020-08-21 13:43:41 -05:00
David Young
482ee0765d Apply Dana's fix for production mode builds. 2020-08-21 13:43:08 -05:00
David Young
0bbf92da01 Merge branch 'feature/vfd_swmr' into multi 2020-08-21 09:53:50 -05:00
David Young
c68700769f Avoid potential shadow-file clashes, call the shadow file group-shadow. 2020-08-21 09:53:17 -05:00
David Young
d0f1d9ab7b Call the shadow files bigset-shadow-<number> for some <number>,
to avoid unlikely shadow-file clashes.
2020-08-21 09:52:26 -05:00
David Young
fe4b7110a7 Avoid potential shadow-file clashes, call the file generator-shadow. 2020-08-21 09:51:32 -05:00
David Young
88342f8b3f Use the safe calloc() idiom, p = calloc(1, sizeof(*p)), and do
not gratuitously cast to p's type.
2020-08-21 09:50:49 -05:00
David Young
2fe7d17a76 Avoid potential shadow-file clashes, call the shadow file rw-shadow. 2020-08-21 09:49:44 -05:00
David Young
2f30671e84 Straggler from last: call the shadow file vlstr-shadow. 2020-08-21 09:48:39 -05:00
David Young
24e6e55c56 Avoid shadow file clashes, call the file vlstr-shadow. 2020-08-21 09:48:17 -05:00
David Young
0c741c5997 To avoid potential clashes with other tests, call the shadow file zoo-shadow. 2020-08-21 09:47:14 -05:00
David Young
bcf91a09df Derive the name of the shadow file from the HDF5 file: drop the .h5, add
.shadow.
2020-08-21 09:46:30 -05:00
David Young
2ef65c82a6 Merge branch 'feature/vfd_swmr' into multi 2020-08-20 10:15:49 -05:00
David Young
cd9c80925e Delete disused routine H5FD_has_conflict(). 2020-08-20 10:14:48 -05:00
David Young
1373eec7e5 Merge branch 'feature/vfd_swmr' into multi 2020-08-18 17:43:01 -05:00
David Young
38310e9176 Sleep 1/10s between H5Dopen() tries. Make a couple of warning/error messages
more clear/correct.
2020-08-18 17:42:35 -05:00
David Young
2d1fc21f49 Merge branch 'feature/vfd_swmr' into multi 2020-08-18 12:08:37 -05:00
David Young
a06d6f235d Perform the dataset opens in reverse order to their creation, and if
H5Dopen fails, rapidly retry up to 9,999 times.  Log H5Dopen failures,
but log no more than once every five seconds to avoid spamming the
terminal.

With these changes, it's easier for the reader to open the last dataset
before the writer created it, but the reader recovers instead of
quitting with an error.  It should only be necessary to retry opening
the *last* dataset; all previous datasets should open on one try if the
last is open.
2020-08-18 12:08:05 -05:00
David Young
a51442b8ad Merge branch 'feature/vfd_swmr' into multi 2020-08-17 10:38:01 -05:00
David Young
0619c3dfd8 Fix copy-and-paste error: do not copy the H5T_C_S1 type twice. 2020-08-17 10:36:12 -05:00
David Young
cb1c50dfb1 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-08-05 13:39:40 -05:00
David Young
695bd92140 Fix a regression that crept in with the August merge: use the "swmr" VFD when
that's called for.
2020-08-05 13:37:49 -05:00
David Young
9bdd3878e7 Merge branch 'aug-merge-attempt/feature/vfd_swmr' into aug-merge-attempt/may-merge-mainzer-to-mine 2020-08-04 12:38:25 -05:00
David Young
dc97b9a165 Merge branch 'aug-develop' into aug-merge-attempt/feature/vfd_swmr 2020-08-04 10:22:47 -05:00
David Young
f28c92bb36 Merge branch 'may-develop' into may-merge-head/feature/vfd_swmr 2020-08-04 10:03:49 -05:00
David Young
e5f061d5a4 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-08-03 16:24:31 -05:00
David Young
316aa34bac Make tests pass on both of my branches, like they ought to: in the tests that
call H5F__vfd_swmr_writer_md_test(), actually sleep for more than `max_lag`
ticks so that the deferred-frees queue is actually flushed before we force new
items onto the queue and count them.

In H5F__vfd_swmr_writer_md_test(), check that the number of deferred
shadow-space frees is *precisely* the number `nshadow_defrees`, since that
seems to be what the tests that call this routine intend.
2020-08-03 15:00:25 -05:00
David Young
6500ea09a0 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-08-03 11:13:06 -05:00
David Young
20a6b82597 In VFD SWMR, use H5F_shared_t instead of H5F_t wherever that is possible. 2020-08-03 11:11:23 -05:00
David Young
b9888cceff The second argument to H5MV__sect_shrink() has to be an actual H5F_t *, not
NULL, so pass an actual H5F_t *.  Bug found by code inspection.
2020-08-03 11:06:14 -05:00
Dana Robinson
33c0016eb6 Merge pull request #2727 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'b9de162eae800a9459f0f1f07d2b043f73f8a907':
  Minor normalizations with 1.12 branch
  Fixed bad parens in H5trace.c
2020-08-02 18:22:54 -05:00
Dana Robinson
b9de162eae Minor normalizations with 1.12 branch 2020-08-01 10:26:22 -07:00
Dana Robinson
4486905131 Merge branch 'develop' into develop_minor 2020-08-01 10:26:11 -07:00
Dana Robinson
66ce984dee Merge pull request #2723 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '08dca47475f41e93348cf0c2ea708e787c232014':
  Minor normalizations with hdf5_1_10
2020-08-01 11:36:59 -05:00
David Young
88e8b4fd7d Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-07-31 16:15:25 -05:00
David Young
d01bcf6667 Perform virtual dataset tests with multiple source files, too. 2020-07-31 16:14:10 -05:00
David Young
6caa0c5ac5 Let us use virtual datasets with multiple source files that are open with VFD
SWMR mode: pass H5P_FILE_ACCESS_ANY_VFD so that the discrepancy between VFD
SWMR file-access properties and default file-access properties is ignored.
2020-07-31 16:12:27 -05:00
Dana Robinson
64ffb37ff6 Fixed bad parens in H5trace.c 2020-07-31 12:23:57 -07:00
Dana Robinson
08dca47475 Minor normalizations with hdf5_1_10 2020-07-31 11:40:29 -07:00
Allen Byrne
5007f82225 Merge pull request #2722 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'fc57490e02835ddfce644135e93e893f77b379d3':
  Mingw copy disabled
2020-07-31 13:26:17 -05:00
Allen Byrne
fc57490e02 Mingw copy disabled 2020-07-31 07:50:11 -05:00
Dana Robinson
50f404c887 Merge pull request #2720 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'c8ba30d965f0342e5725a11cb562dfb22c8a8d24':
  Minor normalization with 1.10 branch
2020-07-30 20:16:17 -05:00
Dana Robinson
c8ba30d965 Merge branch 'develop' into develop_minor 2020-07-30 15:23:54 -07:00
David Young
7321d0e813 Improve code readability: extract common subexpressions into temporary
variables.
2020-07-30 17:21:24 -05:00
David Young
a8cbf2579d In test_reader_md_concur(), the child has to exit(3), not FAIL_STACK_ERROR, on
error.
2020-07-30 17:01:16 -05:00
David Young
bf004fcba8 Bug fixes: don't double-close a FAPL ID. Always close a file ID. 2020-07-30 17:00:38 -05:00
David Young
92887cad1c Update an out-of-date comment. 2020-07-30 16:58:37 -05:00
David Young
b6b92aff09 Remove superfluous casts from void * to another pointer type prior to
assignment. Use a safer sizeof(array element) idiom.  NFCI.
2020-07-30 16:56:20 -05:00
David Young
2a64d2fe93 Change H5F_open to perform deduplication of open VFDs in a more flexible way,
using the new routine H5FDdeduplicate().

Simplify H5F_open() a bit, pushing some of the configuration checks into the
SMWR VFD.  For example, check that page buffering is enabled in
H5FD_vfd_swmr_open() instead of in H5F_open().  Compare VFD SWMR configurations
in H5FD_vfd_swmr_dedup() instead of in H5F_open().

Clone the default file-access property list at a new file-access property list
ID, H5P_FILE_ACCESS_ANY_VFD.  The new ID is used to indicate that if the file
that's being opened is already open under an existing virtual file, and if that
virtual file would not ordinarily be opened with the default FAPL, then it's ok
to use that virtual file.

Add a new optional method, `dedup`, to H5FD_class_t, and use it to customize a
VFD's deduplication.

Customize the SWMR VFD's deduplication.  Make it honor H5P_FILE_ACCESS_ANY_VFD
Embed the VFD SWMR configuration in the H5FD_vfd_swmr_t to facilitate
comparison of configuration between new and old SWMR virtual files.

In H5F__sfile_search(), match using a pointer comparison instead of H5FD_cmp(),
because we will only ever enter H5F__sfile_search() with a deduplicated
H5FD_t *.
2020-07-30 16:53:01 -05:00
Allen Byrne
88aa0d5c76 Merge pull request #2718 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ff4a9d0ec2e85cf15f769006e92e756a79869ab8':
  Warnings reduction in tools
2020-07-30 11:46:39 -05:00
Allen Byrne
ff4a9d0ec2 Warnings reduction in tools 2020-07-30 11:26:14 -05:00
Allen Byrne
2ece66e999 Merge pull request #2716 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6a1cf090c6a2f970084c714a2f75a31d68a0a6a8':
  Correct reference file
  Correct h5diff filenames
2020-07-29 15:40:05 -05:00
Allen Byrne
6a1cf090c6 Correct reference file 2020-07-29 12:56:03 -05:00
Allen Byrne
1f7fa50137 Correct h5diff filenames 2020-07-29 08:24:30 -05:00
Binh-Minh Ribler
cf4e78b3c9 Merge pull request #2711 in HDFFV/hdf5 from bmr-HDFFV-11120 to develop
Fix HDFFV-11120 and HDFFV-11121 (CVE-2018-13870 and CVE-2018-13869)

* commit '707e30c6be1954c0027374124207e46caae68cbc':
  Fixed typos in error messages.
  Fix HDFFV-11120 and HDFFV-11121 (CVE-2018-13870 and CVE-2018-13869)
2020-07-28 19:08:19 -05:00
Binh-Minh Ribler
707e30c6be Fixed typos in error messages. 2020-07-28 12:20:13 -05:00
Dana Robinson
b201a78b33 Merge pull request #2714 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:h5s_set_extent_none to develop
* commit 'e4603ff8a171e82de6373ba6eddcf59d5eeab5aa':
  Updated the Java tests to deal with H5Sset_extent_none changes
  Fixed additional typos in tselect.c comments.
  Fixes typo in tselect.c
  Updates H5Sset_extent_none() to set H5S_NULL
2020-07-28 11:29:04 -05:00
Dana Robinson
e4603ff8a1 Updated the Java tests to deal with H5Sset_extent_none changes 2020-07-28 08:28:38 -07:00
David Young
0b189968ff Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-07-28 09:41:09 -05:00
David Young
5632094d5c Initialize refresh member. 2020-07-28 09:40:35 -05:00
David Young
0cb028b717 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-07-28 09:20:28 -05:00
David Young
d93bc843aa Promote more warnings to errors. 2020-07-28 09:14:12 -05:00
Allen Byrne
10e59f6ba4 Merge pull request #2697 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '5857bb817019b8513f796c9564de3f1845f9a44a':
  Only one line needed to compare
  Revert err file
  revert error-stack enable
  Add release notes for tools
  add test file ext
  Correct file name in test
  Tools refactor
2020-07-28 07:13:18 -05:00
Dana Robinson
c78326eb92 Fixed additional typos in tselect.c comments. 2020-07-27 17:40:25 -07:00
Dana Robinson
dbba42c306 Fixes typo in tselect.c 2020-07-27 17:38:41 -07:00
Dana Robinson
91f5320ff0 Updates H5Sset_extent_none() to set H5S_NULL
The API call used to set the internal H5S_NO_CLASS value which
produced errors when such a dataspace was passed to many other API
calls.

Fixes HDFFV-11027
2020-07-27 17:32:01 -07:00
Allen Byrne
5857bb8170 Only one line needed to compare 2020-07-27 16:15:50 -05:00
Allen Byrne
799f2891c2 Revert err file 2020-07-27 15:47:10 -05:00
Dana Robinson
6e740457cc Minor normalization with 1.10 branch 2020-07-27 11:09:05 -07:00
Binh-Minh Ribler
303be6d7de Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into bmr-HDFFV-11120 2020-07-22 16:15:47 -05:00
Binh-Minh Ribler
88e458ac43 Fix HDFFV-11120 and HDFFV-11121 (CVE-2018-13870 and CVE-2018-13869)
Description:
    When a buffer overflow occurred because a name length was corrupted
    and became very large, h5dump produced a segfault on one file and a
    memcpy parameter overlap on another file.  This commit added checks
    that detect a read pass the end of the buffer to prevent these error
    conditions.
Platforms tested:
    Linux/64 (jelly)
    SunOS 5.11 (emu)
2020-07-22 16:13:26 -05:00
David Young
0fd4a7f5e1 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-07-21 11:25:28 -05:00
David Young
04e775b127 Straggler from last: update declaration of vfd_swmr_create_fapl(). 2020-07-21 11:15:44 -05:00
David Young
78bd491aad Add to the "bigset" writer a -M command-line option that enables the use of
multiple files with virtual datasets.

Add to vfd_swmr_create_fapl() printf(3)-like arguments for setting the shadow
filename.  Update all callers.
2020-07-21 11:13:05 -05:00
David Young
a9fefff620 Add evsnprintf for printing a va_list to a buffer or aborting the program on
an overflow or other error.
2020-07-21 10:18:43 -05:00
David Young
6e3ad3213d Delete superfluous comments that interpret obvious program syntax/semantics. 2020-07-21 10:15:56 -05:00
David Young
0ae43ff6cd Mention an improvement asked for by ITER. 2020-07-21 10:04:49 -05:00
David Young
43cec81db6 Only count metadata reads/writes on the page buffer. Neaten the count logs. 2020-07-21 10:01:12 -05:00
Allen Byrne
e0b86594c2 revert error-stack enable 2020-07-20 16:46:49 -05:00
Allen Byrne
c0bc9d0e60 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '74e09473c825610d203565e5ed9deb156256d6ea':
  Minor normalization with 1.10.
2020-07-20 14:08:55 -05:00
Dana Robinson
74e09473c8 Merge pull request #2703 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '242459231b40a88741cbc85df4272914b5d8bed3':
  Minor normalization with 1.10.
2020-07-20 14:04:41 -05:00
Dana Robinson
242459231b Minor normalization with 1.10. 2020-07-20 11:50:10 -07:00
Allen Byrne
bae8107621 Add release notes for tools 2020-07-20 10:26:17 -05:00
Allen Byrne
a498b4ee79 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '9d3ea366d4bf3278e8260f4d5cdcc88cb4b61c56':
  Update MANIFEST. Add new test to Cmake.
  Fix for jira issue HDFFV-11080: (1) Patch up the file pointer when reading attribute of variable length datatype (2) Test to verify the fix when doing multiple threads
2020-07-17 14:39:25 -05:00
Vailin Choi
9d3ea366d4 Merge pull request #2693 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-11080-heap-use-after-free-by-the-call to develop
* commit '3023b34272cc6ada84aebfa7441a6a55afa3621c':
  Update MANIFEST. Add new test to Cmake.
  Fix for jira issue HDFFV-11080: (1) Patch up the file pointer when reading attribute of variable length datatype (2) Test to verify the fix when doing multiple threads
2020-07-17 14:27:12 -05:00
Allen Byrne
a2f2887675 add test file ext 2020-07-17 13:22:26 -05:00
Allen Byrne
93c3d7b2f3 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'e36047b9b9839d1fd0b4009b7066b8b50b95bc6d':
  Minor normalization with 1.10
2020-07-17 10:40:49 -05:00
Dana Robinson
e36047b9b9 Merge pull request #2700 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '6388a6750ff1dc476b8631d26cd1742730df9fe8':
  Minor normalization with 1.10
2020-07-17 10:23:24 -05:00
Dana Robinson
6388a6750f Minor normalization with 1.10 2020-07-17 05:17:48 -07:00
vchoi
3023b34272 Update MANIFEST.
Add new test to Cmake.
2020-07-16 16:40:11 -05:00
Allen Byrne
247e2dc546 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '58d37c2295044ad1a201d6671cdd67ae380b84f8':
  H5R: fix type conversion of references within vlen type
2020-07-16 08:57:28 -05:00
Allen Byrne
e5145030a4 Correct file name in test 2020-07-16 08:31:48 -05:00
Jerome Soumagne
58d37c2295 Merge pull request #2694 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:fix_vlen_ref to develop
* commit 'aa9d2bd9bcce7a1a53c9d9cf519df5401041bb74':
  H5R: fix type conversion of references within vlen type
2020-07-15 21:02:14 -05:00
Jerome Soumagne
aa9d2bd9bc H5R: fix type conversion of references within vlen type
Update trefer.c with vlen test case
2020-07-15 21:00:36 -05:00
David Young
c66f7d5b65 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-07-15 16:47:07 -05:00
David Young
c9d8f3e4f1 Log the number of page-buffer accesses at various multiples of the page size
with log outlet `pb_access_sizes`.
2020-07-15 16:44:52 -05:00
David Young
be0b2f132d Perform the few_big and many_small tests with and without VDS enabled. 2020-07-15 16:43:48 -05:00
David Young
91a7258dbf Don't perform EOT processing on the same H5F_shared_t more than once if it has
multiple referring H5F_t on the EOT queue.  This stops the VFD SWMR writer from
advancing the shadow file's tick number too fast when we're using virtual
datasets (VDS) with VFD SWMR.
2020-07-15 16:28:52 -05:00
David Young
767afc60be Update comment. 2020-07-15 16:26:52 -05:00
Allen Byrne
bac0fc6309 Tools refactor
Move error_stack setup to tools library
Add structure for h5dump properties
Eliminate duplicated h5diff functions
Use properties structure in place of argument lists.
2020-07-15 11:20:16 -05:00
David Young
0e9f3038d2 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-07-14 15:13:45 -05:00
David Young
a0be3626c8 Delete whitespace at EOL. NFCI. 2020-07-14 15:13:20 -05:00
David Young
814b428b2a When H5FD_vfd_swmr_read() reads a page from the shadow file whose checksum
fails, re-load the shadow-file header and log the last-read and current tick
number.
2020-07-14 15:10:30 -05:00
David Young
2056e23fc9 Avoid some casts, change some parameters from H5FD_t to H5FD_vfd_swmr_t when
that's what both the callers and callees expect.  NFCI.
2020-07-14 15:09:18 -05:00
David Young
c3120ac3da Delete some dead code. 2020-07-14 15:06:02 -05:00
David Young
5c9d2724be Add some new diagnostic logging. 2020-07-14 15:04:37 -05:00
David Young
3d89d6ca4e Suppress the error-stack printouts while attempting to open and read an
attribute: failures are expected.
2020-07-14 15:02:49 -05:00
David Young
30a62d1380 Don't check an unsigned integer for being negative. Quiets a GCC warning. 2020-07-14 15:01:50 -05:00
Allen Byrne
900e75544e Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '806f5b5b2a280072f62f58c48e93acdc84f2b3ae':
  Removed POSIX #defines from configure on Solaris.
  Fallback to older time functions in new timer code.
2020-07-14 12:02:43 -05:00
Dana Robinson
806f5b5b2a Merge pull request #2692 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'b8013380792a3503003f0a2bd60d7541656b03c7':
  Removed POSIX #defines from configure on Solaris.
  Fallback to older time functions in new timer code.
2020-07-14 11:46:33 -05:00
vchoi
4bc49d8b2b Fix for jira issue HDFFV-11080:
(1) Patch up the file pointer when reading attribute of variable length datatype
(2) Test to verify the fix when doing multiple threads
2020-07-14 10:56:33 -05:00
David Young
7840f5f3b5 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-07-14 09:06:43 -05:00
David Young
63c7ec2496 Bug fix: avoid leaking memory and other resources, perform the reader-only
close activities under the correct condition!  Extract the reader-only open and
close code into helper routines.
2020-07-14 09:00:44 -05:00
David Young
f7fab27b25 If the function-enter macro fails, return FAIL. Now the compiler can see that
if H5FD__vfd_swmr_header_deserialize() succeeds, then the header that was
passed in was actually initialized.  This squashes a used-before-initialized
warning from GCC.
2020-07-14 08:58:11 -05:00
David Young
12e5f29e48 Take care to initialize the metadata file descriptor to -1 so that we don't try
to close descriptor 0, later.
2020-07-14 08:56:32 -05:00
David Young
323380e6b9 If a group's attribute isn't present, that's ok. Retry. 2020-07-14 08:55:26 -05:00
David Young
8593cd2d93 Close attribute after use. 2020-07-14 08:54:56 -05:00
David Young
fefc6cf885 Delete dead code. NFCI. 2020-07-14 08:54:44 -05:00
Dana Robinson
b801338079 Removed POSIX #defines from configure on Solaris. 2020-07-14 07:49:00 -05:00
Dana Robinson
4305d9677b Fallback to older time functions in new timer code. 2020-07-14 05:01:22 -07:00
David Young
326b98fd08 Delete whitespace at EOL. Join consecutive line. NFCI. 2020-07-13 10:09:40 -05:00
David Young
62240b1a55 Delete whitespace at EOL. 2020-07-13 10:03:12 -05:00
Allen Byrne
9224c7abaa Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b480d0a38b1e265c55c74262bf384d255a33e07b':
  Remove path to szip header file from AM_CPPFLAGS when configure check of libsz fails. Fix for HDFFV-10830.
  HDFFV-11116 Add option for install location of Fortran MOD files
2020-07-11 12:53:11 -05:00
Larry Knox
b480d0a38b Merge pull request #2686 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '800f93f7c994f88dfa716746153ded4b1e690e3a':
  Remove path to szip header file from AM_CPPFLAGS when configure check of libsz fails. Fix for HDFFV-10830.
2020-07-11 08:07:10 -05:00
Allen Byrne
e3f5f59a61 Merge pull request #2684 in HDFFV/hdf5 from ~BYRN/hdf5_adb:feature/HDFFV-11116-trilabs-mod-location to develop
* commit '07a52ecb2ffa1d8d32f06db23470833899db3deb':
  HDFFV-11116 Add option for install location of Fortran MOD files
2020-07-11 07:10:31 -05:00
David Young
0e1b6bfcef Fix a copy-pasto in an error message. 2020-07-10 16:18:39 -05:00
David Young
a2308ffd2c Move the dapl initialization to state_init and, if VDS is enabled,
set the virtual view to "first missing."
2020-07-10 16:17:51 -05:00
David Young
2882736643 Delete unused local variables. Delete an empty line. NFCI. 2020-07-10 16:16:40 -05:00
David Young
0c98fe96e5 Don't leak a fapl on error. 2020-07-10 16:16:01 -05:00
David Young
09b17b6563 Remove gratuitous local variable initialization: it's better to let the
compiler detect use-before-initialization.  Use the safer `memset(p, ...,
sizeof(*p))` idiom.
2020-07-10 16:12:05 -05:00
David Young
98f441a606 Add a new log outlet and some log statements for EOT queue manipulation. 2020-07-10 16:10:41 -05:00
David Young
8aeba09f55 Straggler from previous: bsdqueue.h -> H5queue.h 2020-07-10 16:09:37 -05:00
David Young
847d22244a Change some H5F_t uses to H5F_shared_t uses: gradually we will rid VFD SWMR of
H5F_t.
2020-07-10 16:06:22 -05:00
David Young
9907d5fdcd Be brief: remove gratuitous cast of _xfree(). Use reference to member pub
instead of cast to H5FD_t *.
2020-07-10 16:04:19 -05:00
David Young
3553c7617d Make a VFD SWMR writer use the SWMR VFD, to facilitate avoiding conflicting
multiple opens of the same file with VFD SWMR---i.e., twice for writing, or for
reading and for writing.  In the long run, this will help me encapsulate more
of the SWMR functionality in the VFD, too.
2020-07-10 16:00:09 -05:00
David Young
03cdbe9376 Straggler from previous commit: when closing the VFD SWMR virtual file, clear
the lower virtual file's `exc_owner` field.  While I'm here, remove a
gratuitous assertion.

This is part of a changeset that helps us avoid creating multiple H5F_shared_t
for one file when virtual datasets are used with VFD SWMR.  The old code for
deduplicating VFD SWMR H5F_shared_t instances did not work correctly with VFD
SWMR, so we'd end up with multiple H5F_shared_t all active on the same file.
2020-07-10 15:23:38 -05:00
David Young
b030664aaa Delete gratuitous comment and initialization from a variable declaration. 2020-07-10 15:16:25 -05:00
David Young
2e66b5cf86 Add all extant virtual files to a list. Add an "exclusive owner" (exc_owner)
member to all virtual files.  Add a routine, H5FD_has_conflict(), that returns
true if a new virtual file is identical to an existing virtual file that has an
exclusive owner.  Establish an exclusive owner for a VFD SWMR virtual file's
lower virtual file.

Rename bsdqueue.h to H5queue.h and install it, since it's used by H5FDpublic.h.

This is part of a changeset that helps us avoid creating multiple H5F_shared_t
for one file when virtual datasets are used with VFD SWMR.  The old code for
deduplicating VFD SWMR H5F_shared_t instances did not work correctly with VFD
SWMR, so we'd end up with multiple H5F_shared_t all active on the same file.
2020-07-10 15:09:29 -05:00
Larry Knox
800f93f7c9 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2020-07-10 13:44:08 -05:00
Larry Knox
0f3fd8d53d Remove path to szip header file from AM_CPPFLAGS when configure check of libsz fails.
Fix for HDFFV-10830.
2020-07-10 13:39:59 -05:00
Allen Byrne
b63c9e81dd Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'f5da9b1befeb81aa9f4d97df3ec606f801807420':
  Minor changes from normalization with 1.10
2020-07-09 16:14:34 -05:00
Dana Robinson
f5da9b1bef Merge pull request #2683 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_normalization to develop
* commit '127d1cfdf06e9c1cd264595c496a063848358a0a':
  Minor changes from normalization with 1.10
2020-07-09 15:50:43 -05:00
Allen Byrne
07a52ecb2f HDFFV-11116 Add option for install location of Fortran MOD files 2020-07-09 13:03:58 -05:00
Dana Robinson
127d1cfdf0 Minor changes from normalization with 1.10 2020-07-09 08:34:01 -07:00
Allen Byrne
4b12244091 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '188c43b8ee78d830c22f30fb9adb802e46722fcd':
  Change load path in libhdf5_java.dylib to unversioned libhdf5.dylib for junit tests on Macs.
  Fixes Autotools builds on Solaris after monotonic timer changes
2020-07-08 07:16:03 -05:00
Dana Robinson
188c43b8ee Merge pull request #2680 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'd9105b2fcf04f36ea348bf9726a49c05cacc0b78':
  Fixes Autotools builds on Solaris after monotonic timer changes
2020-07-07 16:38:47 -05:00
Larry Knox
c5af29321b Merge pull request #2677 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'da607fe4638c9cc08f717fbe65e799c1676c17ff':
  Change load path in libhdf5_java.dylib to unversioned libhdf5.dylib for junit tests on Macs.
2020-07-07 16:27:45 -05:00
David Young
5e0c814296 Fix a bug where I was trying to store ndatasets * 4 source-dataset
handles in 4 variables and, of course, failing.  Refactor the
dataspace/dataset initialization.
2020-07-07 12:57:39 -05:00
David Young
6ff70c9e03 Fix a bug in H5D__virtual_write_one to stop an assertion from failing
deep in H5Dwrite---project the *clipped* virtual selection instead of
the virtual selection:

assertion "((src_space)->select.num_elem) == ((dst_space)->select.num_elem)"
failed: file "../../../vchoi_fork/src/H5Sselect.c", line 2617, function
"H5S_select_project_intersection"

with this backtrace:

    at /home/dyoung/plain-nbsd/src/lib/libc/gen/raise.c:48
    at /home/dyoung/plain-nbsd/src/lib/libc/stdlib/abort.c:74
    file=0xae9e3e80 "../../../vchoi_fork/src/H5Sselect.c", line=2617,
    function=0xae9e4ca0 <__func__.15686> "H5S_select_project_intersection",
    failedexpr=0xae9e0e54 "((src_space)->select.num_elem) ==
((dst_space)->select.num_elem)") at
/home/dyoung/plain-nbsd/src/lib/libc/gen/assert.c:72
    dst_space=0xae26f0dc, src_intersect_space=0xae0b577c,
    new_space_ptr=0xbfb85fac, share_selection=true)
    at ../../../vchoi_fork/src/H5Sselect.c:2749
    type_info=type_info@entry=0xbfb86084,
    file_space=file_space@entry=0xae0b577c, source_dset=0xae24741c,
    io_info=<optimized out>) at ../../../vchoi_fork/src/H5Dvirtual.c:2784
    type_info=0xbfb86084, nelmts=256, file_space=0xae0b577c,
    mem_space=0xae26ec8c, fm=0xadf0401c)
    at ../../../vchoi_fork/src/H5Dvirtual.c:2873
    mem_type_id=216172782113783837, mem_space=0xae26ec8c,
    file_space=0xae0b577c, buf=0xae203808)
    at ../../../vchoi_fork/src/H5Dio.c:780
    mem_type_id=216172782113783837, mem_space_id=288230376151711754,
    file_space_id=288230376151711755, dxpl_id=792633534417207304,
    buf=0xae203808, req=0x0)
    at ../../../vchoi_fork/src/H5VLnative_dataset.c:206
    mem_type_id=216172782113783837, mem_space_id=288230376151711754,
    file_space_id=288230376151711755, dxpl_id=792633534417207304,
    buf=0xae203808, req=0x0, cls=<optimized out>)
    at ../../../vchoi_fork/src/H5VLcallback.c:2152
    mem_type_id=216172782113783837, mem_space_id=288230376151711754,
    file_space_id=288230376151711755, dxpl_id=792633534417207304,
    buf=0xae203808, req=0x0) at ../../../vchoi_fork/src/H5VLcallback.c:2186
    mem_type_id=216172782113783837, mem_space_id=288230376151711754,
    file_space_id=288230376151711755, dxpl_id=792633534417207304,
    buf=0xae203808) at ../../../vchoi_fork/src/H5Dio.c:313
2020-07-07 12:57:39 -05:00
David Young
5493f4faac Fix a bug where I was trying to store ndatasets * 4 source-dataset
handles in 4 variables and, of course, failing.  Refactor the
dataspace/dataset initialization.
2020-07-07 12:56:03 -05:00
David Young
b9c2b8faff Fix a bug in H5D__virtual_write_one to stop an assertion from failing
deep in H5Dwrite---project the *clipped* virtual selection instead of
the virtual selection:

assertion "((src_space)->select.num_elem) == ((dst_space)->select.num_elem)"
failed: file "../../../vchoi_fork/src/H5Sselect.c", line 2617, function
"H5S_select_project_intersection"

with this backtrace:

    at /home/dyoung/plain-nbsd/src/lib/libc/gen/raise.c:48
    at /home/dyoung/plain-nbsd/src/lib/libc/stdlib/abort.c:74
    file=0xae9e3e80 "../../../vchoi_fork/src/H5Sselect.c", line=2617,
    function=0xae9e4ca0 <__func__.15686> "H5S_select_project_intersection",
    failedexpr=0xae9e0e54 "((src_space)->select.num_elem) ==
((dst_space)->select.num_elem)") at
/home/dyoung/plain-nbsd/src/lib/libc/gen/assert.c:72
    dst_space=0xae26f0dc, src_intersect_space=0xae0b577c,
    new_space_ptr=0xbfb85fac, share_selection=true)
    at ../../../vchoi_fork/src/H5Sselect.c:2749
    type_info=type_info@entry=0xbfb86084,
    file_space=file_space@entry=0xae0b577c, source_dset=0xae24741c,
    io_info=<optimized out>) at ../../../vchoi_fork/src/H5Dvirtual.c:2784
    type_info=0xbfb86084, nelmts=256, file_space=0xae0b577c,
    mem_space=0xae26ec8c, fm=0xadf0401c)
    at ../../../vchoi_fork/src/H5Dvirtual.c:2873
    mem_type_id=216172782113783837, mem_space=0xae26ec8c,
    file_space=0xae0b577c, buf=0xae203808)
    at ../../../vchoi_fork/src/H5Dio.c:780
    mem_type_id=216172782113783837, mem_space_id=288230376151711754,
    file_space_id=288230376151711755, dxpl_id=792633534417207304,
    buf=0xae203808, req=0x0)
    at ../../../vchoi_fork/src/H5VLnative_dataset.c:206
    mem_type_id=216172782113783837, mem_space_id=288230376151711754,
    file_space_id=288230376151711755, dxpl_id=792633534417207304,
    buf=0xae203808, req=0x0, cls=<optimized out>)
    at ../../../vchoi_fork/src/H5VLcallback.c:2152
    mem_type_id=216172782113783837, mem_space_id=288230376151711754,
    file_space_id=288230376151711755, dxpl_id=792633534417207304,
    buf=0xae203808, req=0x0) at ../../../vchoi_fork/src/H5VLcallback.c:2186
    mem_type_id=216172782113783837, mem_space_id=288230376151711754,
    file_space_id=288230376151711755, dxpl_id=792633534417207304,
    buf=0xae203808) at ../../../vchoi_fork/src/H5Dio.c:313
2020-07-07 12:52:00 -05:00
Larry Knox
da607fe463 Change load path in libhdf5_java.dylib to unversioned libhdf5.dylib for
junit tests on Macs.
2020-07-07 10:52:58 -05:00
Dana Robinson
d9105b2fcf Fixes Autotools builds on Solaris after monotonic timer changes
clock_gettime() wasn't being found, so some configure changes
were needed to set an appropriate POSIX level and use a C99
compiler. This required several compiler flag changes.

Autotools only
2020-07-06 19:22:26 -05:00
Allen Byrne
c80d6fe451 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'd52b27ad1d8142945a92310b79ab79171e76a3c3':
  Address CMake and deprecated API build failures from monotonic timer patch.
2020-07-03 13:56:43 -05:00
Quincey Koziol
d52b27ad1d Merge pull request #2673 in HDFFV/hdf5 from monotonic_timer_fix_01 to develop
* commit '13c9b3768e6193db89d06faf59194b77d7747f45':
  Address CMake and deprecated API build failures from monotonic timer patch.
2020-07-03 11:58:55 -05:00
Quincey Koziol
13c9b3768e Address CMake and deprecated API build failures from monotonic timer patch. 2020-07-03 11:28:12 -05:00
Allen Byrne
6b66c969f5 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '7443e5d53d1c6f15e095de7c44bcc3a5a46d9cf7':
  Add missing '"'.
2020-07-03 09:36:16 -05:00
Larry Knox
7443e5d53d Merge pull request #2672 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '870e3ba3f45e90a43ea824d67cc8562aa63a3f6f':
  Add missing '"'.
2020-07-02 18:49:36 -05:00
Larry Knox
870e3ba3f4 Add missing '"'. 2020-07-02 18:20:36 -05:00
David Young
f2305cfc67 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-07-02 14:57:06 -05:00
David Young
5cb598fb11 Use native byte order unless big-endian is specified with -b option. 2020-07-02 14:56:18 -05:00
Allen Byrne
5356fb1687 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '4c2071bfd3270dc3a688914b4a058147b94b7023':
  Lib files needed are now copied to a subdirectory in the java/test directory, and on Macs the loader path for libhdf5.xxxs.so is changed in the temporary copy of libhdf5_java.dylib. Fix for HDFFV-11063
2020-07-02 14:47:13 -05:00
Allen Byrne
4c2071bfd3 Merge pull request #2671 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '88e8597cdef826c1087e4ec1383657a91dcb2a43':
  Small changes discovered with mingw and windows defines moved
2020-07-02 14:46:43 -05:00
Larry Knox
68d6981156 Merge pull request #2670 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'fc69de0e8ae30e80c1c3c542b156226a75444525':
  Lib files needed are now copied to a subdirectory in the java/test directory, and on Macs the loader path for libhdf5.xxxs.so is changed in the temporary copy of libhdf5_java.dylib. Fix for HDFFV-11063
2020-07-02 14:14:53 -05:00
Allen Byrne
88e8597cde Small changes discovered with mingw and windows defines moved 2020-07-02 13:52:03 -05:00
Larry Knox
fc69de0e8a Lib files needed are now copied to a subdirectory in the java/test
directory, and on Macs the loader path for libhdf5.xxxs.so is changed
in the temporary copy of libhdf5_java.dylib.
Fix for HDFFV-11063
2020-07-02 11:29:12 -05:00
Quincey Koziol
d05b58b5d4 Merge pull request #2668 in HDFFV/hdf5 from monotonic_timer to develop
* commit '7371c83f9777b34b31909e99e052398b93c31bed':
  Remove non-existent example
  Add new source files to CMake build
  Clean up warnings
  va_arg -> HDva_arg
  Refactor code to remove remaining checks for H5_HAVE_GETTIMEOFDAY scattered around in various places.  Also clean up iopipe.c.
  Correct mistake in H5_now_usec calculation for clock_gettime.
  Remove detection for mach/mach/time.h, since we're no longer using the time routines from that header.
  Update H5_now_usec to prefer using clock_gettime.
  Changes to make timers within the library monotonic.
2020-07-02 10:36:44 -05:00
David Young
49bb232d6f Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-06-30 15:13:52 -05:00
David Young
6274081bdd Add a VDS mode to the bigset test. 2020-06-30 15:13:15 -05:00
Jake Smith
7cbb5fe2d1 Merge pull request #2669 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:bugfix/HDftell_macro_typo to develop
* commit 'ef05e68c38d2086c6f262744b4087f65a6e58957':
  Fix typo in HDftell macro definition: 'ftello -> ftell'
2020-06-30 13:36:01 -05:00
Quincey Koziol
7371c83f97 Remove non-existent example 2020-06-30 08:53:17 -05:00
Quincey Koziol
c005b8f52b Merge remote-tracking branch 'origin/develop' into monotonic_timer 2020-06-30 08:52:49 -05:00
Binh-Minh Ribler
267ff9065b Merge pull request #2609 in HDFFV/hdf5 from ~BMRIBLER/hdf5-bmr:develop to develop
Fix HDFFV-11053 (CVE-2020-10810)

* commit 'b155a777629e991374fa2f8609719cb861de4cc2':
  Changed wording in comment.
  - added comment to explain a kluge - added the associated entry to release notes
  Fix HDFFV-11053
2020-06-30 01:04:24 -05:00
Binh-Minh Ribler
b155a77762 Changed wording in comment. 2020-06-30 00:57:46 -05:00
Larry Knox
23cc4ce636 Merge pull request #2667 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '32c483cb86031962a09ecdb49dcb331d28dddee9':
  Copy lib files for junit.sh to temporary subdirectory of <build directory>/java/test instead of to the prefix/lib directory.  Fix for HDFFV-11063.
2020-06-29 21:18:27 -05:00
Binh-Minh Ribler
7c006fd761 - added comment to explain a kluge
- added the associated entry to release notes
2020-06-29 14:16:35 -05:00
Jacob Smith
ef05e68c38 Fix typo in HDftell macro definition: 'ftello -> ftell' 2020-06-29 12:09:07 -05:00
Binh-Minh Ribler
785a1cef0c Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '30776671fb0a27a98b0640aa968f850241a862ce': (31 commits)
  * Fix intermittent error with Splitter VFD.     Mismatch in time of test file creation was creating false negatives.
  Added note for HDFFV-10591.
  Fix HDFFV-10591
  Reduce overhead for H5open, which is involved in the public symbols like H5T_NATIVE_INT, etc.
  Remove unnecessary version conditions for Clang compilers.
  Fix for HDFFV-10961: Couple changes to the tests' usage output files for h5clear.
  Fix for HDFFV-10961: add description to usage for --increment option.
  Add c++ to --enable-sanitize-checks option.
  Remove duplicate entries in MANIFEST.
  Make changes to CMake CompilerFlags.cmake files so extra flags are loaded for non-GNU compilers.
  Fix MANIFEST
  Add tests for all version to H5_NO_DEPRECATED_SYMBOLS section and to section for current version, with and without default API version flags.
  HDFFV-11000:  update-testh5cc.sh.in to test sample versioned functions in HDF5 1.10, 1.12 and develop.
  Remember the info for the last ID looked up for a given ID type.
  Eliminate allocating file & memory offset & length arrays when performing I/O on a single element.
  Update new clang files to not pick up clang as vendor for pgCC. Add new files to MANIFEST Temporary demotion of 2 -Werror warning flags that fail on macos 10.12 Remove Production flag unknown to Apple clang.
  Remove redundant metadata cache tagging from some low-level internal chunk functions.  The metadata cache tagging has already been done by routines further up the call stack.
  Clean up code to get clang version in config/linux-gnulibc1
  Minor normalizations with HDF5 1.10.
  Add flags from config/clang-warnings/*general files to H5 C and CXX flags for all versions of Clang and Clang++ compilers. Switched from cut to awk in testcheck_version.sh.in to avoid dependence on tab vs. " " in version definitions in H5public.h.
  ...
2020-06-29 11:53:55 -05:00
Quincey Koziol
c5258211e7 Add new source files to CMake build 2020-06-27 22:14:52 -05:00
Quincey Koziol
71b601d0d3 Clean up warnings 2020-06-27 20:02:51 -05:00
Larry Knox
32c483cb86 Copy lib files for junit.sh to temporary subdirectory of <build
directory>/java/test instead of to the prefix/lib directory.  Fix for
HDFFV-11063.
2020-06-27 15:39:53 -05:00
Quincey Koziol
ee4eb09b5f va_arg -> HDva_arg 2020-06-27 13:44:24 -05:00
Quincey Koziol
ce50e34c58 Merge remote-tracking branch 'origin/develop' into monotonic_timer 2020-06-27 09:49:49 -05:00
Quincey Koziol
7bdab523b3 Refactor code to remove remaining checks for H5_HAVE_GETTIMEOFDAY scattered around in various places. Also clean up iopipe.c. 2020-06-27 09:47:55 -05:00
Quincey Koziol
e767f44e95 Merge remote-tracking branch 'origin/develop' into monotonic_timer 2020-06-26 18:57:38 -05:00
David Young
92cf20e865 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-06-26 16:43:43 -05:00
David Young
c6250072da Gather a couple of assertions. 2020-06-26 16:43:13 -05:00
David Young
26d5a950e8 Create one dataset creation property list and one file dataspace and
share them across all datasets/iterations.  Extract common code into
state_destroy().
2020-06-26 16:41:38 -05:00
David Young
ef699d8880 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-06-26 14:36:28 -05:00
David Young
bf4fca57f7 When extending the dataset in one dimension, add columns instead of rows
so that it's possible to produce a virtual dataset (VDS) variant of the
test.
2020-06-26 14:35:10 -05:00
vchoi
9f48f4e266 (1) Add public routines H5Fvfd_swmr_end_tick, H5Fvfd_swmr_disable_end_of_tick, H5Fvfd_swmr_enable_end_of_tick().
(2) Tests for the above APIs.
2020-06-26 14:18:19 -05:00
Jake Smith
30776671fb Merge pull request #2665 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:bugfix/splitter_file_bytes_check to develop
* commit 'e1215177b6b87887233a90992a0264f11d78b88c':
  * Fix intermittent error with Splitter VFD.     Mismatch in time of test file creation was creating false negatives.
2020-06-26 11:00:10 -05:00
Jacob Smith
e1215177b6 * Fix intermittent error with Splitter VFD.
Mismatch in time of test file creation was creating false negatives.

    Add file-duplication routine: `h5_duplicate_file_by_bytes()`.

* Change library calls in `h5test.c:h5_compare_file_bytes()` to their HD-prefixed equivalents.
2020-06-25 12:24:05 -05:00
vchoi
7d50012a40 (1) Add public routines H5Fvfd_swmr_end_tick, H5Fvfd_swmr_disable_end_of_tick, H5Fvfd_swmr_enable_end_of_tick().
(2) Tests for the above APIs.
2020-06-24 10:58:22 -05:00
David Young
5449b2af49 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-06-22 16:14:39 -05:00
David Young
d98d6746e0 Add/check a group attribute every so many steps. delete some dead code, and
set a non-zero default for the number of steps.
2020-06-22 16:12:41 -05:00
Binh-Minh Ribler
a08ab621fe Merge pull request #2654 in HDFFV/hdf5 from bmr_HDFFV-10591 to develop
Fixed HDFFV-10591

* commit '7d58d115079d286a566207c529e59bbccc952b03':
  Added note for HDFFV-10591.
  Fix HDFFV-10591
2020-06-21 22:48:21 -05:00
David Young
99245b55f3 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-06-19 17:04:33 -05:00
David Young
efd1c0a305 Extract common subexpressions into oent and nent for brevity.
Assert index entries are in sorted order earlier in the loop over
old and new indices.

When looping over the remaining new index entries, just do
`entries_added++` to match the other loops.

In the final log entry in H5F_vfd_swmr_reader_end_of_tick(), mention
whether the call will exit with success or failure.
2020-06-19 17:00:26 -05:00
David Young
2b1df16925 Make H5Drefresh() copy non-persistent properties---e.g., dataset access
property lists---from the closed dataset to the reopened dataset.  Now my
chunk-cache settings appear to survive H5Drefresh() calls.
2020-06-19 16:38:01 -05:00
David Young
bd87af0408 Create a dataset access property list (dapl) that disables the chunk cache and
apply it individually to each dataset instead of setting the chunk-cache
parameters on the file.  Alas, it didn't make any difference, but I'll keep the
change.
2020-06-19 16:34:53 -05:00
Binh-Minh Ribler
7d58d11507 Added note for HDFFV-10591. 2020-06-19 16:08:37 -05:00
Binh-Minh Ribler
c12da4884f Fix HDFFV-10591
Description:
    h52gif produced a segfault when a buffer overflow occurred because
    the data size was corrupted and became very large.  This commit added
    a check on the data size against the buffer size to prevent the segfault.
    It also added error reporting to h52gif to display an error message
    instead of silently exiting when the failure occurred.
Platforms tested:
    Linux/64 (jelly)
    SunOS 5.11 (emu)
2020-06-19 10:53:32 -05:00
Quincey Koziol
6ffe9af32f Merge pull request #2648 in HDFFV/hdf5 from opt_h5open_overhead to develop
* commit '49fad72f3e003e1e2d7d72edd9b7ec47c802d9f1':
  Reduce overhead for H5open, which is involved in the public symbols like H5T_NATIVE_INT, etc.
2020-06-18 15:19:24 -05:00
David Young
64cedaa228 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-06-17 10:24:16 -05:00
David Young
afd49812d5 On each SWMR VFD open for reading, keep a histogram for the number of
ticks elapsed during API calls.  Write the histogram to the swmr_stats
log outlet when the SWMR VFD closes.
2020-06-16 17:09:09 -05:00
David Young
a5afe927e1 Rename H5F__vfd_swmr_writer__create_index to H5F__vfd_swmr_create_index.
H5F_vfd_swmr_reader_end_of_tick: delete superfluous assertions and
extract a com mon subexpression into a H5FD_t * variable.

Carry on with HGOTO_ERROR() cleanup.  Delete superfluous parentheses to
reduce visual clutter.  Delete superfluous casts.  Delete out-of-date
comment: the index size is not fixed any longer.
2020-06-16 17:05:29 -05:00
David Young
8810656911 Delete superfluous casts. Remove superfluous backslashes and
statement-ify, changing

    HGOTO_ERROR(..., \
             )

to

    HGOTO_ERROR(...,
             );

Remove blank lines between if-clause and HGOTO_ERROR.  Add some curly
braces to if-statements where that clarifies things.

NFCI.
2020-06-16 16:58:30 -05:00
David Young
cb18697b3b Close all of the datasets we opened. 2020-06-16 16:53:15 -05:00
Quincey Koziol
49fad72f3e Reduce overhead for H5open, which is involved in the public symbols like H5T_NATIVE_INT, etc. 2020-06-16 12:30:08 -05:00
David Young
d20000ec51 Merge pull request #2610 in HDFFV/hdf5 from ~DYOUNG/werror:hdffv-11060-examples-destdir to develop
* commit '4cebd8aa6c965fe2e5dde6dbff36b2be3ca58bf1':
  Make examples installation respect DESTDIR.   Fixes HDFFV-11060.
2020-06-16 08:59:55 -05:00
Jake Smith
b718bf567f Merge pull request #2615 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:bugfix/splitter_valgrind_patch to develop
* commit '6462c67b6578e48c1ef6d847be59c0b5e3598a50':
  Patch a few holes in the Splitter VFD implementation.
2020-06-15 14:36:41 -05:00
Larry Knox
70011fbfcb Merge pull request #2646 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '998c6470d78e14228695419c3b514c35ecf3d69e':
  Remove unnecessary version conditions for Clang compilers.
2020-06-12 15:06:39 -05:00
Larry Knox
998c6470d7 Remove unnecessary version conditions for Clang compilers. 2020-06-12 11:54:58 -05:00
David Young
3fa6b2e09f Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-06-12 11:26:45 -05:00
David Young
625ef85fe5 Avoid leaving a v1 B-tree used as a chunk index in a bad state
that makes assertions fail.

Add an optional `close` method to the `H5D_chunk_ops_t`, and use that to
release "holds" on metadata cache (MDC) entries.

For extensible arrays and v2 B-trees, use the existing `dest`(roy)
method to implement `close`.  For v1 B-trees and other chunk indices,
don't provide `close`: we cannot safely close the v1 B-tree index, and
the other indices don't have a meaningful presence in the MDC.

Revert my first attempt at making v1 B-tree chunk indices closeable
with `dest`.

Put my comment about the stopgap fix for VFD SWMR at the right place
in src/H5Dchunk.c.
2020-06-12 11:24:27 -05:00
David Young
749a718c23 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-06-11 17:42:04 -05:00
David Young
ff43cd3631 Activate tests few_big and many_small, now that they pass. 2020-06-11 17:40:10 -05:00
David Young
8505c1262c Always restart H5C_evict_or_refresh_all_entries_in_page()'s scan of
the entries in a hash bucket after evicting tagged entries.  Evicting
tagged entries can can affect both entries before and after the current
entry in the bucket's linked list, so we cannot be sure that either
`entry_ptr` or `follow_ptr` is valid.

This stops the assertion (entry_ptr->page != page) ||
(entry_ptr->refreshed_in_tick == tick) from failing in the test
`testvfdswmr.sh many_small`.
2020-06-11 17:37:51 -05:00
David Young
b5d304acf6 Extract a subroutine that closes chunk indices,
H5D__chunk_index_close(), and call it in H5D__chunk_read() after reading
a chunked dataset.  In this way, indices based on extensible arrays and
v2 B-trees do not leave pinned/tagged entries in the metadata cache that
we cannot evict/refresh when we load changes from the shadow file.

Make some changes to the v1 B-tree code that set the pointer to the
closed B-tree to NULL and, further, tolerate a NULL pointer where
previously that was impossible.
2020-06-11 17:02:22 -05:00
Vailin Choi
f295ed1166 Merge pull request #2643 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10961-h5clear-usage-statement-give to develop
* commit '01b632c69ca1c97c2b0e1aaeeab1dd2362b580a6':
  Fix for HDFFV-10961: Couple changes to the tests' usage output files for h5clear.
  Fix for HDFFV-10961: add description to usage for --increment option.
2020-06-11 16:30:42 -05:00
David Young
ff8f7e6da4 Limit every chunk cache to 1 slot and 1kB so that the test doesn't run
my dinky development server out of memory.
2020-06-11 16:24:30 -05:00
David Young
56bc1ea535 Make the test more challenging: on every other step, read a chunk-sized
region offset by 1 unit from a chunk boundary.
2020-06-11 16:23:09 -05:00
David Young
57fde42f7d Wrap a line. NFCI. 2020-06-11 16:21:52 -05:00
David Young
5cde36e2cd Delete code that has no effect: don't empty a mask set only to fill it
in the next expression.
2020-06-11 16:20:46 -05:00
vchoi
01b632c69c Fix for HDFFV-10961:
Couple changes to the tests' usage output files for h5clear.
2020-06-11 14:12:38 -05:00
vchoi
c597bd50d2 Fix for HDFFV-10961: add description to usage for --increment option. 2020-06-11 13:17:35 -05:00
Larry Knox
3650841a0a Merge pull request #2636 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:HDFFV-11000-update-testh5cc.sh.in-for-version to develop
* commit '5c0bd670d6e9919c463fbc05de99e2ba55b0761e':
  Add tests for all version to H5_NO_DEPRECATED_SYMBOLS section and to section for current version, with and without default API version flags.
  HDFFV-11000:  update-testh5cc.sh.in to test sample versioned functions in HDF5 1.10, 1.12 and develop.
2020-06-10 20:15:41 -05:00
Larry Knox
1e6b6b4bc6 Merge pull request #2639 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'a33667faf226f5d8c9633bf537893e8fce1bf1f6':
  Add c++ to --enable-sanitize-checks option.
2020-06-10 18:53:45 -05:00
buildbot
a33667faf2 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2020-06-10 16:53:59 -05:00
buildbot
715055bfdd Add c++ to --enable-sanitize-checks option. 2020-06-10 16:52:46 -05:00
Larry Knox
a56da14860 Merge pull request #2633 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '20eab963899841c9a003baebead8e3bc07d9e127':
  Remove duplicate entries in MANIFEST.
  Make changes to CMake CompilerFlags.cmake files so extra flags are loaded for non-GNU compilers.
  Update new clang files to not pick up clang as vendor for pgCC. Add new files to MANIFEST Temporary demotion of 2 -Werror warning flags that fail on macos 10.12 Remove Production flag unknown to Apple clang.
2020-06-10 15:18:36 -05:00
Larry Knox
20eab96389 Remove duplicate entries in MANIFEST. 2020-06-10 15:17:32 -05:00
Larry Knox
63f1a713cc Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '7f0c0134166275c0745e0e65f9d81b4de72d5ce2':
  Fix MANIFEST
  Remember the info for the last ID looked up for a given ID type.
  Eliminate allocating file & memory offset & length arrays when performing I/O on a single element.
  Remove redundant metadata cache tagging from some low-level internal chunk functions.  The metadata cache tagging has already been done by routines further up the call stack.
2020-06-10 15:12:58 -05:00
Dana Robinson
7f0c013416 Merge pull request #2637 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '1e038bf49588d163762965c7a15fb76e3a689ef2':
  Fix MANIFEST
2020-06-10 14:30:21 -05:00
Larry Knox
77efb340a1 Make changes to CMake CompilerFlags.cmake files so extra flags are
loaded for non-GNU compilers.
2020-06-10 14:25:10 -05:00
Dana Robinson
1e038bf495 Fix MANIFEST 2020-06-10 11:40:59 -07:00
Quincey Koziol
02aea018a1 Merge pull request #2635 in HDFFV/hdf5 from cache_last_id_info to develop
* commit '0ef32f07fb9e8fb6063f3318425506047454d6f4':
  Remember the info for the last ID looked up for a given ID type.
2020-06-10 13:32:14 -05:00
Quincey Koziol
030cd9fab5 Merge pull request #2634 in HDFFV/hdf5 from opt_single_selection_io to develop
* commit 'a8a4e9f27b67ae2e22970e42859225adcc2e5cbb':
  Eliminate allocating file & memory offset & length arrays when performing I/O on a single element.
2020-06-10 13:31:30 -05:00
Quincey Koziol
04ed567bd7 Merge pull request #2632 in HDFFV/hdf5 from remove_redundant_chunk_tags to develop
* commit '9e8899c3b47a2041242dc4539ca8b1c5e151a371':
  Remove redundant metadata cache tagging from some low-level internal chunk functions.  The metadata cache tagging has already been done by routines further up the call stack.
2020-06-10 13:31:12 -05:00
Larry Knox
5c0bd670d6 Add tests for all version to H5_NO_DEPRECATED_SYMBOLS section
and to section for current version, with and without default
API version flags.
2020-06-10 09:41:07 -05:00
Larry Knox
e66cec6222 HDFFV-11000: update-testh5cc.sh.in to test sample versioned functions
in HDF5 1.10, 1.12 and develop.
2020-06-09 22:11:25 -05:00
Quincey Koziol
0ef32f07fb Remember the info for the last ID looked up for a given ID type. 2020-06-09 18:38:04 -05:00
Quincey Koziol
a8a4e9f27b Eliminate allocating file & memory offset & length arrays when performing I/O on a single element. 2020-06-09 16:24:48 -05:00
Larry Knox
32c353ed43 Update new clang files to not pick up clang as vendor for pgCC.
Add new files to MANIFEST
Temporary demotion of 2 -Werror warning flags that fail on macos 10.12
Remove Production flag unknown to Apple clang.
2020-06-09 16:12:31 -05:00
Quincey Koziol
9e8899c3b4 Remove redundant metadata cache tagging from some low-level internal chunk functions. The metadata cache tagging has already been done by routines further up the call stack. 2020-06-09 15:48:14 -05:00
David Young
f8a26a86c6 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-06-08 17:48:36 -05:00
David Young
4351ad6c4e Only remove shadow-index entries in H5PB__evict_entry() if we're a
VFD SWMR writer, so that the reader does not lose track of the real
shadow-index content.
2020-06-08 17:47:17 -05:00
Larry Knox
bc51dea95a Merge pull request #2631 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'b942a4d8a3e27317cac50ce37ff5302d477664d8':
  Clean up code to get clang version in config/linux-gnulibc1
2020-06-08 16:24:49 -05:00
Larry Knox
b942a4d8a3 Clean up code to get clang version in config/linux-gnulibc1 2020-06-08 15:52:13 -05:00
Larry Knox
23d887dc22 Merge pull request #2623 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'c7626f79fdee4eee13925e240ef41e61f3367eab':
  Add flags from config/clang-warnings/*general files to H5 C and CXX flags for all versions of Clang and Clang++ compilers. Switched from cut to awk in testcheck_version.sh.in to avoid dependence on tab vs. " " in version definitions in H5public.h.
  Add files for adding warning flags for clang compilers in autotools configure.
2020-06-08 11:42:37 -05:00
Dana Robinson
56ab55be3f Merge pull request #2630 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '87695c999ad7ea348ee6dc03b46b0bd345f7d7df':
  Minor normalizations with HDF5 1.10.
2020-06-08 08:27:52 -05:00
Larry Knox
c7626f79fd Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'aa338c3a87a4544ccb164832422e3e2462a57b88':
  Detect when there's the same-shaped selection of a single block of elements on both selections, but with different selection types (i.e. one selection defined as an 'all' type and the other as a hyperslab or point type), without falling into the generic selection iteration case.
  Normalization of H5T.c with 1.10.
  Normalization of H5D.c with 1.10.
2020-06-07 15:37:38 -05:00
Dana Robinson
87695c999a Minor normalizations with HDF5 1.10. 2020-06-07 03:12:36 -07:00
Larry Knox
de9491e365 Add flags from config/clang-warnings/*general files to H5 C and CXX flags for all versions of Clang and Clang++ compilers.
Switched from cut to awk in testcheck_version.sh.in to avoid dependence
on tab vs. " " in version definitions in H5public.h.
2020-06-06 14:36:44 -05:00
Quincey Koziol
aa338c3a87 Merge pull request #2626 in HDFFV/hdf5 from tiny_shape_same_opt to develop
* commit 'de54cff50c419751e0080b6a732facac43f87ba6':
  Detect when there's the same-shaped selection of a single block of elements on both selections, but with different selection types (i.e. one selection defined as an 'all' type and the other as a hyperslab or point type), without falling into the generic selection iteration case.
2020-06-06 10:06:04 -05:00
Quincey Koziol
de54cff50c Detect when there's the same-shaped selection of a single block of elements on
both selections, but with different selection types (i.e. one selection defined
as an 'all' type and the other as a hyperslab or point type), without falling
into the generic selection iteration case.
2020-06-05 12:36:20 -05:00
Dana Robinson
8a2c6d868b Merge pull request #2625 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'e22d126639e139518e4b5f1ac35a008ec429f698':
  Normalization of H5T.c with 1.10.
  Normalization of H5D.c with 1.10.
2020-06-04 11:26:19 -05:00
Dana Robinson
e22d126639 Normalization of H5T.c with 1.10. 2020-06-03 23:34:16 -07:00
Dana Robinson
a0d9959b43 Normalization of H5D.c with 1.10. 2020-06-03 23:07:14 -07:00
David Young
05dafca8e0 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-06-03 15:25:03 -05:00
David Young
052257ec62 Delete unused variables and struct members. 2020-06-03 15:24:15 -05:00
David Young
8e8cece303 Be concise and more obviously correct, and knock many line widths
below than 80 columns: use the malloc idiom,

```
type *p;

p = malloc(sizeof(*p));
```

instead of

```
type *p;

p = (type *)malloc(sizeof(type));
```

Make a similar change to some `memset` calls.  NFCI.
2020-06-03 15:21:54 -05:00
David Young
1f488a60e6 If we're processing the EOT queue when we *enter* a function, use
HGOTO_ERROR() instead of HDONE_ERROR() so that we jump to the `done`
label right away.  This ought to fix the problem Vailin was seeing,
where the library left H5F_vfd_swmr_reader_end_of_tick() prematurely for
seemingly no reason.
2020-06-03 15:18:29 -05:00
David Young
5a3f7830db Improve debug output: when the lower file's shadow file image moves,
tell old and new shadow file offset.
2020-06-03 15:17:05 -05:00
David Young
01cf824faa Add a label, addr, to an HDF5 file address in debug output. 2020-06-03 15:16:13 -05:00
Larry Knox
f7bc306c19 Add files for adding warning flags for clang compilers in autotools
configure.
2020-06-02 15:53:58 -05:00
Quincey Koziol
0b9979f075 Merge pull request #2622 in HDFFV/hdf5 from fix_h5doappend to develop
* commit 'c6b836527f31a731e022083ebe1b9b18f8cdd29a':
  Eliminate unneccesary creation of DXPL
2020-06-02 15:16:46 -05:00
Quincey Koziol
c6b836527f Eliminate unneccesary creation of DXPL 2020-06-02 14:34:00 -05:00
Dana Robinson
1c8b4e9fab Merge pull request #2621 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'cc15d1039af86deb77c9dc9188412ce361599b17':
  Normalizations with 1.10 branch.
2020-06-02 09:57:19 -05:00
Dana Robinson
cc15d1039a Normalizations with 1.10 branch. 2020-06-02 07:33:00 -07:00
Dana Robinson
1007702f87 Merge pull request #2619 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '5f0eed3fdc4fff9b714b5aa3d0d43114a95c0f29':
  Normalization with hdf5_1_10
2020-06-01 15:03:33 -05:00
Dana Robinson
5f0eed3fdc Normalization with hdf5_1_10 2020-06-01 11:37:52 -07:00
Jacob Smith
6462c67b65 Patch a few holes in the Splitter VFD implementation.
* Missing logfile close on driver-open failure.
* Initialize empty string in test/vfd (logfile path in W/O compat check).
2020-05-29 14:27:14 -05:00
David Young
44c114017e Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-05-29 12:46:50 -05:00
David Young
6e23b5d263 In H5FD_vfd_swmr_read(), log on outlet swmr_read whether the read is
satisfied from the lower file or the shadow file.
2020-05-29 12:46:04 -05:00
David Young
7bfba8aa39 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-05-28 15:49:12 -05:00
David Young
7ecf5d5466 Perform a test where a writer creates 10,000 groups while a reader waits for
each to appear.

Add but do not yet perform tests on many small extensible datasets and a few
big extensible datasets.  Vailin is working on a bug that causes both tests to
fail virtually always.
2020-05-28 15:36:39 -05:00
David Young
5c534e41b6 If there were hard errors, report any soft errors, too. 2020-05-28 15:36:21 -05:00
David Young
1410aa21a0 Straggler from previous: don't count errors *and* exit, just count. 2020-05-28 15:35:42 -05:00
David Young
47890e826f A zoo error is not a soft error. Count it as a hard error instead of a soft
error.
2020-05-28 15:34:31 -05:00
David Young
91d388a41c Don't count up errors *and* exit right away when there is an error. Just
count.
2020-05-28 15:33:41 -05:00
David Young
cb73324ce5 Disable the error-stack printing around the H5Gopen() call that we know will
sometimes fail.
2020-05-28 15:31:51 -05:00
Dana Robinson
f745476aa5 Merge pull request #2611 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '6358a2749899948f2cd03d0ce76e5a5e61666a74':
  Minor tweaks to testhdf5 code after normalization with 1.10.
2020-05-28 07:12:07 -05:00
Dana Robinson
6358a27498 Minor tweaks to testhdf5 code after normalization with 1.10. 2020-05-27 17:41:59 -07:00
David Young
a9ad156810 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-05-27 10:48:53 -05:00
David Young
f8d469ca38 Add a test writer that creates groups under the root and a reader that polls
until all of the expected groups appear.
2020-05-27 10:47:04 -05:00
David Young
56fd83f66a Delete unused state_t members. NFCI. 2020-05-27 10:31:02 -05:00
Dana Robinson
e28216f023 Merge pull request #2608 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '03ab219996e562502e90c508e669141b0e601e54':
  Removed trailing space from Fortran files.
2020-05-26 23:11:18 -05:00
David Young
6759aaa012 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-05-26 16:32:10 -05:00
David Young
1280b34b7f Join some lines. NFCI. 2020-05-26 16:31:29 -05:00
David Young
38e959b2f2 Add -a steps option and if steps != 0, then add (or verify) an attribute on
each dataset every `steps` steps.

Update usage message.

Add a cast to `time_t` to quiet a compiler warning.

Replace two occurrences of a debug statement in `verify_extensible_dset()` with
one occurrence in `verify_chunk()`.

Replace the anonymous constant `2` with `hang_back` and increase `hang_back` to
3.  XXX Now that I've fixed a bug, reduce `hang_back` to 2, again.

Verify datasets in the reverse of the order they are written so that we spend
less time re-verifying datasets written in the same step.
2020-05-26 16:30:46 -05:00
Dana Robinson
03ab219996 Removed trailing space from Fortran files. 2020-05-26 14:01:09 -07:00
David Young
cd0eaf6271 Cast a non-negative int to size_t before comparing with size_t so that
the compiler believes we know what we're doing and does not warn.
2020-05-26 15:48:17 -05:00
David Young
132f0f6ce2 We don't write through the metadata accumulator any more. We only write
through the lower VFD.  Update error message to match.
2020-05-26 15:46:47 -05:00
Binh-Minh Ribler
7a4d7da14a Fix HDFFV-11053
Description:
    A superblock pointer was set to a temporary structure, as a kluge,
    and meant to be reset back to NULL after the processing was completed.
    However, in the case of failure before the completion, this setting
    caused the superblock pointer to be unpinned twice in the error
    recovery process.  As a result, that generated a segfault in h5clear.
    The fix resets the superblock pointer to NULL after H5F__super_ext_remove_msg
    fails so that h5clear can fail properly.

    Note: After the fix, when built in debug mode, there will be an
    assertion failure with the user's file, which appeared to be corrupted:
H5MM_final_sanity_check: Assertion `0 == H5MM_curr_alloc_bytes_s' failed.

    This did not happen on a good file or on the corrupted file with the
    library built in production mode.  The un-freed memory were allocated
    during error recovery.
Platforms tested:
    Linux/64 (jelly)
2020-05-26 15:39:39 -05:00
David Young
e917d66df6 Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mine 2020-05-26 13:14:20 -05:00
David Young
d46b2c5afb When a checksum fails, indicate the address and size of the affected metadata. 2020-05-26 13:11:33 -05:00
David Young
cc58a22b37 Reduce differences with may-merge-mainzer-to-mine. 2020-05-26 13:10:39 -05:00
David Young
cc28a6c67a On the VFD SWMR branches, treat warnings as errors. 2020-05-26 13:09:09 -05:00
David Young
a6d88e2b81 When the new index is bigger than the old, invalidate all of the pages affected
by the added entries.  This fixes a bug in the vfd_swmr_bigset_writer/_reader
test, where the reader would read metadata with a bad checksum.  This may also
fix an error that Vailin is seeing.
2020-05-26 13:06:06 -05:00
David Young
4cebd8aa6c Make examples installation respect DESTDIR. Fixes
HDFFV-11060.
2020-05-26 10:43:20 -05:00
David Young
eeda47bcf6 Reduce differences with pre-rebase state. 2020-05-21 09:55:56 -05:00
mainzer
18dab4e576 Modified page buffer to split entries only where necessary -- specifically
when handling an I/O request on a metadata entry that has been sub-allocated
from a larger file space allocation (i.e. fixed and extensible array), and
that crosses at least one page boundary.  .

This required modifying the metadata cache to provide the type of the
metadata cache entry in the current I/O request.  For now, this is done
with a function call.  Once we are sure this works, it may be appropriate
to convert this to a macro, or to add a flags parameter to the H5F block
read/write calls.

Also updated the metadata cache to report whether a read request is
speculative -- again via a function call.  This allowed me to remove
the last address static variable in the H5PB_read() call, which is
necessary to support multiple files opened in VFD SWMR mode.

Also re-wrote the H5PB_remove_entries() call to handle release
of large metadata file space allocations that have been sub-allocated
into multiple metadata entries.  Also modified the call to
H5PB_remove_entries() in H5MF__xfree_impl() to invoke it whenever
the page buffer is enabled and the size of the space to be freed is
of page size or larger.

Tested serial / debug on charis and Jelly.

Found a bug in H5MF_xfree_impl(), in which the call to H5PB_remove_entries()
is skipped due to HGOTO_DONE calls earlier in the function.  While the
obvious action is to move the call earlier in the function, best to
consult with Vailin first, as there is much going on and it would be
best to avoid making the situation worse.  If nothing else, there are
some error management issues.
2020-05-21 09:51:39 -05:00
David Young
d5ad503cfe and vfd_swmr_reader_did_increase_tick_to declarations. 2020-05-20 12:06:58 -05:00
David Young
168858b9a1 Rebase repair: do not list any VFD SWMR source files twice. 2020-05-20 12:06:33 -05:00
David Young
abced7dc4e Rebase repair: add stubs.c back to the test library sources. 2020-05-20 12:06:00 -05:00
David Young
b5ec806496 Reduce diffs with develop. 2020-05-20 09:37:22 -05:00
David Young
0750c5bded Reduce diffs with develop. 2020-05-20 09:37:22 -05:00
David Young
cf4d51f2d3 Reduce diffs with develop. 2020-05-20 09:37:22 -05:00
David Young
9eb33fe812 Reduce diffs with develop, where H5C_move_entry takes an H5C_t *
argument, first, not `H5F_t *`.
2020-05-20 09:37:22 -05:00
David Young
95c57f07bc Reduce diffs with develop. 2020-05-20 09:37:22 -05:00
David Young
dcb9aa4518 Reduce diffs with develop. 2020-05-20 09:37:22 -05:00
David Young
b4492dba50 Reduce diffs with develop. 2020-05-20 09:37:22 -05:00
David Young
7f0d3f431e Reduce diffs with develop. 2020-05-20 09:37:22 -05:00
David Young
eae6bb5efd Reduce diffs with develop. 2020-05-20 09:37:22 -05:00
David Young
19a6976899 Make sure to initialize vfd_info.fname. 2020-05-20 09:37:22 -05:00
David Young
dd31948823 Reduce diffs with develop. 2020-05-20 09:37:22 -05:00
David Young
c54c92bf13 Use new style of error reporting. 2020-05-20 09:37:21 -05:00
David Young
f8096dcea3 Use H5_ATTR_NDEBUG_UNUSED instead of H5_ATTR_SANITY_CHECK. 2020-05-20 09:37:21 -05:00
David Young
e083b2834e Be sure to fill the fname field in vfd_info. 2020-05-20 09:37:21 -05:00
David Young
975fc23fb4 Use the write name for the VFD index, SWMR_IDX -> SWMR_VFD_IDX. 2020-05-20 09:37:21 -05:00
David Young
25585400e6 Repair a bunch of H5_ATTR_SANITY_CHECK uses that should have been
H5_ATTR_NDEBUG_UNUSED.  This really makes me wonder what else I have
screwed up in this merge....
2020-05-20 09:37:21 -05:00
David Young
3de98efff8 Fix tools compilation. 2020-05-20 09:37:20 -05:00
David Young
d91b9f9b0a Fix compilation: use H5Oget_info() instead of specifying the version
(H5O_getinfo2).
2020-05-20 09:37:20 -05:00
David Young
0103e8f1e0 Move declarations before statements, ugh. 2020-05-20 09:37:20 -05:00
Dana Robinson
13bbc96261 Replaced a few calls to HDmemcpy with H5MM_memcpy, which does overlap
checking.
2020-05-20 09:37:20 -05:00
Dana Robinson
29fca624e5 Misc warning fixes. 2020-05-20 09:37:20 -05:00
Dana Robinson
ef51913e29 Removed HDgets macros since gets was deprecated in C99 and removed
in C11 (gets() is not used in our repo).
2020-05-20 09:37:20 -05:00
Allen Byrne
a809ab0285 Comment out pull-request action and enable fail fast 2020-05-20 09:37:20 -05:00
Allen Byrne
ca0df1b87e Correct filename 2020-05-20 09:37:20 -05:00
Allen Byrne
c04878cbf2 Change to use alias 2020-05-20 09:37:20 -05:00
Allen Byrne
981ff81e37 Fix name setting 2020-05-20 09:37:20 -05:00
Allen Byrne
71a0b376d1 OESS-65 fix packaging config files 2020-05-20 09:37:20 -05:00
Allen Byrne
60f84d1b85 Correct path 2020-05-20 09:37:20 -05:00
Allen Byrne
2a7df0f50c Correct step name 2020-05-20 09:37:20 -05:00
Allen Byrne
2d07dba725 Correct test 2020-05-20 09:37:20 -05:00
Allen Byrne
a8a31334a1 Add github actions 2020-05-20 09:37:20 -05:00
Quincey Koziol
a96e6246d0 Align contents of CMake and autotools testfile cleanup lists. 2020-05-20 09:37:20 -05:00
Quincey Koziol
4ad7dca124 Avoid allocating a chunk index for datasets with 0-sized dimensions, until
the dataset is extended.
2020-05-20 09:37:20 -05:00
Dana Robinson
7fa219e204 Protected H5Oset_comment() in h5dump test generator.
(Assumes environment variable overrides default VOL connector)
2020-05-20 09:37:20 -05:00
Quincey Koziol
82e3368f78 Range check # of 'extra' command-line parameters against array size. 2020-05-20 09:37:20 -05:00
Quincey Koziol
2eec9f839b Refactor "extra" command-line arguments, and clean up code so the tool doesn't
assert when exiting.
2020-05-20 09:37:20 -05:00
Quincey Koziol
828504f46a Extend h5debug to support 3-D datasets for chunks. 2020-05-20 09:37:20 -05:00
Jordan Henderson
3454833bf7 Fix memory error in h5dump xml 'escape the string' routine 2020-05-20 09:37:20 -05:00
Dana Robinson
aa30bd054d Fixed pio_perf const pointers. 2020-05-20 09:37:20 -05:00
Dana Robinson
6eebd57742 Further updates to the tools warnings fixes from code review. 2020-05-20 09:37:20 -05:00
Dana Robinson
e0d954f845 Updates to tools warning PR from code review. 2020-05-20 09:37:20 -05:00
Dana Robinson
3efed9c111 Fixes for warnings in the tools code. 2020-05-20 09:37:20 -05:00
Dana Robinson
97431e256b Moved -Woverlength-strings to the developer flags. 2020-05-20 09:37:19 -05:00
Allen Byrne
d90b2ae7e2 Add "override with" to error message 2020-05-20 09:37:19 -05:00
Allen Byrne
6e84122833 HDFFV-10576 add Option name to Error Message 2020-05-20 09:37:19 -05:00
Allen Byrne
5383152d67 Restrict errors to gcc 4.8 and above. 2020-05-20 09:37:19 -05:00
David Young
1cff43a935 For compatibility with non-C99 Visual Studio versions, use "%" PRIuMAX
instead of "%ju".
2020-05-20 09:37:19 -05:00
David Young
0f2bc7d918 Fix `test/swmr_sparse_reader.c:118:77: error: cast from pointer
to integer of different size [-Werror=pointer-to-int-cast]` and
`test/snapshots-hdf5/current/test/swmr_sparse_reader.c:129:100:
error: cast from pointer to integer of different size
[-Werror=pointer-to-int-cast]`.
2020-05-20 09:37:19 -05:00
David Young
c506a1f435 Fix `src/H5FDdirect.c:1346:5: error: ISO C90 forbids mixed declarations
and code [-Werror=declaration-after-statement]`.
2020-05-20 09:37:19 -05:00
Allen Byrne
b5481fac24 Fix NoFilter build 2020-05-20 09:37:19 -05:00
Allen Byrne
117ead60a3 TRILAB-244 separate CXX warnings and errors from C 2020-05-20 09:37:19 -05:00
Larry Knox
68e1561d87 Add missing ')'. 2020-05-20 09:37:19 -05:00
Larry Knox
8767748f87 Add C++ warnings treated as error for autotools builds. 2020-05-20 09:37:19 -05:00
Larry Knox
7fd40ef81e Move macro ADD_H5_CFLAGS to cmake_ext_mod/HDFMacros.cmake and remove
duplicate versions.
2020-05-20 09:37:19 -05:00
Larry Knox
38abd125c1 Address PR suggestions and add overlooked GCC compiler version flags. 2020-05-20 09:37:19 -05:00
Larry Knox
76af1a4b5f Don't add general warnings flags for unsupported old versions of gcc and
g++ (older than gcc/g++ 4.2).
Correct gnu-cxxflags to determine warnings flags to be added based on
C++ compiler version instead of C compiler version.
2020-05-20 09:37:19 -05:00
Allen Byrne
9b21908223 Remove old szip line 2020-05-20 09:37:19 -05:00
Dana Robinson
2f5d6bac34 Fixed h5diff command-line parameters to use 1 and 2 instead of src
and dst.
2020-05-20 09:37:19 -05:00
Dana Robinson
957e4eba9c Added VOL command-line options to (p)h5diff, h5ls, h5dump, and h5mkgrp. 2020-05-20 09:37:19 -05:00
Allen Byrne
7381bea1e8 OESS-65 add option to use AEC library in place of SZip 2020-05-20 09:37:19 -05:00
Dana Robinson
ce4be694e8 Separated VFD and VOL parameters in tools. 2020-05-20 09:37:19 -05:00
Quincey Koziol
d35daa45e9 Trim trailing whitespace 2020-05-20 09:37:19 -05:00
Dana Robinson
071fe1dc39 Fixed some minor cmp callback bugs and cleaned warnings. 2020-05-20 09:35:18 -05:00
Dana Robinson
58dfaafcce Fixed problems with S3 and HDFS VFDs.
* Updated info struct parameter to correct info_string
* Fixed Makefile.am where the S3 VFD was listed twice, causing
  duplicated symbols errors.
2020-05-20 09:35:18 -05:00
Dana Robinson
6609048ecf Update h5repack long arguments for id-->value changes. 2020-05-20 09:34:20 -05:00
Dana Robinson
755971029c Changed identifiers and command-line options from "id" to "value" in tools
code to be in agreement with H5VL API terminology.
2020-05-20 09:34:20 -05:00
Allen Byrne
aea3232b32 TRILAB-192 version of std=f2008 special check 2020-05-20 09:34:20 -05:00
Allen Byrne
21de7f2818 Fix shadowed type 2020-05-20 09:34:20 -05:00
Allen Byrne
8521689caa TRILAB-192 - cleanup edits and match CMake CXX to autotools 2020-05-20 09:34:20 -05:00
Jacob Smith
094effdf0d Add enable-mirror-vfd flag to configure options. 2020-05-20 09:34:20 -05:00
Jacob Smith
a3f6f24c82 Tidying of Mirror VFD.
* Rename server-stop utility to mirror_server_stop.
* Remove external dependency on bzero().
* Modify test/use_common to use only the public API.
* Rename internal bitswap macro to follow convention.
2020-05-20 09:34:20 -05:00
Jacob Smith
3bc8877513 Add function header comment for mirror_writer:run_writer(). 2020-05-20 09:34:20 -05:00
Jacob Smith
b11015c4cc Add Splitter VFD to library.
* "Simultaneous and equivalent" Read-Write and Write-Only channels for
  file I/O.
* Only supports drivers with the H5FD_FEAT_DEFAULT_VFD_COMPATIBLE flag for
  now, preventing issues with multi-file drivers.

Add Mirror VFD to library.

* Write-only operations over a network.
* Uses TCP/IP sockets.
* Server and auxiliary server-shutdown programs provided in a new directory,
  `utils/mirror_vfd`.
* Automated testing via loopback ("remote" of localhost).
2020-05-20 09:34:20 -05:00
Larry Knox
333388c744 Add missing " and update function calls incorrectly named
load_gcc_arguments.
2020-05-20 09:31:58 -05:00
Allen Byrne
481e3aff7c TRILAB-192 update LTparse files 2020-05-20 09:31:58 -05:00
Dana Robinson
59d1a0e7a1 Added support for passing connector info strings via the command
line to the tools internals.
2020-05-20 09:31:58 -05:00
Dana Robinson
55e2b3170e Fix for passthrough VOL not passing tools tests due to incorrect
optional callback queries.
2020-05-20 09:31:58 -05:00
Larry Knox
9c8ec41791 Update all load_gcc_arguments to load_gnu_arguments.
Fixes TRILAB-212.
2020-05-20 09:31:58 -05:00
vchoi
5aa4de3c32 Fix according to PR feedback. 2020-05-20 09:31:58 -05:00
vchoi
8754e38ce7 Fix an error in previous merge: should use NULL instead of FAIL. 2020-05-20 09:31:58 -05:00
Larry Knox
74fdd50f59 Squashed commit of the following:
commit 8963c3bf756f8f8ec21beea9bd29a767e77675a8
Author: Larry Knox <lrknox@hdfgroup.org>
Date:   Wed Apr 8 16:52:27 2020 -0500

    Commit changes to gnu-cxxflags to remove unmatched " and to gnu-fflags
    to not add C warnings flags to H5_FCFLAGS.
2020-05-20 09:31:58 -05:00
Larry Knox
01a152f83c Add \d to list of characters allowed after '-' in versions. 2020-05-20 09:31:58 -05:00
Jordan Henderson
14bb06448b Fix memory leak in t_span_tree.c test 2020-05-20 09:31:58 -05:00
Allen Byrne
b46882fb0a Hide Frortran directive warnings 2020-05-20 09:31:58 -05:00
Dana Robinson
da9752598f Updated test ddl files so CMake passes after h5dump failures. 2020-05-20 09:31:58 -05:00
vchoi
9c153cce90 Modifications based on PR review feedback. 2020-05-20 09:31:58 -05:00
vchoi
517d630718 Add two routines gen_ref_files() and gen_sel_files() to generate test files related to
references and selections.
These test files will be copied to 1.12, 1.10 and 1.8 for compatibility testing.
2020-05-20 09:31:58 -05:00
Allen Byrne
dc86e0ec5d Remove flag from gfort-general in gfort-5, add /EHsc to Win C++ 2020-05-20 09:31:58 -05:00
Allen Byrne
af99886167 Update printf pointer syntax and revert fortran to f2003 2020-05-20 09:31:58 -05:00
Allen Byrne
ca81ce29fb Reduce window fortran standard to f90 2020-05-20 09:31:58 -05:00
Dana Robinson
503720de02 Updated tools dump output when dataset offset is undefined. 2020-05-20 09:31:58 -05:00
Dana Robinson
12ecc595d8 Added checks for native optional call support in some of the tools. 2020-05-20 09:31:57 -05:00
Dana Robinson
2001e80bb2 Misc changes for h5dump VOL changes. 2020-05-20 09:31:57 -05:00
Scot Breitenfeld
3ecdd3c0f9 Narrowed the scope of ISO_C_BINDING with ONLY additions 2020-05-20 09:31:57 -05:00
Allen Byrne
e9f711699d Minor updates and fix settings for fortran flags 2020-05-20 09:31:57 -05:00
Allen Byrne
f2ae83054a Update intel flags 2020-05-20 09:31:57 -05:00
Allen Byrne
269478552f Fix missing endif 2020-05-20 09:31:57 -05:00
Allen Byrne
c56d76e122 Correct improper file move 2020-05-20 09:31:57 -05:00
Allen Byrne
e1db7ff410 Move intel warnings to subfolder, update autotools files 2020-05-20 09:31:57 -05:00
Allen Byrne
f94696a662 Corrected note 2020-05-20 09:31:57 -05:00
Allen Byrne
a35379b296 Remove overzealous additions 2020-05-20 09:31:57 -05:00
Allen Byrne
c178ec429e Correct whitespace in flags, force list mode 2020-05-20 09:31:57 -05:00
Allen Byrne
75b878326d Flag construction must be after compiler detection 2020-05-20 09:31:57 -05:00
Jordan Henderson
8d9323aab7 Skip testing of passthrough VOL connector in a Family File tools test 2020-05-20 09:31:57 -05:00
Jordan Henderson
1a1343cb19 Restore previous tools library driver name behavior with passthrough VOL connector 2020-05-20 09:31:57 -05:00
Allen Byrne
f5dc2a2f8d TRILAB-192 add c++ and fortran warnings build systems one file 2020-05-20 09:31:57 -05:00
Allen Byrne
9cc06d671a Update release note for CMake warnings 2020-05-20 09:31:57 -05:00
Allen Byrne
48e81261e6 Add missing header include 2020-05-20 09:31:57 -05:00
Dana Robinson
02f8df1937 Fixed unnecessary H5R casts in the tools that were raising warnings. 2020-05-20 09:31:57 -05:00
vchoi
3a2d222a52 A fix in the cleaning up code for datatype when datatype initialization via H5D__init_type() fails.
This is triggered by the tests for revised references when the libver bounds setting does not allow version
4 datatype message to be created.  The test failure is abort core dumped.
This is due to the datatype initialization fails before the datatype ID is registered.
The datatype cleanup code should provide for the above situation.
The code to fix the problem is the same as what is done in H5D__open_oid().
2020-05-20 09:31:57 -05:00
Dana Robinson
27c3a519e9 Changed default dataset shared struct to initialize hid_t IDs to
H5I_INVALID_HID.
2020-05-20 09:31:57 -05:00
David Young
8040d73fbe Remove tongue-in-cheek credit for Rusty Shackleford and Dale Alvin Gribble.
Delete the comment questioning whether pthread_mutex_lock is allowed
in a key destructor, since pthread_key_create(3) provides the answer:

   There  is  no  notion  of a destructor-safe function. If an application
   does not call pthread_exit() from a signal handler, or if it blocks any
   signal whose handler may call pthread_exit() while calling async-unsafe
   functions, all functions may be safely called from destructors.

Delete redundant comment.
2020-05-20 09:31:57 -05:00
David Young
8ae25d32b0 Follow HDF5 conventions. 2020-05-20 09:31:57 -05:00
Allen Byrne
70d43341ec Correct extra flags 2020-05-20 09:31:57 -05:00
Dana Robinson
d4a43eebdf Minor renaming in the tools code. 2020-05-20 09:31:57 -05:00
Gerd Heber
a641a130e7 Fix for HDFFV-11065. 2020-05-20 09:31:57 -05:00
Jordan Henderson
ba79f94586 Fix latent bug in h5repack options file reading
Add 'enable-error-stack' option to h5format_convert
2020-05-20 09:31:57 -05:00
Allen Byrne
e36accb306 TRILAB-192 remove comment 2020-05-20 09:31:57 -05:00
Quincey Koziol
358558ad03 Refactor to reduce verbosity. 2020-05-20 09:31:57 -05:00
Dana Robinson
5b17d45120 Minor renaming in h5dump (addr --> token) 2020-05-20 09:31:57 -05:00
Allen Byrne
b4534374f7 TRILAB-192 add comparable clang flags 2020-05-20 09:31:57 -05:00
Jordan Henderson
0368174822 Fix some missing symbols issues in tools library 2020-05-20 09:31:57 -05:00
Jordan Henderson
46a9771a9e A few small tweaks to the tools from review 2020-05-20 09:31:56 -05:00
Jordan Henderson
1da4855528 Replace usage of some standard library functions with HD- versions 2020-05-20 09:31:56 -05:00
Jordan Henderson
254388494a Update Tools library to be better compatible with VOL connectors
Modify h5repack to integrate with VOL connectors

Update tools library to accomodate VOL connectors

Update logic in h5tools_fopen for VOL connectors

Add command-line options to h5repack for specifying in/out VOL
connectors

Implement h5tools_set_vol_fapl

Fix library shutdown issue

Integrate ROS3 and HDFS VFDs into new h5tools_get_fapl() scheme

Avoid H5Ocopy in h5repack when using different VOL connectors

Update h5tools_test_utils.c for ROS3 and HDFS integration
2020-05-20 09:31:56 -05:00
Allen Byrne
0a72a7bf6b TRILAB-24 use CHECK_STRUCT_HAS_MEMBER 2020-05-20 09:31:56 -05:00
Quincey Koziol
aad3ff8244 Correct macro check 2020-05-20 09:31:56 -05:00
Allen Byrne
f4333990dd Add extensive warnings to tools executables 2020-05-20 09:31:56 -05:00
Allen Byrne
ac64ea0b63 Reorg comments 2020-05-20 09:31:56 -05:00
Allen Byrne
ad5dbf9539 Correct warning flag form 2020-05-20 09:31:56 -05:00
Allen Byrne
579625801a Because of tools macro, this needs to be a warning 2020-05-20 09:31:56 -05:00
Allen Byrne
3e81528f3b unused set-variable in macro 2020-05-20 09:31:56 -05:00
Allen Byrne
e498e3ac3e Fix Werror issues in JNI and tools 2020-05-20 09:31:56 -05:00
Allen Byrne
1bd5fb6bf1 TRILAB-192 fix JNI shadow warning 2020-05-20 09:31:56 -05:00
Allen Byrne
e7c76ec46f TRILAB-192 restrict extensive warnings to libraries 2020-05-20 09:31:56 -05:00
Quincey Koziol
f2e152c9db Correct failure when allocation tracking are disabled. 2020-05-20 09:31:56 -05:00
Allen Byrne
b373cd9a44 TRILAB-192 add release note 2020-05-20 09:31:56 -05:00
Allen Byrne
42828098ed TRILAB-192 Identify warnings that fail as errors 2020-05-20 09:31:56 -05:00
David Young
27e3c31d6c Update the MANIFEST for the autoconf/cmake shared warnings files. 2020-05-20 09:31:56 -05:00
Quincey Koziol
7b119d614b Revise API for H5get_alloc_stats() to take a struct instead of separate values. 2020-05-20 09:31:56 -05:00
Quincey Koziol
20df4bd395 Add routines to query the library's free list sizes and allocation stats. 2020-05-20 09:31:56 -05:00
Allen Byrne
7afe25de20 Correct syntax 2020-05-20 09:31:56 -05:00
Allen Byrne
00edda5aa8 Update CMake compiler flags to use same set of warnings 2020-05-20 09:31:56 -05:00
David Young
5050218f74 Move the GNU warnings configuration under config/gnu-warnings/ and trim
the filename prefixes.  Update config/gnu-flags to suit.

I also made changes to config/cmake/HDFCompilerFlags.cmake, but I'm not
sure they're correct.
2020-05-20 09:31:56 -05:00
David Young
0822b91ec9 By default, demote warnings promoted to errors back to warnings. 2020-05-20 09:31:56 -05:00
David Young
03a86e551d Incorporate the H5_ECFLAGS into the library CFLAGS. Now a bunch of errors will
occur.  Next commit will demote the warnings promoted to errors back to
warnings again.
2020-05-20 09:31:56 -05:00
David Young
5e3e0308db Break out warnings into more files that autoconf and CMake can share. This
change temporarily disables the warnings that were promoted to errors, but I
will add those warnings back as warnings, not errors, in the next commit.
2020-05-20 09:31:56 -05:00
Allen Byrne
cde72dfc27 Allow use of INTEL icl/icl++ for clang 2020-05-20 09:31:56 -05:00
Allen Byrne
3e42250f0f Fix threadsafe for new test 2020-05-20 09:31:56 -05:00
Dana Robinson
ce9ef0ba12 Fixed the RELEASE.txt note for HDFFV-11057 2020-05-20 09:31:56 -05:00
Dana Robinson
4cfafa10d5 Fix shutdown errors when using the HDF5_VOL_CONNECTOR environment
variable to set a dynamically loaded plugin as the default VOL
connector. Fixes HDFFV-11057
2020-05-20 09:31:56 -05:00
Dana Robinson
c7fd077ffb Very minor comment change in H5VLconnector.h. 2020-05-20 09:31:56 -05:00
David Young
5df5bc37da Use the correct error macro. 2020-05-20 09:31:56 -05:00
Vailin Choi
1612e90c2b Fix issues when deserializing point/all/none selection with version beyond the library's supported version:
(1) Verify the decoded version before proceeding further with deserialization
(2) Close the dataspace if errors occurred after opening the dataspace
2020-05-20 09:31:56 -05:00
David Young
313501fd17 Avoid a crash, don't check if we're flushing when the file is closing:
there's no need to check if the metadata cache is flushing if we already
know the file is closing, because the condition we rely on is "closing
OR flushing."  Further, the cache may have already gone away, so
sometimes calling into the cache to see if it's flushing will crash the
program.
2020-05-20 09:31:56 -05:00
David Young
84f402deea Use a naked pthread_self() call in the HDF5 thread wrappers. 2020-05-20 09:31:56 -05:00
David Young
4ffc7ad8df Add semicolons to more PASSED() invocations. 2020-05-20 09:31:55 -05:00
Allen Byrne
52a797e697 Remove system command from valgrind reports 2020-05-20 09:31:55 -05:00
Jacob Smith
95d6578dea Fix incorrect FUNC_LEAVE macro (should match FUNC_ENTER_*_TAG). 2020-05-20 09:31:55 -05:00
Allen Byrne
506991575f Whitespace 2020-05-20 09:31:55 -05:00
kmu
5228f61f79 revert type cast 2020-05-20 09:31:55 -05:00
Quincey Koziol
47e2160f22 Switch the 'get offset' operation from a dataset 'get' callback to a [native]
dataset 'optional' operation.
2020-05-20 09:31:55 -05:00
David Young
4bbd9649c0 Complete the comment on thread_main(), explaining why the barrier is used. 2020-05-20 09:31:55 -05:00
David Young
4562a584af The first implementation seemed to allow for the possibility that a thread
could block at the barrier, wake and exit the barrier, re-acquire the barrier
lock and increase `nentered` before the other blocked threads woke and checked
`nentered % count == 0`.  Then the other blocked threads would check `nentered
% count == 0` and, finding it false, go back to sleep in the barrier.  This new
implementation waits for a looser condition to obtain so that threads don't go
back to sleep in the barrier.
2020-05-20 09:31:55 -05:00
David Young
88920baf53 Test the right condition for the EBUSY return in pthread_barrier_destroy(). 2020-05-20 09:31:55 -05:00
David Young
b7f27e0381 s/exit_failure/EXIT_FAILURE/g 2020-05-20 09:31:55 -05:00
David Young
8c5e0a1e53 Implement pthread_barrier(3) for Darwin using a counter, condition variable,
and mutex.  Untested.
2020-05-20 09:31:55 -05:00
Larry Knox
eeb8a5a754 Modfy expression to match mpicc build with Intel as intel compiler, not
gcc.
2020-05-20 09:31:55 -05:00
M. Scot Breitenfeld
d40e543e63 Fixed issue building HDF5 with NAG Fortran 7.0.
Accounted for the additon of half precision floating-point with a KIND=16.

HDFFV-11033
2020-05-20 09:31:55 -05:00
Allen Byrne
e417c01bd3 Add java version and reference libsettings 2020-05-20 09:31:55 -05:00
Allen Byrne
95c4222cd1 Update examples and fix old version references. 2020-05-20 09:31:55 -05:00
Allen Byrne
ccdb8f360f Move MODEL check to before usage in CTestScript.cmake. 2020-05-20 09:31:55 -05:00
Allen Byrne
481c11b3f9 Copy generated files instead creating twice 2020-05-20 09:31:55 -05:00
Allen Byrne
0e45724b69 Fix standalone link 2020-05-20 09:31:55 -05:00
Allen Byrne
8ad375d345 Fix Fortran macro use and jni comment 2020-05-20 09:31:55 -05:00
Allen Byrne
a549df80b3 Update Windows platforms 2020-05-20 09:31:55 -05:00
David Young
c12bda5d37 Add missing MANIFEST entry, ./doc/code-conventions.md . 2020-05-20 09:31:55 -05:00
Allen Byrne
bc2e406f78 HDFFV-11036 add release note 2020-05-20 09:31:55 -05:00
Allen Byrne
0aadc45530 HDFFV-11036 add file compare test process 2020-05-20 09:31:55 -05:00
Allen Byrne
799873706a Correct usage of add_compile_definitions 2020-05-20 09:31:55 -05:00
Allen Byrne
60a4987f97 TRILAB-142 Change minimum CMake version to 3.12 2020-05-20 09:31:55 -05:00
Allen Byrne
d6c2f9966f Fix always true issue because member is not dynamically allocated 2020-05-20 09:31:55 -05:00
Allen Byrne
925d3e82bd CMake cleanup 2020-05-20 09:31:55 -05:00
Allen Byrne
a2dc6e0285 HDFFV-11032 fix JNI call 2020-05-20 09:31:55 -05:00
David Young
422f5adebe Replace the old H5F_DECODE_LENGTH() implementation with one that
initializes the variable it's loading on every path.
2020-05-20 09:31:55 -05:00
M. Scot Breitenfeld
995c8126ae Corrected INTERFACE INTENT(IN) to INTENT(OUT) for buf_size inh5fget_file_image_f.
HDFFV-11029
2020-05-20 09:31:55 -05:00
David Young
71231f3726 Start to document the function/parameter/variable attribute macros. 2020-05-20 09:31:55 -05:00
David Young
4cd3dc95d9 Filter all of the new _USED / _UNUSED type modifiers. 2020-05-20 09:31:55 -05:00
David Young
28103327a5 H5_HAVE_PARALLEL, _DEBUG_API, etc. Add attributes to some variables and
parameters that are unused under some configurations.
2020-05-20 09:31:55 -05:00
David Young
5640d832e4 Use HD prefix. 2020-05-20 09:31:55 -05:00
David Young
0afcd66d2b Delete unhelpful comment per Jordan's question. 2020-05-20 09:31:55 -05:00
David Young
f44798804d Make sure that H5TS_thread_id() is available as either a function or a macro in
all configurations.

Previously it was neither declared nor defined in --disable-threadsafety
builds.  The compiler's warning got lost in the noise---I first saw the issue
because my -Werror branch stopped compiling cold---and the tests still linked
and ran.
2020-05-20 09:31:55 -05:00
David Young
50d7f83e6e Provide local copies of err(3)- and errx(3)-alike functions
for Visual Studio compatibility.
2020-05-20 09:31:55 -05:00
David Young
40d104b5c2 Provide C99/POSIX.1 format strings PRI[doux]{8,16,32,64,MAX,PTR} on systems
that are missing <inttypes.h>.
2020-05-20 09:31:55 -05:00
David Young
e3ce3bf76a Take out the temporary performance tests. 2020-05-20 09:31:54 -05:00
David Young
b00d843c2d Make calls through a function pointer. Use the same number of arguments,
always.
2020-05-20 09:31:54 -05:00
David Young
17f8b2913b Increase iterations, provide a baseline for no-op, simplify the overhead
case a bit.
2020-05-20 09:31:54 -05:00
David Young
66334f899d Temporarily add some code that measures the time to run the simplest possible
H5T__copy_all()-like routine 10 million times and then measures the version
with FUNC_ENTER_STATIC/_LEAVE_NOAPI and a HGOTO_ERROR() statement.
2020-05-20 09:31:54 -05:00
David Young
d21d9aa1fb H5T_copy() constification plus Quincey's contributions. 2020-05-20 09:31:54 -05:00
Allen Byrne
ad9424bed4 TRILAB-148 fix sanitizer and -fsanitize usage 2020-05-20 09:31:54 -05:00
Allen Byrne
9f024afb2a Update sanitizer note. 2020-05-20 09:31:54 -05:00
Jacob Smith
3ef00a150d Fix improper S3 signing key null check (HDFFV-11015). 2020-05-20 09:31:54 -05:00
M. Scot Breitenfeld
2a252eada1 HDFFV-11018 Add Fortran H5F_LIBVER_V*_F definitions
Added
------
New Definitions:

  INTEGER :: H5F_LIBVER_ERROR_F
  INTEGER :: H5F_LIBVER_NBOUNDS_F
  INTEGER :: H5F_LIBVER_V18_F
  INTEGER :: H5F_LIBVER_V110_F
  INTEGER :: H5F_LIBVER_V112_F
  INTEGER :: H5F_LIBVER_V114_F

New API:
  h5pget_libver_bounds_f(fapl_id, low, high, hdferr)

Removed:
  call to C wrapper h5pset_libver_bounds_c in h5pset_libver_bounds_f
2020-05-20 09:31:54 -05:00
Muqun Yang
9c3fe9fe7c HDFFV-11014, fix the h5repack issue that misses a few attributes during the repacking. The flag that checks the object reference attribute is not updated properly. The fix is trivial. Just need to move the flag update line into the inner loop. Tested at Jelly. Also update the release.txt. 2020-05-20 09:31:54 -05:00
David Young
f6bf61975e Oops, the test has to return success in the unimplemented case. 2020-05-20 09:31:54 -05:00
David Young
25f69a687a If H5_HAVE_THREADSAFE is not #defined, define nothing but a stub implementation
of H5TS_thread_id().
2020-05-20 09:31:54 -05:00
David Young
cc57aa73c8 src/H5Eint.c: #include H5TSprivate.h for H5TS_thread_id() definitions.
test/thread_id.c: move threads_failure() inside #ifdefs.
2020-05-20 09:31:54 -05:00
David Young
364a277143 Change thread IDs to uint64_t from unsigned long, per Quincey's suggestion.
Fix a typo in the H5TS_thread_init() comment and reword some ID
properties.
2020-05-20 09:31:54 -05:00
David Young
5178dd70ec Add thread_id.c to the MANIFEST and the CMakeLists.txt per Allen's
request.
2020-05-20 09:31:54 -05:00
David Young
06dfd6025d Replace pthread_self_ulong() with H5TS_thread_id(). The POSIX Threads
implementation ought to be portable to any system that has POSIX
Threads.  On Windows, I use the same API call as before.
2020-05-20 09:31:54 -05:00
Jordan Henderson
ecdaf09c11 Add RELEASE.txt note for token refactoring changes 2020-05-20 09:31:54 -05:00
Allen Byrne
55a2411851 HDFFV-11012 - add release note 2020-05-20 09:31:54 -05:00
Allen Byrne
676f014e30 HDFFV-11012 - add correct fortran include path properties 2020-05-20 09:31:54 -05:00
Allen Byrne
e8e8ae8f58 HDFFV-10996 add release note 2020-05-20 09:31:54 -05:00
Allen Byrne
0bdf289f98 HDFFV-10996 - add java vol tests 2020-05-20 09:31:54 -05:00
Dana Robinson
1311f9e999 Minor refactoring to the VFD info free call. 2020-05-20 09:31:54 -05:00
Dana Robinson
aacc603804 Updated the 'const memory free' changes based on PR feedback. 2020-05-20 09:31:54 -05:00
Dana Robinson
5e76dccbe0 Added a free wrapper that lets us free constant pointers without
generating warnings.

Also, brought the const-ness of the VOL connector info in line with
the VFD info (not visible externally).
2020-05-20 09:31:54 -05:00
Allen Byrne
c3974173a1 VS2010 needs an underscore 2020-05-20 09:31:54 -05:00
Dana Robinson
dea87efdf9 Cleaned up remaining warnings in high-level library. 2020-05-20 09:31:54 -05:00
Allen Byrne
e0e020eb6b Small fixes for tools and skip autotools tests for no filter 2020-05-20 09:31:54 -05:00
David Young
13bb3afdc6 Reduce differences between my -Werror branch and develop:
Rename index -> idx, fileno -> fnumber, fileno -> fno to avoid GCC
shadowed declaration warnings about index(3).

Convert #pragma GCC diagnostic push/pop/ignored to the HDF5 library's
H5_GCC_DIAG_OFF()/H5_GCC_DIAG_ON() macros.
2020-05-20 09:31:54 -05:00
David Young
2badc1bf32 Reduce casts of HDcalloc()/HDmalloc() that -Wc++-compat required.
Reduce gratuitous casts---e.g., (size_t)1.

Use the right format string for a pointer.

In the H5C sanity checks, change a "size increase" variable from ssize_t
(too narrow) to int64_t (wide enough).

Parenthesize every appearance of `storage` in the macro
`H5D_CHUNK_STORAGE_INDEX_CHK(storage)` so that you can pass in an
expression like &sc and it works properly.

Disallow re-assignment of the `dset` parameter to H5D__chunk_init()
because it helped assure me that it's safe to replace the repeating
expression `&dset->shared->layout.storage.u.chunk` with `sc` throughout.

Replace lengthy expressions such as
`&dset->shared->layout.storage.u.chunk` with `sc` throughout several
functions in H5Dchunk.c ISTR that the compiler warned that `sc` was
declared but unused in a couple of functions, and then I found that `sc`
could be used in many places.  Maybe the disused `sc` appeared because a
bunch of code was copied and pasted, I don't know.  Anyway, it's a lot
tighter code now that I use `sc`.

In H5D__chunk_update_old_edge_chunks() and H5D__chunk_delete()
I actually expand `sc` and another temporary variable, `pline`,
because they're used only in !defined(NDEBUG) code.  This squashes
unused-variable warnings in the defined(NDEBUG) configuration.

Don't drop the `volatile` qualification with a cast in
tools/src/h5import/h5import.c.
2020-05-20 09:31:53 -05:00
David Young
2360f6e644 testpar/t_2Gio.c: Fix a typo that I think was introduced by a
previous warnings PR.  An array element was assigned to
        itself---shape[2]Â =Â shape[2];---instead of being assigned to
        chunk[2].

fortran/src/H5Pf.c: move conditional compilation controlled by
        H5_NO_DEPRECATED_SYMBOLS outside of a function for readability.

fortran/src/H5match_types.c: put a variable's declaration under the same
        conditional compilation (H5_FORTRAN_HAVE_C_LONG_DOUBLE) as its
        use.

For now, skip compilation of some unused debug dump routines in the JNI.
While I'm in the JNI, delete a set-but-unused variable.

src/H5Z.c: condition a variable declaration on H5_NO_DEPRECATED_SYMBOLS
        so that it's not declared but unused or vice versa.

test/cache_common.h: add an #include in to get some symbols we need to
        avoid implicit declaration warnings.

test/dsets.c: use a more conventional conditional-compilation syntax.

test/dt_arith.c, test/fillval.c: initialize a bunch of uninitialized
        variables before use.

test/vfd.c: pass the expected type of `void **` to posix_memalign(3)
        instead of `int **`.

testpar/t_bigio.c: explicitly compare with 0 instead of using ! when
        "equal to 0?" is the question not "is false?"  Repair some
        indentation while I'm here.

testpar/testpar.h: repair misaligned line-continuation backslashes in a
        macro that probably should be a function so that we don't have
        to fiddle with the line continuation to begin with.

tools/src/h5repack/h5repack_main.c: fix some compiler fussing about
        enums.

tools/test/perform/pio_engine.c: the compiler fusses if you cast a
        function call returning double directly to off_t.  It's ok if
        you cast a variable that's a double to off_t, however.  Write
        and use a new function, sqrto(), to avoid the cast warnings.
2020-05-20 09:31:53 -05:00
kmu
cfcac15f03 fix bad function cast warning 2020-05-20 09:31:53 -05:00
kmu
f06ae5ec74 initialization discards const warning 2020-05-20 09:31:53 -05:00
kmu
1e5dd76d25 fix unused function warning 2020-05-20 09:31:53 -05:00
Allen Byrne
9908743dd7 HDFFV-11011 - merge include list 2020-05-20 09:31:53 -05:00
Allen Byrne
b44b3d136d HDFFV-11011 correct issues with target file extension 2020-05-20 09:31:53 -05:00
Jordan Henderson
2e962dc49b Introduce new H5VL _by_value routines 2020-05-20 09:31:53 -05:00
Allen Byrne
09ba68d026 Correctly manage warnings for new tests 2020-05-20 09:31:53 -05:00
Allen Byrne
55212d3a02 Ext libs ZLIB and SZIP warnings are separate concerns 2020-05-20 09:31:53 -05:00
Allen Byrne
99993f3360 Remove commented warnings line 2020-05-20 09:31:53 -05:00
kmu
76c0e0aa4c rename macro 2020-05-20 09:31:53 -05:00
kmu
d59460e632 change condition 2020-05-20 09:31:53 -05:00
kmu
c3549ae3f9 pick up from Dave's fix 2020-05-20 09:31:53 -05:00
kmu
d63080b19a leave Wswitch-default for later fix 2020-05-20 09:31:53 -05:00
kmu
51f9a51c25 fix Wredundant-decls, Wswitch-default, Wdeclaration-after-statement, Wsign-compare, Wmisleading-indentation, Wshadow 2020-05-20 09:31:53 -05:00
kmu
4d9155bade fix issues from test fail 2020-05-20 09:31:53 -05:00
Dana Robinson
eaaedabaa5 Replaced my_isnan with C99 isnan in h5diff. 2020-05-20 09:31:53 -05:00
Allen Byrne
2a2dc4ab93 Add another warning variation 2020-05-20 09:31:53 -05:00
Allen Byrne
c0a1ba8750 Correct ignore warnings 2020-05-20 09:31:53 -05:00
Allen Byrne
c01add2ac7 Only use sanitizer with Clang 2020-05-20 09:31:53 -05:00
Allen Byrne
c491fd1cfc Remove cmake macros from valgrind tests 2020-05-20 09:31:53 -05:00
Larry Knox
27e35a62e9 Restore fix of test assert fail eror undone by later commit. 2020-05-20 09:31:53 -05:00
Dana Robinson
f935bc271a Cleaned up warnings in test/tid.c. 2020-05-20 09:31:53 -05:00
kmu
136d3b7ea2 fix assert fail 2020-05-20 09:31:53 -05:00
Dana Robinson
6e8ce00c0b Optimized the floating point comparisons a little bit. 2020-05-20 09:31:53 -05:00
Dana Robinson
23f103cf6b Fix for failing h5diff tests involving floating-point compares. 2020-05-20 09:31:53 -05:00
Dana Robinson
0479a345cc Removed H5_DEC_ENUM 2020-05-20 09:31:52 -05:00
Dana Robinson
3290803120 Revert "Revert "Moved -Wunsuffixed-float-constants to the developer warnings.""
This reverts commit 6486e06545.
2020-05-20 09:31:52 -05:00
Dana Robinson
36647e79b9 Revert "Moved -Wunsuffixed-float-constants to the developer warnings."
This reverts commit 12bc75c617.
2020-05-20 09:31:52 -05:00
Dana Robinson
40c5e67e41 Moved -Wunsuffixed-float-constants to the developer warnings. 2020-05-20 09:31:52 -05:00
Dana Robinson
2c520b2ba6 Fixed a bug in testpar/t_cache.c concerning checking expected
vs. actual cache entry reads and writes.
2020-05-20 09:31:52 -05:00
kmu
9f5444199e remove unnecessary stuff 2020-05-20 09:31:52 -05:00
kmu
30e61cf090 squash cast warning fix 2020-05-20 09:31:52 -05:00
Allen Byrne
cfd8856288 Change tools debug macros to not use error stack 2020-05-20 09:31:52 -05:00
Larry Knox
812e7eda57 Max Library "index" should be 7. 2020-05-20 09:31:51 -05:00
kmu
f0ee8b2883 not use hdf5 private header 2020-05-20 09:31:51 -05:00
kmu
1c226ac077 fix float type cmp warning 2020-05-20 09:31:51 -05:00
kmu
8d5ae4f460 fix float type cmp warning 2020-05-20 09:31:51 -05:00
kmu
742aa75cd0 fix missing prototype warning 2020-05-20 09:31:51 -05:00
kmu
af79e1613e more cleanup 2020-05-20 09:31:51 -05:00
kmu
364d25abea change it back 2020-05-20 09:31:51 -05:00
kmu
d03083de5f pick up missing piece 2020-05-20 09:31:51 -05:00
kmu
27c618b91d fix unused related warnings 2020-05-20 09:31:51 -05:00
kmu
8377789f8f removed unused parameter 2020-05-20 09:31:51 -05:00
kmu
6b07d692f4 more fix and address comments 2020-05-20 09:31:51 -05:00
kmu
a6e8f34b7b remove unsed var,function,macro, etc 2020-05-20 09:31:51 -05:00
kmu
0c9d2de9e2 fix uninitizlized warning 2020-05-20 09:31:50 -05:00
Dana Robinson
f77d99d3e9 Fixed yet another small issue in test/efc.c. 2020-05-20 09:31:50 -05:00
Larry Knox
08c29a0995 Remove irrelevant sentence from comment. 2020-05-20 09:31:50 -05:00
Larry Knox
ec3847712c Remove duplicate lines noted on forum by Eric Bavier 2020-05-20 09:31:50 -05:00
Larry Knox
7bbca40652 Add v111 version for H5O functions to enable version1 default for HDF5
1.8-1.10 and version 3 default for HDF5 1.12.  Version 2 functions are
available (deprecated) but will not be the default for any version.
2020-05-20 09:31:50 -05:00
Larry Knox
531530551f Only 2 versions of H5O_info_t and H5O_iterate_t. 2020-05-20 09:31:50 -05:00
Larry Knox
48036abeed H5vers.txt has versions v10 that should be v110 and some missing v110
entries.
2020-05-20 09:31:50 -05:00
Dana Robinson
4405118a04 PATH_MAX fix in efc test for Windows. 2020-05-20 09:31:50 -05:00
Dana Robinson
55b41104b9 Tidying from code review. 2020-05-20 09:31:50 -05:00
Dana Robinson
0585e6fb34 Fixed stack and frame size warnings. Not complete, but fixes most of
the easier cases.
2020-05-20 09:31:50 -05:00
Dana Robinson
d11be7974e Removed UIUC from copyright, added helpful comment. 2020-05-20 09:31:50 -05:00
Dana Robinson
6c0ecdc496 Updated MANIFEST 2020-05-20 09:31:50 -05:00
Dana Robinson
55b96a9fff Added a config file for ARM (Tested on a Raspberry Pi 3B+
w/ gcc 6).
2020-05-20 09:31:50 -05:00
Allen Byrne
d8e352ec4f Note for common warnings files 2020-05-20 09:31:50 -05:00
Allen Byrne
23493cb1b2 Create common build system files for warnings 2020-05-20 09:31:50 -05:00
Allen Byrne
e54dcb1609 Correct standalone function attributes 2020-05-20 09:31:50 -05:00
Allen Byrne
f59dfcb711 Standalone should not use import/export attributes 2020-05-20 09:31:50 -05:00
Dana Robinson
3e6a192e9c Squashed commit of the token_refactoring branch: 2020-05-20 09:31:50 -05:00
Larry Knox
32f8fed120 Merge pull request #2599 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '60244c54fcf74e6635aadf7badf0bed4dd92a635':
  Update MANIFEST for removal of older warnings files.
2020-05-20 09:26:32 -05:00
Jerome Soumagne
335fc0096c Add test for reference shutdown issue 2020-05-20 09:20:26 -05:00
Jerome Soumagne
3ab7612604 H5R: set app ref when incrementing ref_count on location held by reference
(fix HDFFV-10992)
2020-05-20 09:20:26 -05:00
Allen Byrne
53d6f0dc3e HDFFV-11001 fix if block 2020-05-20 09:20:26 -05:00
Allen Byrne
6b106b2cab HDFFV-11001 need to qualify all by parallel or serial types 2020-05-20 09:20:26 -05:00
Allen Byrne
234492f9e7 HDDFV-11001 add note 2020-05-20 09:20:26 -05:00
Allen Byrne
6682c717e2 HDFFV-11001 Add fine control over testing 2020-05-20 09:20:26 -05:00
Allen Byrne
9ebf36e893 Adjust regex for warnings 2020-05-20 09:20:26 -05:00
Allen Byrne
16245b0440 Update tools hid_t declarations with H5I_INVALID_HID 2020-05-20 09:20:26 -05:00
Allen Byrne
280329e192 Ignore ZLIB warnings 2020-05-20 09:20:26 -05:00
Allen Byrne
b98190628f Added JIRA note 2020-05-20 09:20:26 -05:00
Larry Knox
14e2c9d3f7 Modify external_env.c to prevent deleting test file of external.c.
Fix for HDFFV-10941.
2020-05-20 09:20:26 -05:00
Allen Byrne
738b025b3e io_timer.c uses a parallel lib function 2020-05-20 09:20:25 -05:00
Allen Byrne
d915fa7f07 Fix standalone compile issues 2020-05-20 09:20:25 -05:00
Allen Byrne
4a977332f0 Separate result variables for the function performed 2020-05-20 09:20:25 -05:00
Allen Byrne
f4e614c5cd Check for actual content before using file 2020-05-20 09:20:25 -05:00
Allen Byrne
207b87cbb9 HDFFV-10995 - add missing import 2020-05-20 09:20:25 -05:00
Allen Byrne
f9f4774065 HDFFV-10995 - need to add import 2020-05-20 09:20:25 -05:00
Allen Byrne
0c852d4ae7 HDFFV-10995 - Update all time instances 2020-05-20 09:20:25 -05:00
Allen Byrne
91729ca3d0 HDFFV-10995 adjust testing to tolerate non-US locale 2020-05-20 09:20:25 -05:00
kmu
156bc312ed fix test assert fail error 2020-05-20 09:20:25 -05:00
kmu
a52f4135f9 add new type support 2020-05-20 09:20:25 -05:00
kmu
fd374fb234 address problems from comments 2020-05-20 09:20:25 -05:00
kmu
95e509db46 fix and address comments 2020-05-20 09:20:25 -05:00
kmu
9281d24a5b change according to previous comments 2020-05-20 09:20:25 -05:00
kmu
740d491ef3 add missing piece 2020-05-20 09:20:25 -05:00
kmu
271bce5b10 remove unnecessary check macro 2020-05-20 09:20:25 -05:00
kmu
1d46e82317 fix intel compile warnings 2020-05-20 09:20:25 -05:00
kmu
fb8f955a73 Revert "fix warnings from Intel compiler"
This reverts commit 8b9338ab57.
2020-05-20 09:20:24 -05:00
kmu
3e4a99d17d Revert "fix warnings and some text alignment"
This reverts commit d06474c4e1.
2020-05-20 09:20:24 -05:00
kmu
71610c9677 Revert "let hdf5 pick up the right compiler in Intel environment"
This reverts commit 3613ec7296.
2020-05-20 09:20:24 -05:00
kmu
9d8fb46a2c Revert "fix issues from previous PR comments"
This reverts commit d242a900f4.
2020-05-20 09:20:24 -05:00
kmu
f2028c7568 Revert "using a different MACRO"
This reverts commit fc61b7a9f3.
2020-05-20 09:20:24 -05:00
kmu
9a3a13cacb using a different MACRO 2020-05-20 09:20:23 -05:00
kmu
bb53a566e8 fix issues from previous PR comments 2020-05-20 09:20:23 -05:00
kmu
540e50df28 let hdf5 pick up the right compiler in Intel environment 2020-05-20 09:20:23 -05:00
kmu
c1f6c50b35 fix warnings and some text alignment 2020-05-20 09:20:23 -05:00
kmu
6725222332 fix warnings from Intel compiler 2020-05-20 09:20:23 -05:00
Quincey Koziol
d1d4635550 Small changes from the token_refactoring branch, to reduce the delta to develop 2020-05-20 09:20:23 -05:00
Jordan Henderson
d459e350a5 Fix some places where H5P_DEFAULT gets passed down to a VOL connector 2020-05-20 09:20:22 -05:00
Dana Robinson
37a141db61 Changed -Wformat-truncation to level 2 in CMake w/ gcc. 2020-05-20 09:20:22 -05:00
Dana Robinson
6cfeb96b36 Changed -Wformat-truncation's level from 2 to 1. 2020-05-20 09:20:22 -05:00
Jordan Henderson
295185f368 Fix issue in h5dump where reference objects weren't being destroyed 2020-05-20 09:20:22 -05:00
Jordan Henderson
ac6aeb9adf Clean up tools warnings introduced by H5TOOLS_ERR_INIT macro 2020-05-20 09:20:22 -05:00
Jordan Henderson
d4aa380dd1 Refactor tools library error handling macros 2020-05-20 09:20:22 -05:00
Allen Byrne
4f86f43b60 Add MPI libs to standalone perf 2020-05-20 09:20:22 -05:00
Allen Byrne
8c43c2a955 Grep needs to search error file 2020-05-20 09:20:22 -05:00
Allen Byrne
9701014075 Correct flaws in test scripts and files 2020-05-20 09:20:22 -05:00
Allen Byrne
f66d3366ce grep for failure text in error stack 2020-05-20 09:20:22 -05:00
Allen Byrne
dcfeaddb32 Add list to function arg 2020-05-20 09:20:22 -05:00
Allen Byrne
ffb7d748f6 Test files for new ref types 2020-05-20 09:20:22 -05:00
Allen Byrne
1301b25aa9 h5diff test script files 2020-05-20 09:20:22 -05:00
Allen Byrne
a9b6fde99e Add ref changes to test script 2020-05-20 09:20:22 -05:00
Allen Byrne
0b2fe3fcc7 Add new h5diff files 2020-05-20 09:20:22 -05:00
Allen Byrne
463671a4f4 Fix compile statement order 2020-05-20 09:20:22 -05:00
Allen Byrne
972c57f769 HDFFV-10976,-10980 Init obj_type before calling H5Rget_obj_type3 2020-05-20 09:20:22 -05:00
Allen Byrne
e5cb404bb2 Add unknown define for h5dump ref objects 2020-05-20 09:20:22 -05:00
Allen Byrne
d486a9b27e HDFFV-10980 - h5diff uses new ref APIs 2020-05-20 09:20:22 -05:00
Quincey Koziol
b6b0567bdf Remove unnecessary H5CX call 2020-05-20 09:20:21 -05:00
Quincey Koziol
53e62bcbeb Refactor H5Dvlen_get_buf_size to use optional dataset operation, with generic fallback for VOL connectors that don't implement operation 2020-05-20 09:20:21 -05:00
Quincey Koziol
ba9f12b6d8 Cleanups from PR reviews 2020-05-20 09:20:21 -05:00
Quincey Koziol
996e12e796 Refactor all the 'H5VL_*_optional' callbacks to move the type of operation out
of the va_list, so it's at least possible for another connector to know what
the operation is and decide whether to implement it or not.

Added a new VOL sub-class called "introspect" where callbacks that report
information about the connector or container can be placed.  Added an
'opt_query' callback to this sub-class, for a connector to report back
to the library whether a particular optional callback operation is supported.
Also added a 'get_conn_cls' introspection callback, to retrieve the H5VL_class_t
of a connector (either the "current" connector, H5VL_GET_CONN_LVL_CURR, or
the terminal connector, H5VL_GET_CONN_LVL_TERM).

Moved the "post open" operation from a file 'specific' operation to a file
'optional' operation, now that it's possible to detect (with the 'opt_query'
introspection callback) whether a VOL connector implements an optional
operation, without just returning an error.

Added new internal VOL helper routines: H5VL_object_is_native, to determine
if an object is in (or is a) native file, and H5VL_file_is_same, to determine
if two objects are in (or are) the same terminal VOL connector's container.
(And moved the special handling for FILE_IS_EQUAL operation out of internal VOL
callback routine into H5VL_file_is_same)

Made new dataset 'get' operation for H5Dvlen_get_buf_size, aligning it better
with other 'get' operations in API.

Fixed several issues with pass-through connectors, which are now passing the
'make check-passthrough-vol' tests again.

A bunch of warning and style cleanups as well.
2020-05-20 09:20:21 -05:00
Allen Byrne
68373c2d78 Standalone doesn't use h5test lib implementation. 2020-05-20 09:20:21 -05:00
David Young
2914c7baf8 In portable shell scripts (using #!/bin/sh) we have to use single square
brackets, [ ], instead of the bash-ism double square brackets, [[ ]].
2020-05-20 09:20:21 -05:00
David Young
5ad9d9277e Make this script work on hosts where PERL is not installed at
/usr/bin/perl.
2020-05-20 09:20:21 -05:00
Allen Byrne
e3f12a5a22 Add missing note 2020-05-20 09:20:21 -05:00
Allen Byrne
9f5fdc677a Remove const 2020-05-20 09:20:21 -05:00
Allen Byrne
344f4139d7 Fix compile error - declaration after executable statement 2020-05-20 09:20:21 -05:00
Allen Byrne
def01d7676 Adjust cache.c only variables. 2020-05-20 09:20:21 -05:00
Allen Byrne
2cff38d38e Fix include to correct memory calls - big-endian issue. 2020-05-20 09:20:21 -05:00
Quincey Koziol
091b45c02d Update h5debug to retrieve file pointer through VOL framework 2020-05-20 09:20:21 -05:00
Allen Byrne
b71046be5a Minor whitespace 2020-05-20 09:20:21 -05:00
Dana Robinson
0e133ade90 Fixed bugs in pread/pwrite I/O in VFDs.
Fixes HDFFV-10945.
2020-05-20 09:20:21 -05:00
Vailin Choi
19934f8654 More fixes for previous committed PR #2079 dated Dec 5 2019.
(1) H5O_dtype_ver_bounds[] for V112 should be H5O_DTYPE_VRESION_4
(2) The tests for the new reference types should work for V112 and beyond
2020-05-20 09:20:21 -05:00
Allen Byrne
bc69c4177b Remove duplicate instance 2020-05-20 09:20:21 -05:00
Allen Byrne
931bc7fa51 Revert and move declaration 2020-05-20 09:20:21 -05:00
Allen Byrne
d6356f58f1 Correct struct access 2020-05-20 09:20:20 -05:00
Allen Byrne
1814f0363f Fix duplicate and varname 2020-05-20 09:20:20 -05:00
Allen Byrne
1409fcee4e Fix compile and test issues from DT 2020-05-20 09:20:20 -05:00
Allen Byrne
ba4eaeb660 Add release note for sanitizer support 2020-05-20 09:20:20 -05:00
Allen Byrne
5b50f47f31 HDFFV-10979 cleanup globals 2020-05-20 09:20:20 -05:00
Allen Byrne
371439c6bd TRILABS-135 Add clang analyzers 2020-05-20 09:20:20 -05:00
Neil Fortner
958ba4c8a2 Modify H5VL initialization routines to initialize all VOL-managed object
types.  Modify H5VLwrap_register() to reject non-VOL-managed object
types.  Also fix overisights in h5trace.c from previous changes.
2020-05-20 09:20:20 -05:00
Allen Byrne
59d5321a33 HDFFV-10979 fix global name clash 2020-05-20 09:20:20 -05:00
Allen Byrne
d91fa68f27 Fix 2010 compile issues 2020-05-20 09:20:20 -05:00
Allen Byrne
34518626c4 Fix issues found with ONLY_SHARED_LIBS option 2020-05-20 09:20:20 -05:00
Richard Warren
c1eae1a659 Change from using H5Dcreate to H5Dcreate2 2020-05-20 09:20:20 -05:00
Allen Byrne
85bf828d0c Correct assignment 2020-05-20 09:20:20 -05:00
Allen Byrne
64da9d289b Fix java include, h5watch and remove clang tool. 2020-05-20 09:20:20 -05:00
Allen Byrne
c054c43a9f Add missing filenames 2020-05-20 09:20:20 -05:00
Chris Hogan
e7895c4b3a Update RELEASE.txt with performance improvements 2020-05-20 09:20:20 -05:00
Allen Byrne
1401be4805 HDFFV-10974 Change defines to eliminate Windows conflict 2020-05-20 09:20:20 -05:00
Chris Hogan
c5a7afb7a0 Add RELEASE.txt entry for Jira 10934 2020-05-20 09:20:20 -05:00
Allen Byrne
271432db35 Add H5Rdestroy calls to cleanup 2020-05-20 09:20:20 -05:00
Allen Byrne
ff35d0e423 Remove problem tests for now 2020-05-20 09:20:20 -05:00
Allen Byrne
ed40350312 Add new test reference 2020-05-20 09:20:20 -05:00
Allen Byrne
768d9897b6 HDFFV-10876 fix compare reference 2020-05-20 09:20:20 -05:00
Allen Byrne
a768dd5a0c HDFFV-10876 ignore old reference API tests 2020-05-20 09:20:20 -05:00
Allen Byrne
7319765239 Add missing quotes 2020-05-20 09:20:20 -05:00
Allen Byrne
82751ecbb9 Fix windows 10 compile error 2020-05-20 09:20:20 -05:00
Allen Byrne
c7fe3b143b Correct indentation 2020-05-20 09:20:20 -05:00
Allen Byrne
70b7848c8e Revert declaration used in macro. 2020-05-20 09:20:20 -05:00
Dana Robinson
fe1f87bc5c Minor tweaks noticed while going over VOL documentation. 2020-05-20 09:20:20 -05:00
Neil Fortner
79557814af Add note to RELEASE.txt for H5Sselect_adjust. 2020-05-20 09:20:20 -05:00
Neil Fortner
9f77be02e5 Add RELEASE.txt note for H5Sselect_project_interesection 2020-05-20 09:20:20 -05:00
Allen Byrne
91a6e37dbc Revert declaration deletion. 2020-05-20 09:20:20 -05:00
Neil Fortner
6d5169c1da Add RELEASE.txt note for HVLget_file_type() 2020-05-20 09:20:20 -05:00
Allen Byrne
64af1dab2c HDFFV-10876 add note 2020-05-20 09:20:19 -05:00
Allen Byrne
56249af938 Address compile warnings 2020-05-20 09:20:19 -05:00
Richard Warren
972ce40f36 Fixed PR issues pointed out by Allen 2020-05-20 09:20:19 -05:00
Richard Warren
41eada6dac Remove the Copyright UofI per Larry's guidance 2020-05-20 09:20:19 -05:00
Richard Warren
62639a4568 Adds a new t_2Gio.c MPI test 2020-05-20 09:20:19 -05:00
Allen Byrne
14578dabd4 Fix compile errors - mostly in jni 2020-05-20 09:20:19 -05:00
Jerome Soumagne
56d210ac3f Fix H5VL_token_t type and fix H5VL_loc_by_token to use H5VL_token_t * 2020-05-20 09:20:19 -05:00
David Young
7bbe57d309 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.
2020-05-20 09:20:19 -05:00
Neil Fortner
d00c5685b6 Implement support for using H5Dvlen_get_buf_size with
non-native VOL connectors.
2020-05-20 09:20:19 -05:00
Vailin Choi
44e8fe048b Two fixes:
(1) Set the version for reference datatype messge to H5O_DTYPE_VERSION_4.
(2) Verify the decoded version for hyperslab selection.
2020-05-20 09:20:19 -05:00
Neil Fortner
1ece440e78 Add H5VL_MAP_OPTIONAL operation id (unused currently). 2020-05-20 09:20:19 -05:00
Allen Byrne
64601e9a96 HDFFV-10876 Update dump to match DDL spec 2020-05-20 09:20:19 -05:00
Dana Robinson
e4f9ad3dbb Yanked -Wc++-compat from the flags used to build the C library in both
the Autotools and CMake.
2020-05-20 09:20:18 -05:00
Allen Byrne
715374934d Add extra line 2020-05-20 09:20:18 -05:00
Allen Byrne
6a8a3f826d Adjust whitespace 2020-05-20 09:20:18 -05:00
Allen Byrne
19e6c0b26a Update h5ls help and rework dump_mem routines for attrs 2020-05-20 09:20:18 -05:00
Allen Byrne
bb26e035e6 Update create calls 2020-05-20 09:20:18 -05:00
Allen Byrne
417b890436 Add debug compile option as comment 2020-05-20 09:20:18 -05:00
Allen Byrne
1e32da3e3f Update reference calls 2020-05-20 09:20:18 -05:00
Neil Fortner
d2b93dbc9e Fix issues with using H5Pget_fill_value() with file datatypes retrieved
from H5VLget_file_type().
2020-05-20 09:20:18 -05:00
Neil Fortner
08d6ed84b7 Add support for scalar dataspaces to H5Sproject_intersection. Add
checking for ank validity.
2020-05-20 09:20:18 -05:00
Dana Robinson
57b38f58bd Fixed missing blob callbacks in test VOL connectors. 2020-05-20 09:20:18 -05:00
Allen Byrne
69937a4b8a Add missing javadoc for new arg 2020-05-20 09:20:18 -05:00
Allen Byrne
2a30c55439 Update data output reference 2020-05-20 09:20:18 -05:00
Allen Byrne
8972b96622 Update reference files and fix int as string 2020-05-20 09:20:18 -05:00
Jordan Henderson
f56dbdc823 Add OAPL parameter to H5Rcreate_ APIs 2020-05-20 09:20:18 -05:00
Chris Hogan
8c86d9a7ba Fix failing test and retain semantics for chunk cache properties in non-chunked datasets 2020-05-20 09:20:18 -05:00
Chris Hogan
8ef9cc1fc0 Add two missing calls to H5I_dec_ref for new dapl_id 2020-05-20 09:20:18 -05:00
Chris Hogan
9ae1382fb4 Community-proposed fix 2020-05-20 09:20:18 -05:00
Allen Byrne
9e2bc84d64 Update to new error text 2020-05-20 09:20:18 -05:00
Allen Byrne
60bb18eee3 Update reference files to latest output 2020-05-20 09:20:18 -05:00
Neil Fortner
fc34a593a7 Fix missing free in H5T__ref_mem_read() 2020-05-20 09:20:17 -05:00
Neil Fortner
175a14466c Fix bugs in H5VL file comparison code. Add short circuit success to
H5VL_cmp_connector_cls().
2020-05-20 09:20:17 -05:00
Neil Fortner
22ad1bd668 Implement file comparison VOL callback. Other changes to allow
references to work with non-native connectors.  There is a bug
somewhere.
2020-05-20 09:20:17 -05:00
Jerome Soumagne
267b97c3ea H5R: fix H5Tconv to check for null references
Valid for both deprecated and non-deprecated references

Update test
2020-05-20 09:20:17 -05:00
Neil Fortner
aae787569b Add support for point selections to H5S_select_project_intersection. 2020-05-20 09:20:17 -05:00
Jerome Soumagne
e1f67e8610 Remove H5VL_NATIVE_FILE_GET_FILE_ID and add H5VL_OBJECT_GET_FILE
Remove H5F__get_file_id() and use only private routine instead
2020-05-20 09:20:17 -05:00
David Young
77144641df Revert "Make a squash commit of 'Quiet some warnings by adjusting warnings level and fixing some code.' (commit 5c911d8baf)" 2020-05-20 09:20:17 -05:00
David Young
e07ca4b4a5 Revert "Oops, remove more C99 designated initializers for VS 2010 compatibility."
This reverts commit f907b511d0.
2020-05-20 09:19:38 -05:00
Neil Fortner
975a360db2 Move checking for zero offset in selection adjust calls to the selection callbacks. This makes the
procedure for checking it consistent across selection types and between
_s and _u, ensures it is always is performed even when called within the H5S package, and removes the redundant check that would occur when callins H5S_select_adjust_s() from outside the H5S package.
2020-05-20 09:19:38 -05:00
Neil Fortner
c7c302a64b Replace H5Sselect_adjust_u() and H5Shyper_adjust_s() with
H5Sselect_adjust.  Implement "adjust_s" callback for all selection
types.  Add range checking to H5Sselect_adjust().
2020-05-20 09:19:38 -05:00
Dana Robinson
fcfc5700df Trivial parameter renaming in VOL API calls. 2020-05-20 09:19:38 -05:00
David Young
10911a1176 Oops, remove more C99 designated initializers for VS 2010 compatibility. 2020-05-20 09:19:38 -05:00
David Young
dffa21d2fb Add an #include to get a function declaration. 2020-05-20 09:19:38 -05:00
David Young
c258fc10fc Don't use C99 designated initializers, they're not compatible with
Visual Studio 2010.
2020-05-20 09:19:37 -05:00
David Young
f77dbfe4ac Quiet some more maybe-uninitialized warnings---each is a false positive,
*sigh*.  This is more code that may not compile with VS2010, *sigh
sigh*.
2020-05-20 09:19:37 -05:00
David Young
765ab7ee45 Always warn on maybe-uninitialized. -Wincompatible-pointer-types was not
available until GCC 5, so enable it only if that's the GCC version we're using.
2020-05-20 09:19:37 -05:00
David Young
0e7dffc0dd Only promote maybe-uninitialized warnings to errors on GCC 8. Even on
GCC 8, there may be false positives at low optimization levels?  I need
to check.
2020-05-20 09:19:37 -05:00
David Young
9734b5993c Only use -Werror=cast-function-type with GCC 8 and later. 2020-05-20 09:19:37 -05:00
David Young
1fed8986df Put all of the -W options back into the order I found them in so that it's
easier to compare old and new config/gnu-flags.
2020-05-20 09:19:37 -05:00
David Young
4a4f4b76cf Add new source files to CMakeLists.txt. 2020-05-20 09:19:37 -05:00
David Young
1fc2171299 Mention the -Werror= flags in libhdf5.settings.in. 2020-05-20 09:19:37 -05:00
David Young
a7c153fff1 free -> HDfree 2020-05-20 09:19:37 -05:00
David Young
312496013e Promote decleration-after-statement warnings to errors. 2020-05-20 09:19:37 -05:00
David Young
d1ceb04c5d Quiet decleration-after-statement warnings. 2020-05-20 09:19:37 -05:00
David Young
34e51def7e Move a statement under some declarations since some vintages of Visual
Studio don't like declarations after statements.
2020-05-20 09:19:37 -05:00
David Young
902cb3e0d0 Document H5D__chunk_mem_xfree_wrapper(). 2020-05-20 09:19:37 -05:00
David Young
b1be318a62 Undo accidental test deletion. 2020-05-20 09:19:37 -05:00
David Young
3a65ddc936 Oops, delete a debug printf that snuck in here. 2020-05-20 09:19:37 -05:00
David Young
9685e4fb64 Undo my changes to the HD macros, hadn't really intended those to be on
this branch....
2020-05-20 09:19:37 -05:00
David Young
c30b30258d Make errors of some more warnings. Move disabled warnings to
DEVELOPER_WARNING_CFLAGS.  Put just one warning option on a line, and
sort some of the options.
2020-05-20 09:19:37 -05:00
David Young
2aa85f15ea Cast to the parameter type, H5VL_token_t *, instead of to unsigned char *.
(H5VL_token_t, too, probably should turn from a typedef for a
constant-length array to an array encapsulated in a struct.)
2020-05-20 09:19:37 -05:00
David Young
224653db64 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.
2020-05-20 09:19:37 -05:00
David Young
386138daa3 In every instance, x is initialized by memcpy, but GCC isn't smart
enough to figure that out.  Quiet some warnings by always initializing
`x` to 0.
2020-05-20 09:19:37 -05:00
David Young
7605df3cf0 same_file is assigned but never used. Delete it. 2020-05-20 09:19:37 -05:00
David Young
354fca5b59 Don't assign a constant string to a pointer to non-constant character. 2020-05-20 09:19:37 -05:00
David Young
cbd2e29914 GCC isn't smart enough to realize that fill_c is always initialized
and exclusively used in `datatype == H5T_COMPOUND` branches, so just
initialize it at its declaration so that GCC doesn't warn.
2020-05-20 09:19:37 -05:00
David Young
7638fbb258 I'm not sure what the previous code was trying to do, casting an array
of `hsize_t`, `start`, to `long long`, but I think the way that I have
rewritten it, it probably produces a more useful result?  As a bonus,
GCC has stopped warning about it.
2020-05-20 09:19:37 -05:00
David Young
1132ed87bc Quiet a warning about an unused variable. This code looks like it
should be heavily restructured to avoid the use of globals like `pass`,
but that's a project for another day and another person.
2020-05-20 09:19:37 -05:00
David Young
6b80036fde Straggler from previous commit: build and link the new .c files where I
moved some previously-static variables and functions that were causing
unused-variable/function warnings.
2020-05-20 09:19:37 -05:00
David Young
ad2b1fa0c5 Explicitly initialize type_flags; the compiler does not realize that
it is set before use by passing it as a reference to another function.
2020-05-20 09:17:27 -05:00
David Young
395d4f0716 Initialize a couple of return values to avoid used-before-set warnings. 2020-05-20 09:17:27 -05:00
David Young
1f7fdfe14c Initialize a couple of variables that the compiler does not realize are
initialized when they're passed by reference to functions.
2020-05-20 09:17:27 -05:00
David Young
ca0fcd34f3 To quiet a warning, initialize some struct timevals that the compiler
does not realize are always set before use by `gettimeofday`.
2020-05-20 09:17:27 -05:00
David Young
0206b1055e Move some static functions and variables to .c files to avoid unused
function/variable warnings.
2020-05-20 09:17:27 -05:00
David Young
f7699a7be4 Delete unused variable. 2020-05-20 09:17:27 -05:00
David Young
4440ccca7d Change a signed variable to unsigned to avoid a warning about the sign
being lost by a cast.
2020-05-20 09:17:27 -05:00
David Young
46ed46aa72 Avoid unused-variable warnings: change static const strings in a couple
of header-file templates to #defines.
2020-05-20 09:17:27 -05:00
David Young
f089da9c15 Demote errors to warnings for a couple of unused-but-set variables that
I cannot untangle right now.
2020-05-20 09:17:27 -05:00
David Young
ea084e6383 Delete an unused variable. 2020-05-20 09:17:27 -05:00
David Young
440bf2fc34 Mark an unused parameter H5_ATTR_UNUSED. 2020-05-20 09:17:27 -05:00
David Young
72a8f38a9f Delete variables that are unused or set and unused. 2020-05-20 09:17:27 -05:00
David Young
7b601c2611 Initialize a variable before its first use. 2020-05-20 09:17:27 -05:00
David Young
2b863a8119 Change some GCC warnings to errors. Fix code to quiet some warnings. 2020-05-20 09:17:27 -05:00
Allen Byrne
5069cbf96f Remove unneeded flag overwrites 2020-05-20 09:17:26 -05:00
Chris Hogan
ba7db398e0 Add documentation for H5CX_get_ohdr_flags 2020-05-20 09:17:26 -05:00
Chris Hogan
847a16dccc Add object header flags to API context
Add missing DCPL to API context state
Replace a couple LCPL H5P_get calls with H5CX_get_*
2020-05-20 09:17:26 -05:00
Chris Hogan
45f56375dc Use major error code of calling package 2020-05-20 09:17:26 -05:00
Chris Hogan
e5b0979bf7 Handle H5CX_state_t for lcpl 2020-05-20 09:17:26 -05:00
Chris Hogan
d596963eb9 Add character encoding to lcpl context 2020-05-20 09:17:26 -05:00
Chris Hogan
7555de2a26 Change LC property name from 'create_intermediate_group' to 'intermediate_group' 2020-05-20 09:17:26 -05:00
Chris Hogan
d4fb9dbc61 Use API context to store/retrieve LCPL when creating intermediate groups 2020-05-20 09:17:26 -05:00
Neil Fortner
49a4f6e64b Modify H5Ssel_iter_get_seq_list() to accept iterators that have reached
the end of iteration (returning zero sequences).  Previously it could
cause an assertion failure.
2020-05-20 09:17:26 -05:00
Allen Byrne
753e0ff0c9 Comment correction 2020-05-20 09:17:26 -05:00
Allen Byrne
b7e1dd706c Minor correction 2020-05-20 09:17:26 -05:00
Allen Byrne
820baf8531 Update list of tested platforms 2020-05-20 09:17:26 -05:00
Allen Byrne
66fc35d49c Add VS2019 support 2020-05-20 09:17:26 -05:00
Richard Warren
c77bda497a Fixed the H5_mpi_get_bigio_count function prototype 2020-05-20 09:17:26 -05:00
Allen Byrne
ac3ffbeff9 Correct file extension 2020-05-20 09:17:26 -05:00
Neil Fortner
0d9624b4d5 Implement public H5Sselect_project_intersection(). Updated internal
algorithm to (optionally) avoid sharing selection data structures.
Tested internal code (including with valgrind) by setting VDS code to
avoid sharing selection, has since been changed to share selection for
performance, so this code is not yet tested in regression tests.  API
has not been tested.
2020-05-20 09:17:26 -05:00
David Young
e067612d25 Use HD prefix. 2020-05-20 09:17:26 -05:00
Neil Fortner
814d5c3875 Fix issue where H5R__reopen_file did not make the file "post open"
callback.
2020-05-20 09:17:26 -05:00
David Young
058d7a1b3c 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.
2020-05-20 09:17:26 -05:00
Neil Fortner
31fd2e60c7 Implement H5VLget_file_type() to return a copy of a datatype with the
location set to be in a file.  Only meant to be used by VOL connectors.
Implement H5VLpeek_connector_id() to support connectors querying their
own IDs.  Fix app_ref with connector IDs in a couple places (external
VOLs registered as default through ENV should be visible to the
application).  Modify vlen and reference interfaces to work with
arbitrary VOL connectors.  Implement file "post open" specific
callback, to enable connectors to update their file structs after a
wrap context has been set.
2020-05-20 09:17:26 -05:00
Allen Byrne
1e7387a5f8 HDFFV-10876 Update h5dump and h5ls for new ref api. 2020-05-20 09:17:26 -05:00
David Young
408146236d Make these scripts relocatable again: derive a relative path for the
original installation prefix from the examples prefix.  Use that
relative path to locate the current installation prefix, always.  Fall
back to an absolute installation prefix if the relative path cannot be
derived.
2020-05-20 09:17:25 -05:00
David Young
3fee0cf435 Get the path to prefix right: needs a ../ to back out of subdirectory
c/.
2020-05-20 09:17:25 -05:00
David Young
94ecdfe1a3 Make this script relocatable again: derive a relative path for the
original installation prefix from the examples prefix.  Use that
relative path to locate the current installation prefix, always.  Fall
back to an absolute installation prefix if the relative path cannot be
derived.
2020-05-20 09:17:25 -05:00
David Young
8d3d457890 Let us override the examples directory using --with-examplesdir=DIR.
This is handy for NetBSD where HDF5 examples are installed
by convention in $prefix/share/examples/hdf5/ rather than in
${prefix}/share/hdf5_examples/, which is the HDF5 default.

Place hdf5_examples/ under ${datarootdir} which on most systems will be
${prefix}/share/, anyway.
2020-05-20 09:17:25 -05:00
Jordan Henderson
4c481e5564 Partial fix for HDFFV-10792 2020-05-20 09:17:25 -05:00
Larry Knox
60244c54fc Update MANIFEST for removal of older warnings files. 2020-05-20 09:12:43 -05:00
Larry Knox
8797ae3f3e Merge pull request #2592 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'fcd87d2569ca4d8396c7db4eddb46cab04010abf':
  Revise gnu-*flags and cmake/HDF*CompilerFlags.cmake files to add warning flags for GCC compilers version 4.8 and above. Removed files from gnu-warnings that only apply to versions < 4.8. Consolidated warnings from versions < 4.8 that apply to versions >= 4.8 into the 4.8 warnings files.
2020-05-18 21:59:49 -05:00
Larry Knox
fcd87d2569 Revise gnu-*flags and cmake/HDF*CompilerFlags.cmake files to add warning
flags for GCC compilers version 4.8 and above.
Removed files from gnu-warnings that only apply to versions < 4.8.
Consolidated warnings from versions < 4.8 that apply to versions >= 4.8
into the 4.8 warnings files.
2020-05-18 14:28:51 -05:00
Allen Byrne
820363aa6d Merge pull request #2582 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ad8f45d267a4ffb0696a4e30b590fa11ef68d06f':
  Correct mingw paths
  Correct path for mingw
2020-05-18 06:30:19 -05:00
Allen Byrne
ad8f45d267 Correct mingw paths 2020-05-15 13:21:43 -05:00
Allen Byrne
d14b87bfc8 Correct path for mingw 2020-05-15 13:06:01 -05:00
David Young
2943ab87e0 Add missing newline to dbgf() statement. 2020-05-15 12:26:40 -05:00
David Young
eb69be608d Make -q actually quiet the program. 2020-05-15 12:24:52 -05:00
David Young
a2ad44f419 Make the personality detection more robust like I did for
vfd_swmr_zoo_writer, previously.
2020-05-15 12:20:21 -05:00
Dana Robinson
26780517e6 Merge pull request #2573 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'ae07c9ba2429a9c49291bcd9f02c0ce36b0a60ce':
  Replaced a few calls to HDmemcpy with H5MM_memcpy, which does overlap checking.
  Removed HDgets macros since gets was deprecated in C99 and removed in C11 (gets() is not used in our repo).
2020-05-15 11:56:23 -05:00
David Young
ad79ca8ae7 Let us change the chunk size with command-line options, -r rows and -c
columns.  If the number of datasets is greater than the number of steps,
then only pause between steps, do not pause between individual datasets
written/verified.  Otherwise, pause between each dataset written/verified.
2020-05-15 11:36:00 -05:00
Dana Robinson
ae07c9ba24 Replaced a few calls to HDmemcpy with H5MM_memcpy, which does overlap
checking.
2020-05-15 06:44:01 -07:00
Dana Robinson
4d012b345c Merge branch 'develop' into develop_minor 2020-05-15 06:34:37 -07:00
David Young
2fe43bd423 Fix inverted logic: report "soft" errors if there were *not* 0 of them. 2020-05-13 11:46:54 -05:00
David Young
89bf6de17f This test doesn't need to log/modify traps in the global heap, so don't
provide a H5HG_trap() routine.
2020-05-13 11:46:30 -05:00
David Young
b4813b0c54 In H5FD_vfd_swmr_read(), do not verify checksums on shadow entries
that are longer than the buffer that the caller supplied: the checksum
usually will fail, but that's not actually a fatal condition, and
usually we will have another opportunity to verify the checksum.

In H5FD_vfd_swmr_read(), remove a bunch of disused code.

In H5FD_vfd_swmr_read(), do not re-read a shadow image that has a
bad checksum, because a bad checksum indicates a serious problem
(writer outran reader, OS defect, hardware failure) from which
H5FD_vfd_swmr_read() cannot recover.

Rationale: the writer write(2)s new shadow images before the new index,
and the new index before the new header.  In H5FD_vfd_swmr_read(),
the reader has read(2) both the index and the header in full.  POSIX
semantics indicate that in these circumstances, the last shadow image
write(2) MUST be completely visible when we read(2).  That is, the index
write(2) & read(2) and the header write(2) & read(2) pair cannot
divide a preceding shadow-image write(2).

The reader may see a "torn" image at this juncture if, for example,
the writer got max_lag ticks ahead of it and reused the storage for
this shadow image.  Even if the reader "recovers" by re-reading the
image until its checksum is correct, it cannot be sure that the
image thus read is the right one for the HDF5 address passed to
H5FD_vfd_swmr_read(), and it cannot be sure that the image thus read is
not stale, because it's operating with an out-of-date shadow index.

Add log outlets swmr_read, swmr_read_exception, and swmr_read_err.
Log to `swmr_read` on entry to H5FD_vfd_swmr_read(), log to
`swmr_read_exception` when checksums are skipped for exceptional
conditions (page buffer not configured, buffer shorter than shadow
image), and log to `swmr_read_err` when the checksum fails.
2020-05-13 10:30:00 -05:00
David Young
92142cba38 When an entry changes size, remove it from the tick list and add it back
to keep the cumulative bytes in the tick list up-to-date.  That prevents
an assertion, later.
2020-05-11 18:06:23 -05:00
David Young
cc6e4055cb Don't initialize seed without need. NFCI. 2020-05-11 17:24:53 -05:00
David Young
562d5beab2 Look for the personality in the program name *suffix*, because on
`jelly` libtool adds an `lt-` prefix to the program name.
2020-05-11 15:17:42 -05:00
David Young
8ed6529fc0 In H5MF__xfree_impl(), always invalidate the page-table entries
overlapped by the freed region.  Previously, the page-table entries were
only freed on one success path through _xfree_impl().
2020-05-11 15:14:58 -05:00
Dana Robinson
15f7ab3546 Merge pull request #2574 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:warning_fixes to develop
* commit '55844f79e94d49f7ccc8fff1fa3d80f153bb13ea':
  Misc warning fixes.
2020-05-11 11:31:22 -05:00
Dana Robinson
55844f79e9 Misc warning fixes. 2020-05-10 09:48:30 -07:00
Dana Robinson
ad8f72ca29 Removed HDgets macros since gets was deprecated in C99 and removed
in C11 (gets() is not used in our repo).
2020-05-10 03:33:54 -07:00
David Young
4b61113d2f Split VFD_SWMR_TEST_FOR_END_OF_TICK() into VFD_SWMR_ENTER() and
VFD_SWMR_LEAVE() for use by FUNC_ENTER_API/_LEAVE_API macros.  In the
macros, don't HGOTO_ERROR(), since that will jump back to the `out`
label, but HDONE_ERROR() on error, instead.
2020-05-08 19:33:15 -05:00
David Young
35a4bfb551 Extend VFD SWMR tick length and maximum lag parameters. 2020-05-08 19:32:24 -05:00
David Young
d1de9d695f Delete extra line. NFCI. 2020-05-08 19:32:09 -05:00
David Young
561974d329 Add missing return-value check. 2020-05-08 19:31:54 -05:00
David Young
a69c33af13 Take care not to leak property lists or data spaces. 2020-05-08 19:31:32 -05:00
Allen Byrne
f7bfa60bf9 Merge pull request #2568 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f82348f80940e6ea197b7913f6357a5bbde3c43d':
  Comment out pull-request action and enable fail fast
  Correct filename
  Change to use alias
  Fix name setting
  OESS-65 fix packaging config files
2020-05-08 16:28:52 -05:00
Allen Byrne
f82348f809 Comment out pull-request action and enable fail fast 2020-05-08 15:32:15 -05:00
Allen Byrne
a5a3a5d9b3 Correct filename 2020-05-08 12:57:44 -05:00
Allen Byrne
9a097529ab Change to use alias 2020-05-08 10:51:07 -05:00
Allen Byrne
8cff990553 Fix name setting 2020-05-08 10:10:49 -05:00
Allen Byrne
aef4c9b02b OESS-65 fix packaging config files 2020-05-08 08:58:22 -05:00
David Young
b7c05d2231 Fix bugs in the dataset dimensions checks. 2020-05-07 14:34:34 -05:00
David Young
5d4b109abf Create a reader for the extensible datasets tests. 2020-05-07 12:09:15 -05:00
Allen Byrne
96cabf6c59 Merge pull request #2565 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b147797449503e9a166b277fdabffafd5561d718':
  Correct path
2020-05-07 10:02:06 -05:00
Allen Byrne
b147797449 Correct path 2020-05-07 08:50:12 -05:00
David Young
f8e494ba80 Add my work-in-progress dataset test. It writes a handful of datasets
that expand in one or two dimensions, depending on the setting of the -d
option argument.
2020-05-06 15:01:29 -05:00
David Young
696173c284 Add esnprintf that prints to the given buffer, observing the given
buffer size, using vsnprintf(3), but exits with err(3)/errx(3) if the
buffer is too small or if vsnprintf returns < 0.
2020-05-06 14:44:59 -05:00
Allen Byrne
88a39adaa2 Merge pull request #2561 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'a1ce9b2242774c9ef8f7200dc7e3d9e31fd33676':
  Correct step name
  Correct test
  Add github actions
2020-05-06 11:08:58 -05:00
Allen Byrne
a1ce9b2242 Correct step name 2020-05-06 11:08:12 -05:00
Allen Byrne
c1565d2b57 Correct test 2020-05-06 09:38:59 -05:00
Allen Byrne
521c3f8ff6 Add github actions 2020-05-06 08:10:37 -05:00
Quincey Koziol
9d6b4fd501 Merge pull request #2557 in HDFFV/hdf5 from alloc_0sized_dset_fix to develop
* commit 'deadf2546561caa01537334dbb209e60c28d26c5':
  Align contents of CMake and autotools testfile cleanup lists.
  Avoid allocating a chunk index for datasets with 0-sized dimensions, until the dataset is extended.
2020-05-04 13:13:55 -05:00
Quincey Koziol
deadf25465 Align contents of CMake and autotools testfile cleanup lists. 2020-05-02 20:42:33 -05:00
Quincey Koziol
ac069841f3 Avoid allocating a chunk index for datasets with 0-sized dimensions, until
the dataset is extended.
2020-05-01 17:59:57 -05:00
David Young
c07a958e1d Insert a random delay between zoo-writer test steps. Let us control
the random seed with an environment variable, H5_ZOO_STEP_SEED, and the
maximum delay in milliseconds with a command-line option, `-m ms`.
2020-04-30 15:39:35 -05:00
David Young
fdeeac1c1b Use a one-character buffer to send/receive messages to/from
writer/reader, since that's all we need.  Avoid deadlock by flushing the
file before waiting for the reader's message.
2020-04-30 15:26:39 -05:00
David Young
57e5c4305c Avoid deadlock of reader and writer: make the writer flush file content
before waiting for the reader's message.
2020-04-30 15:22:36 -05:00
David Young
becb9d8292 In fetch_env_ulong(), report a parse that consumes fewer than all
characters differently than other parse failures.
2020-04-30 15:21:26 -05:00
Dana Robinson
a1435404b5 Merge pull request #2552 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'dc3b8372c7ac63b5b0f00ad94a4f8f32cbb8d391':
  Protected H5Oset_comment() in h5dump test generator. (Assumes environment variable overrides default VOL connector)
2020-04-28 11:05:07 -05:00
David Young
a5ca065b7c Add a rudimentary zoo test to the VFD SWMR test script.
Briefly describe the variable-length test with a comment.
2020-04-28 10:27:55 -05:00
David Young
17a1789b85 Change some fprintf callss to dbgf calls, and increase the debug level
of several dbgf statements from 1 to 2 so that `-q` quiets them.
2020-04-28 08:44:35 -05:00
David Young
a204a184aa Let catch_out_err_and_rc() callers redirect the standard input and
output streams using STDIN_PATH and STDOUT_PATH.  I will use that for
the zoo reader and writer.  Move redirection of standard error output to
the standard output stream outside of the curly braces, since usually
I want to save the `echo` and `wait` output, too, and it makes the
redirection of the supervised program a little easier to follow, I
think.
2020-04-28 08:40:58 -05:00
David Young
4e48041a13 Move fetch_env_ulong() from vfd_swmr.c to vfd_swmr_common.c for eventual
reuse by the zoo writer.
2020-04-28 08:35:12 -05:00
Dana Robinson
dc3b8372c7 Protected H5Oset_comment() in h5dump test generator.
(Assumes environment variable overrides default VOL connector)
2020-04-28 04:21:47 -07:00
Jordan Henderson
9e82926bb9 Merge pull request #2551 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '0644921cc207dda2551bf2893e12877b7bc0ec8c':
  Fix memory error in h5dump xml 'escape the string' routine
2020-04-27 19:48:03 -05:00
Jordan Henderson
0644921cc2 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~jhenderson/hdf5 into develop 2020-04-27 18:57:47 -05:00
Jordan Henderson
2442de3389 Fix memory error in h5dump xml 'escape the string' routine 2020-04-27 18:57:36 -05:00
Quincey Koziol
4186e0d5be Merge pull request #2540 in HDFFV/hdf5 from extend_h5debug to develop
* commit '3f3363177d5cc1efc8fcfc70e1feed7a293da2d4':
  Range check # of 'extra' command-line parameters against array size.
  Refactor "extra" command-line arguments, and clean up code so the tool doesn't assert when exiting.
  Extend h5debug to support 3-D datasets for chunks.
2020-04-27 18:48:32 -05:00
Dana Robinson
1a2668e13f Merge pull request #2547 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'bf5e832acc0527050d63f5cb91fe15e040bf7e48':
  Fixed pio_perf const pointers.
2020-04-27 12:16:27 -05:00
Dana Robinson
bf5e832acc Fixed pio_perf const pointers. 2020-04-27 09:58:11 -07:00
Dana Robinson
9a598477c6 Merge pull request #2541 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'c03ee563f46013d22f36a1895664a9ba876558e9':
  Further updates to the tools warnings fixes from code review.
  Updates to tools warning PR from code review.
  Fixes for warnings in the tools code.
2020-04-27 10:51:58 -05:00
Dana Robinson
f3d2304647 Merge pull request #2542 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:warning_fixes to develop
* commit 'c3367e6634d4dee88ff855da08e312f6685c23af':
  Moved -Woverlength-strings to the developer flags.
2020-04-27 10:51:08 -05:00
Dana Robinson
c03ee563f4 Further updates to the tools warnings fixes from code review. 2020-04-27 08:50:27 -07:00
David Young
d16006c45d To avoid name clashes, rename FILENAME -> COMMON_FILENAME in
test/vfd_swmr_common.h and in all files that #include it.  Now I can
2020-04-27 10:28:10 -05:00
Dana Robinson
c3367e6634 Moved -Woverlength-strings to the developer flags. 2020-04-26 04:22:12 -07:00
Dana Robinson
de3bfa697a Updates to tools warning PR from code review. 2020-04-26 02:54:29 -07:00
Quincey Koziol
3f3363177d Range check # of 'extra' command-line parameters against array size. 2020-04-25 22:52:52 -05:00
Quincey Koziol
c18ed719ec Refactor "extra" command-line arguments, and clean up code so the tool doesn't
assert when exiting.
2020-04-25 20:48:32 -05:00
Dana Robinson
a8676d74d9 Fixes for warnings in the tools code. 2020-04-25 16:49:04 -07:00
Allen Byrne
9c3041b129 Merge pull request #2538 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '64fa9327d008c0c3d17c9489c32d99e0d514f88e':
  Add "override with" to error message
  HDFFV-10576 add Option name to Error Message
2020-04-25 09:19:16 -05:00
Larry Knox
06033d1d39 Merge pull request #2539 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'ae9dc2d5f9016ef279ca9d0ca8ad9c8416e60df9':
  Restrict errors to gcc 4.8 and above.
2020-04-24 22:12:02 -05:00
Quincey Koziol
ed833f1c8d Extend h5debug to support 3-D datasets for chunks. 2020-04-24 21:13:31 -05:00
David Young
536a8b57bc Merge pull request #2537 in HDFFV/hdf5 from ~DYOUNG/werror:fix-werrors to develop
* commit 'd16eb45d536bd13ca3cf1b0bdc76c58d95d13f17':
  For compatibility with non-C99 Visual Studio versions, use "%" PRIuMAX instead of "%ju".
  Fix `test/swmr_sparse_reader.c:118:77: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast]` and `test/snapshots-hdf5/current/test/swmr_sparse_reader.c:129:100: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast]`.
  Fix `src/H5FDdirect.c:1346:5: error: ISO C90 forbids mixed declarations and code [-Werror=declaration-after-statement]`.
2020-04-24 21:09:14 -05:00
David Young
d16eb45d53 For compatibility with non-C99 Visual Studio versions, use "%" PRIuMAX
instead of "%ju".
2020-04-24 18:49:37 -05:00
Allen Byrne
ae9dc2d5f9 Restrict errors to gcc 4.8 and above. 2020-04-24 16:25:51 -05:00
Allen Byrne
64fa9327d0 Add "override with" to error message 2020-04-24 16:23:28 -05:00
Allen Byrne
709464301a HDFFV-10576 add Option name to Error Message 2020-04-24 13:05:58 -05:00
Allen Byrne
e54f5a14d2 Merge pull request #2534 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '7f44915b442b4d65ccf2f78dae3c1f7224658bea':
  Fix NoFilter build
  Remove old szip line
  OESS-65 add option to use AEC library in place of SZip
2020-04-24 11:45:53 -05:00
David Young
737a28dc97 Fix `test/swmr_sparse_reader.c:118:77: error: cast from pointer
to integer of different size [-Werror=pointer-to-int-cast]` and
`test/snapshots-hdf5/current/test/swmr_sparse_reader.c:129:100:
error: cast from pointer to integer of different size
[-Werror=pointer-to-int-cast]`.
2020-04-24 10:22:28 -05:00
David Young
26e640da7e Fix `src/H5FDdirect.c:1346:5: error: ISO C90 forbids mixed declarations
and code [-Werror=declaration-after-statement]`.
2020-04-24 10:18:15 -05:00
Allen Byrne
7f44915b44 Fix NoFilter build 2020-04-24 07:49:39 -05:00
Allen Byrne
e52b54702d Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '8921d12c56960379c7d84584e42bbaf68b30e142':
  TRILAB-244 separate CXX warnings and errors from C
2020-04-23 16:09:45 -05:00
David Young
068399054a Implement the remainder of the delete/validate-delete cases. 2020-04-23 16:03:29 -05:00
Allen Byrne
8921d12c56 Merge pull request #2533 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'f9a3ae50812a527c7b88a39d7d5b6629aa234a2d':
  TRILAB-244 separate CXX warnings and errors from C
2020-04-23 15:50:31 -05:00
David Young
8966557705 Flesh out the delete/validate-deletion tests. Extract a shared
subroutine.
2020-04-23 15:33:39 -05:00
David Young
a9849089c6 Delete dead code. Re-enable the coordination between reader and writer:
the writer expects to read a character on its standard input stream when
the reader is ready for it to delete the zoo content.
2020-04-23 15:31:56 -05:00
David Young
b1e2eceed7 Let the reader-side tick instrumentation know about the first tick read
from the shadow file.
2020-04-23 15:29:53 -05:00
David Young
a0b6979c6f Relax an assertion condition. 2020-04-23 15:29:17 -05:00
David Young
3cc2644c70 Bug fix: in the freespace manager, use a new routine,
H5PB_remove_entries(), to remove *all* pages overlapped by the freed
space, instead of just the first one.
2020-04-23 15:26:25 -05:00
Allen Byrne
f9a3ae5081 TRILAB-244 separate CXX warnings and errors from C 2020-04-23 14:32:29 -05:00
Allen Byrne
79cb6eaf7d Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5ea58acf8a2bdf8ca19d4c86d9ef94fbc4ac449f':
  Add missing ')'.
  Add C++ warnings treated as error for autotools builds.
  Move macro ADD_H5_CFLAGS to cmake_ext_mod/HDFMacros.cmake and remove duplicate versions.
  Address PR suggestions and add overlooked GCC compiler version flags.
  Don't add general warnings flags for unsupported old versions of gcc and g++ (older than gcc/g++ 4.2). Correct gnu-cxxflags to determine warnings flags to be added based on C++ compiler version instead of C compiler version.
2020-04-23 13:44:32 -05:00
Larry Knox
5ea58acf8a Merge pull request #2525 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '43424a1392b662a29542bb70014c253162ccfe48':
  Add missing ')'.
  Add C++ warnings treated as error for autotools builds.
  Move macro ADD_H5_CFLAGS to cmake_ext_mod/HDFMacros.cmake and remove duplicate versions.
  Address PR suggestions and add overlooked GCC compiler version flags.
  Don't add general warnings flags for unsupported old versions of gcc and g++ (older than gcc/g++ 4.2). Correct gnu-cxxflags to determine warnings flags to be added based on C++ compiler version instead of C compiler version.
2020-04-23 13:41:34 -05:00
Larry Knox
43424a1392 Add missing ')'. 2020-04-23 13:19:15 -05:00
Larry Knox
de51001fcd Add C++ warnings treated as error for autotools builds. 2020-04-23 13:14:56 -05:00
Allen Byrne
ec569a663a Remove old szip line 2020-04-23 09:36:36 -05:00
Allen Byrne
7eab9000ae Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '1db039d1beee05d7349e153cef4cf642c907cc1e':
  Fixed h5diff command-line parameters to use 1 and 2 instead of src and dst.
  Added VOL command-line options to (p)h5diff, h5ls, h5dump, and h5mkgrp.
2020-04-23 06:46:31 -05:00
Dana Robinson
1db039d1be Merge pull request #2532 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '785bd0975ba13c3033820d0fc809da963fcd54ca':
  Fixed h5diff command-line parameters to use 1 and 2 instead of src and dst.
  Added VOL command-line options to (p)h5diff, h5ls, h5dump, and h5mkgrp.
2020-04-22 19:07:48 -05:00
Dana Robinson
785bd0975b Fixed h5diff command-line parameters to use 1 and 2 instead of src
and dst.
2020-04-22 16:49:52 -07:00
Allen Byrne
16b1ee6899 OESS-65 add option to use AEC library in place of SZip 2020-04-22 11:48:56 -05:00
Larry Knox
d965e53cc0 Move macro ADD_H5_CFLAGS to cmake_ext_mod/HDFMacros.cmake and remove
duplicate versions.
2020-04-22 10:42:32 -05:00
Larry Knox
5a010aace9 Address PR suggestions and add overlooked GCC compiler version flags. 2020-04-22 09:43:15 -05:00
David Young
744ff2b84d Delete an assertion that doesn't hold true for multipage entries. 2020-04-21 16:42:59 -05:00
David Young
13e930d306 Add a skip compact configuration for skipping the "zoo" tests for
compact datasets.

Bundle the zoo-test configuration into a new type, zoo_config_t.

Add a couple new "zoo" test phases, "delete" and "validate-deletion", to
the existing "create" and "verify" phases.  Give names and numbers to
all phases with the new `enum`, `phase_t`, and refactor so that tend_zoo
runs a selection of phases at each step.

Stub the "delete" and "validate-deletion" phases for most test steps.
Actually implement for compact dataset (ds_cpt_i) test.

In tend_zoo(), delay for 50 milliseconds after running all steps.
Really, this should delay after each step....

Implement vfd_swmr_writer_may_increase_tick_to() and
vfd_swmr_reader_did_increase_tick_to() with a file that reader and
writer share.  The reader saves its current tick number in the shared
file.  The writer does not advance its tick number past the reader's.
Collect some statistics in vfd_swmr_writer_may_increase_tick_to() and
print them before the writer exits.

Add option flags for skipping compact dataset tests (-C) and for
printing error stacks (-e).  Update the usage message, which was
stale before the new options were added.

Delete some dead code.

Add #if 0'd-out code for the reader to wait for the writer before
running "delete" and "validate-deletion" steps.
2020-04-21 15:39:25 -05:00
David Young
de18e8c95a Make await_signal() await any signal instead of just SIGINT. Add a
(commented out) private version of strsignal(3), just in case we need
one on some platform.
2020-04-21 15:19:19 -05:00
David Young
95105d3fac Prevent a spurious assertion by using the correct index, oops! 2020-04-21 14:24:01 -05:00
David Young
b1de3197d3 Delete an empty line. NFCI. 2020-04-21 14:23:23 -05:00
David Young
62ae44da95 Straggler from last: provide stub implementations
of vfd_swmr_writer_may_increase_tick_to() and
vfd_swmr_reader_did_increase_tick_to().
2020-04-21 14:20:52 -05:00
David Young
1d9ab42c57 Add a second bool argument to H5F_vfd_swmr_writer_end_of_tick() that
tells whether the call may wait for the reader tick to catch up.

Add stub routines vfd_swmr_writer_may_increase_tick_to() and
vfd_swmr_reader_did_increase_tick_to() for tests---e.g.,
vfd_swmr_zoo_writer/_reader---to use to coordinate their tick numbers.

vfd_swmr_writer_may_increase_tick_to(new_tick, wait_for_reader) returns
true if the writer may increase its tick number to `new_tick` without
overrunning the reader.

A reader uses vfd_swmr_reader_did_increase_tick_to() to tell a writer
that its tick number has increased.
2020-04-21 14:17:15 -05:00
David Young
ea51b2e095 Condense H5F_vfd_swmr_close_or_flush() for readability: remove
unnecessary comments and trim whitespace.  Remove unnecessary backslash
line continuations and add semicolons to HGOTO_ERROR() statements.
NFCI.
2020-04-21 14:10:00 -05:00
Dana Robinson
8cd9d8349e Added VOL command-line options to (p)h5diff, h5ls, h5dump, and h5mkgrp. 2020-04-21 11:36:10 -07:00
Dana Robinson
729ad25bdf Merge pull request #2530 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'c6097935d5be4c3750b9bf9167783ad28158905b':
  Separated VFD and VOL parameters in tools.
2020-04-21 08:49:15 -05:00
Quincey Koziol
c9a21e932e Merge pull request #2527 in HDFFV/hdf5 from trim_whitespace to develop
* commit '9e5dbf69062d4d2cb40ba8f68edb355477fc9b67':
  Trim trailing whitespace
2020-04-21 08:10:26 -05:00
Dana Robinson
c6097935d5 Separated VFD and VOL parameters in tools. 2020-04-20 17:38:45 -07:00
Quincey Koziol
9e5dbf6906 Trim trailing whitespace 2020-04-20 18:12:00 -05:00
David Young
f05358b410 Quiet some used-before-initialized warnings. 2020-04-20 16:15:48 -05:00
David Young
53cb28016d Straggler from last: retire vfd_swmr_writer_g. 2020-04-20 16:08:25 -05:00
David Young
aee40b370d Retire globals vfd_swmr_writer_g and end_of_tick_g. 2020-04-20 16:05:27 -05:00
Larry Knox
5c87b06d9d Don't add general warnings flags for unsupported old versions of gcc and
g++ (older than gcc/g++ 4.2).
Correct gnu-cxxflags to determine warnings flags to be added based on
C++ compiler version instead of C compiler version.
2020-04-20 16:03:08 -05:00
David Young
fc36f53115 Quiet some used-before-initialized warnings and, while I am here,
initialize one variable with a named constant instead of -1.
2020-04-20 15:55:03 -05:00
Dana Robinson
7ba692badf Merge pull request #2522 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:new_vfd_cleanup to develop
* commit '384693d8e5917011c906cdca901baf1519d0ff87':
  Fixed some minor cmp callback bugs and cleaned warnings.
2020-04-17 11:47:23 -05:00
Dana Robinson
384693d8e5 Fixed some minor cmp callback bugs and cleaned warnings. 2020-04-17 00:46:46 -07:00
Dana Robinson
19bca90648 Merge pull request #2521 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '9ecca22dd1852145810280e8c54aa6b0ab26b604':
  Fixed problems with S3 and HDFS VFDs. * Updated info struct parameter to correct info_string * Fixed Makefile.am where the S3 VFD was listed twice, causing   duplicated symbols errors.
2020-04-16 22:10:47 -05:00
Dana Robinson
9ecca22dd1 Fixed problems with S3 and HDFS VFDs.
* Updated info struct parameter to correct info_string
* Fixed Makefile.am where the S3 VFD was listed twice, causing
  duplicated symbols errors.
2020-04-16 17:07:21 -07:00
David Young
752af2134f Stragglers from previous: globally declare some hlog outlets and add
declare some new functions.
2020-04-16 17:04:21 -05:00
David Young
69e95c3748 Add a log outlet for metadata cache (MDC) invalidations,
`mdc_invalidation`, and use it to log a message when
H5C_evict_or_refresh_all_entries_in_page() does not find any affected
entries.

Pass a page length to H5C_evict_or_refresh_all_entries_in_page() so that
it can assert if a multipage eviction overlaps a single-page entry,
which had better not happen.

Fix a bug in H5F_vfd_swmr_reader_end_of_tick() and heavily rework it:
remove page-table entries and evict/refresh MDC entries that overlap
*added* shadow-index entries.  Because we didn't do that before, in the
zoo test, the reader didn't see all of the changes made by the writer
until the writer closed the file:  MDC entries covered the new content
in the shadow file.

In H5F_vfd_swmr_reader_end_of_tick(), log changes to the shadow index
with the new outlet, `shadow_index_update`.

Convert a some of John's disused diagnostic printfs to an
`hlog_fast(eot, ...)` call.
2020-04-16 17:03:25 -05:00
David Young
71b7a186ef Delete unused line, shorten a comment, wrap some lines, add missing
semicolons and curly braces.  NFCI.
2020-04-16 16:36:27 -05:00
David Young
9c6b5a270c Re-enable reclamation of disused shadow-index entries. 2020-04-16 16:20:56 -05:00
David Young
98838cb0f3 Remove unnecessary pointer test: it cannot possibly be NULL. 2020-04-16 16:16:12 -05:00
David Young
ad4206a604 Remove gratuitous initialization, comment, and assertions. 2020-04-16 16:13:59 -05:00
David Young
6f65412b76 Extract a subroutine, H5F_vfd_swmr_process_eot_queue(), from the
end-of-tick processing macro.  H5F_vfd_swmr_process_eot_queue() looks
for files due for end-of-tick processing and calls either the reader or
writer EOT routine.

Always call the reader/writer EOT routines with an actual H5F_t instead
of NULL.
2020-04-16 16:08:15 -05:00
David Young
21f3fae469 Refactor: extract subroutine estack_get_state() for reuse in a commit
that's coming soon.
2020-04-16 15:30:27 -05:00
David Young
86be273386 Send debug messages to stderr instead of to stdout. 2020-04-16 15:29:26 -05:00
David Young
1f563c80b5 Improve diagnostic logging. 2020-04-16 15:26:00 -05:00
David Young
c69d756f75 Oops, properly the outlet symbol-name prefix with the rest of the symbol
name, so the symbols are not prefixed with `HLOG_PREFIX` but with
`hlog_gbl_`.
2020-04-16 15:21:09 -05:00
David Young
aebeeada31 When hlog_set_state() changes the state of an outlet, reset each
outlet's cached state so that its state is reevaluated.
2020-04-16 15:18:51 -05:00
David Young
6bf7e1cada Log page-buffer reads and writes no matter what storage type. (Used to
log only the global heap-type reads and writes.)
2020-04-16 15:02:15 -05:00
David Young
f51f69faad Re-wrap paragraphs at < 80 columns. 2020-04-15 09:44:14 -05:00
David Young
4b40738946 Mark a task complete, fix some typos, wrap some paragraphs. 2020-04-15 09:40:17 -05:00
Allen Byrne
66842e3347 Merge pull request #2511 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '602e56ea12208cd4a4b23b0f9a3f7a53aceb1b48':
  TRILAB-192 version of std=f2008 special check
2020-04-14 12:45:08 -05:00
Allen Byrne
602e56ea12 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'da565fba7b37c0e6806adab1f59416bb0ac9041e':
  Update h5repack long arguments for id-->value changes.
  Changed identifiers and command-line options from "id" to "value" in tools code to be in agreement with H5VL API terminology.
2020-04-14 12:32:27 -05:00
David Young
671c28bfad Put multiline if-body in curly braces, repair indentation, remove
gratuitous backslash line continuation, add missing semicolons.
2020-04-14 12:15:49 -05:00
Dana Robinson
da565fba7b Merge pull request #2510 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '2188e7d731199cac08c6e6150ccd2fb43227ec32':
  Update h5repack long arguments for id-->value changes.
  Changed identifiers and command-line options from "id" to "value" in tools code to be in agreement with H5VL API terminology.
2020-04-14 11:11:58 -05:00
David Young
a6d7004c03 Wrap a line before 80 characters. NFCI. 2020-04-14 10:55:53 -05:00
David Young
4dc315dfb7 Document hlog a bit. 2020-04-14 09:04:18 -05:00
Allen Byrne
e02e86b78d TRILAB-192 version of std=f2008 special check 2020-04-14 08:27:45 -05:00
Dana Robinson
2188e7d731 Update h5repack long arguments for id-->value changes. 2020-04-14 05:16:01 -07:00
Dana Robinson
28d2596f65 Changed identifiers and command-line options from "id" to "value" in tools
code to be in agreement with H5VL API terminology.
2020-04-14 04:31:01 -07:00
David Young
43b8671231 Change the prefix for hlog_outlet_t's from log_ to hlog_gbl_ to avoid
namespace pollution.  Use a `#define HLOG_PREFIX hlog_gbl_` so that I
can change all of the prefixes in one place if need be.
2020-04-13 17:10:30 -05:00
David Young
03a91f3cf5 Add a log outlet, tick, and log some changes to the tick number there.
While I'm here, assert in the reader that the tick number hasn't leapt
forward by more than max_lag ticks.
2020-04-13 16:16:53 -05:00
David Young
5248e9f2c5 tick_num_g has been gone for a while, so do not refer to it in
comments any longer.
2020-04-13 16:14:01 -05:00
David Young
647091ab53 Add clean_shadow_index() for removing shadow-index entries that were
flushed more than max_lag ticks ago.  This conserves space in the shadow
file, which would grow great big while the `credel` demo ran.
2020-04-13 16:02:55 -05:00
vchoi
2b5dbc7d42 Add H5MV split method for alignment. 2020-04-13 14:52:26 -05:00
David Young
1ce8ff1fea Check whether or not the shadow entry size is different from the
pagebuffer entry size.  If the sizes are different, then release the old
shadow space (using the correct size) and set the shadow page number to
0 so that H5F_update_vfd_swmr_metadata_file() will allocate new shadow
space with the right size.

Vailin says that this fixes the bug she found, where a 4096-byte buffer
allocated by H5MV_alloc() is released with H5MV_free() as if it was 8192
bytes long.
2020-04-13 12:10:02 -05:00
Allen Byrne
e9ad3bad4e Merge pull request #2509 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ef70c1695d0cccb4ba379abe3969ac2fec0d4ebe':
  Fix shadowed type
2020-04-13 11:07:53 -05:00
Allen Byrne
ef70c1695d Fix shadowed type 2020-04-13 10:25:44 -05:00
Allen Byrne
4688f0ac07 Merge pull request #2508 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'e68848f397eb66ffbec86ab59b7754c48281e0b3':
  TRILAB-192 - cleanup edits and match CMake CXX to autotools
2020-04-13 10:01:31 -05:00
Allen Byrne
e68848f397 TRILAB-192 - cleanup edits and match CMake CXX to autotools 2020-04-13 08:16:57 -05:00
Jake Smith
f1893e9404 Merge pull request #2452 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:feature/vfd_splitter_mirror_a to develop
Add Splitter VFD and Mirror VFD.

* commit '664fc6af47e369152727ff66d68d8532feb0e210':
  Add enable-mirror-vfd flag to configure options.
  Tidying of Mirror VFD.
  Add function header comment for `mirror_writer:run_writer()`.
  Add Splitter VFD to library.
2020-04-11 11:53:41 -05:00
Larry Knox
14ba946283 Merge pull request #2507 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'eedda6eb070c6f6bc58776468b57f4921f06983a':
  Add missing " and update function calls incorrectly named load_gcc_arguments.
2020-04-10 16:32:24 -05:00
Larry Knox
eedda6eb07 Add missing " and update function calls incorrectly named
load_gcc_arguments.
2020-04-10 14:13:26 -05:00
Larry Knox
94e878c281 Merge pull request #2498 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '3ec77a2d9ad8ba42dde93942727c1f4ed83212f6':
  TRILAB-192 update LTparse files
2020-04-09 17:58:52 -05:00
Jordan Henderson
e372c8e648 Merge pull request #2505 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '65a704167c83c3fa8d5cc05e4ac7e032a051151c':
  Fix memory leak in t_span_tree.c test
2020-04-09 15:58:36 -05:00
Jordan Henderson
65a704167c Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~jhenderson/hdf5 into develop 2020-04-09 14:24:02 -05:00
Jordan Henderson
e1508b7695 Fix memory leak in t_span_tree.c test 2020-04-09 14:23:50 -05:00
Dana Robinson
7cf36ea7c3 Merge pull request #2504 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'd86089f583382c0379f446a5e4d552599ed5b3b4':
  Added support for passing connector info strings via the command line to the tools internals.
2020-04-09 11:09:29 -05:00
Dana Robinson
d86089f583 Added support for passing connector info strings via the command
line to the tools internals.
2020-04-09 08:40:41 -07:00
Dana Robinson
0fdbbcfc0b Merge pull request #2502 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '35c0d5cdfcfaa84f59e1c596ba1ccaeb28e3d83d':
  Fix for passthrough VOL not passing tools tests due to incorrect optional callback queries.
2020-04-09 10:30:09 -05:00
Larry Knox
88ff2b6cb8 Merge pull request #2503 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:Wflags_changes_develop_merge to develop
* commit 'fffe3b8dbd90a38296be866bae1c66d90664dd14':
  Update all load_gcc_arguments to load_gnu_arguments. Fixes TRILAB-212.
2020-04-08 22:19:27 -05:00
Larry Knox
fffe3b8dbd Update all load_gcc_arguments to load_gnu_arguments.
Fixes TRILAB-212.
2020-04-08 21:31:29 -05:00
Dana Robinson
35c0d5cdfc Fix for passthrough VOL not passing tools tests due to incorrect
optional callback queries.
2020-04-08 16:44:19 -07:00
Vailin Choi
fcd3bce961 Merge pull request #2496 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/dtype_close_on_error to develop
* commit 'db9155c2f34bbf77a1cda01904805fe5c993b6d5':
  Fix according to PR feedback.
  Fix an error in previous merge: should use NULL instead of FAIL.
2020-04-08 18:33:00 -05:00
Larry Knox
9c0b571149 Merge pull request #2501 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:Wflags_changes_develop_merge to develop
* commit 'e6cd19937b0e5fe5b49f7e88b08f15305e0b5af1':
  Squashed commit of the following:
  Add \d to list of characters allowed after '-' in versions.
2020-04-08 18:13:11 -05:00
Larry Knox
e6cd19937b Squashed commit of the following:
commit 8963c3bf756f8f8ec21beea9bd29a767e77675a8
Author: Larry Knox <lrknox@hdfgroup.org>
Date:   Wed Apr 8 16:52:27 2020 -0500

    Commit changes to gnu-cxxflags to remove unmatched " and to gnu-fflags
    to not add C warnings flags to H5_FCFLAGS.
2020-04-08 17:02:34 -05:00
Jacob Smith
664fc6af47 Add enable-mirror-vfd flag to configure options. 2020-04-08 16:51:38 -05:00
Larry Knox
b35dcaf847 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b27a20f8c0e286ea7c2836605632ea2ee5522d03': (59 commits)
  Hide Frortran directive warnings
  Updated test ddl files so CMake passes after h5dump failures.
  Remove flag from gfort-general in gfort-5, add /EHsc to Win C++
  Update printf pointer syntax and revert fortran to f2003
  Reduce window fortran standard to f90
  Minor updates and fix settings for fortran flags
  Update intel flags
  Narrowed the scope of ISO_C_BINDING with ONLY additions
  Fix missing endif
  Correct improper file move
  Move intel warnings to subfolder, update autotools files
  Corrected note
  Remove overzealous additions
  Correct whitespace in flags, force list mode
  Flag construction must be after compiler detection
  TRILAB-192 add c++ and fortran warnings build systems one file
  Skip testing of passthrough VOL connector in a Family File tools test
  Update release note for CMake warnings
  Restore previous tools library driver name behavior with passthrough VOL connector
  Add missing header include
  ...
2020-04-08 12:45:59 -05:00
David Young
8ec3ad3d93 Be brief: remove commas and equal signs from diagnostic log messages. 2020-04-08 10:13:00 -05:00
David Young
6d0d1b490b Fix spelling in a comment. 2020-04-08 10:12:15 -05:00
Allen Byrne
3ec77a2d9a TRILAB-192 update LTparse files 2020-04-07 17:56:42 -05:00
David Young
c1b655b568 Count failures of the variable-length string tests as "soft errors"
that don't count as VFD SWMR test failures.

The variable-length string tests are nondeterministic, so we expect them to
fail, and they do fail quite often on `jelly`, for example.
2020-04-07 16:36:16 -05:00
vchoi
db9155c2f3 Fix according to PR feedback. 2020-04-07 13:17:56 -05:00
David Young
25968a795b Add a new log outlet and change an fprintf(stderr, to an
`hlog_fast(lengthen_pbentry,`.  This quiets one of the VFD SWMR tests.
2020-04-07 10:56:50 -05:00
David Young
1292630c62 Straggler from previous: declare the new shadow_index_reclaim log
outlet.
2020-04-07 10:51:23 -05:00
David Young
3aaa7a4f27 Don't try to free a NULL pointer. 2020-04-07 10:51:00 -05:00
David Young
a3262d2274 Quiet a warning about the variable being used before it is initialized.
Looks like the compiler actually was wrong, but this is a harmless
change to make.
2020-04-07 10:50:08 -05:00
David Young
7b83633d5e Simplify H5PB_vfd_swmr__update_index(), which figures in
my investigation of shadow-file freespace leaks.

Copy the tick number from the H5F_shared_t to a temporary variable
and use the temporary instead of spelling out `shared->tick_num`.

Assert that every entry on the tick list is dirty, since clean
entries will not appear on the tick list.  Mark each corresponding
shadow-index entry dirty, and set its "tick of last change" to the
current tick and "tick of last flush" to 0.  This makes the scan
for entries that do not appear on the tick list more believable.

Lower staircase in the loop that scans for shadow-index entries that
did not appear on the tick list.  Log indicies that are marked for
reclamation.
2020-04-07 10:39:33 -05:00
Jacob Smith
075e74e9b2 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~jake.smith/hdf5 into feature/vfd_splitter_mirror_a 2020-04-07 10:29:00 -05:00
Jacob Smith
d97c00013d Tidying of Mirror VFD.
* Rename server-stop utility to mirror_server_stop.
* Remove external dependency on bzero().
* Modify test/use_common to use only the public API.
* Rename internal bitswap macro to follow convention.
2020-04-07 10:20:44 -05:00
David Young
46832e59ec Declutter: remove superfluous comment and assertion. NFCI. 2020-04-07 09:45:00 -05:00
David Young
d9ee55cbd9 Remove extraneous whitespace. NFCI. 2020-04-07 09:44:35 -05:00
David Young
1137ffef6a After adding a shadow page to the deferred free list, set the entry's
page number to 0 so that we cannot free it again by accident.
2020-04-07 09:41:49 -05:00
Allen Byrne
b27a20f8c0 Merge pull request #2489 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f362e14add76bc137c8f9bb8542a697e48900b91':
  Hide Frortran directive warnings
  Remove flag from gfort-general in gfort-5, add /EHsc to Win C++
  Update printf pointer syntax and revert fortran to f2003
  Reduce window fortran standard to f90
  Minor updates and fix settings for fortran flags
  Update intel flags
  Fix missing endif
  Correct improper file move
  Move intel warnings to subfolder, update autotools files
  Corrected note
  Remove overzealous additions
  Correct whitespace in flags, force list mode
  Flag construction must be after compiler detection
  TRILAB-192 add c++ and fortran warnings build systems one file
  Update release note for CMake warnings
  Add missing header include
2020-04-07 09:34:33 -05:00
David Young
8d6c1eca16 Add a log outlet and shorten the name of an existing outlet. 2020-04-07 09:22:07 -05:00
David Young
25bafe0063 Fix the width of an index variable. 2020-04-07 09:21:27 -05:00
Allen Byrne
f362e14add Hide Frortran directive warnings 2020-04-07 07:37:49 -05:00
Allen Byrne
61b8018004 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'f6514c35ea3786206a8db73e1cad8fce8fe6a715':
  Updated test ddl files so CMake passes after h5dump failures.
  Modifications based on PR review feedback.
  Add two routines gen_ref_files() and gen_sel_files() to generate test files related to references and selections. These test files will be copied to 1.12, 1.10 and 1.8 for compatibility testing.
2020-04-07 07:08:16 -05:00
vchoi
230570b593 Fix an error in previous merge: should use NULL instead of FAIL. 2020-04-06 19:26:49 -05:00
Vailin Choi
b3e966e33d Merge pull request #29 in ~VCHOI/my_third_fork from develop to bugfix/dtype_close_on_error
* commit 'f6514c35ea3786206a8db73e1cad8fce8fe6a715': (48 commits)
  Updated test ddl files so CMake passes after h5dump failures.
  Narrowed the scope of ISO_C_BINDING with ONLY additions
  Skip testing of passthrough VOL connector in a Family File tools test
  Restore previous tools library driver name behavior with passthrough VOL connector
  Updated tools dump output when dataset offset is undefined.
  Fixed unnecessary H5R casts in the tools that were raising warnings.
  Added checks for native optional call support in some of the tools.
  Changed default dataset shared struct to initialize hid_t IDs to H5I_INVALID_HID.
  Correct extra flags
  Modifications based on PR review feedback.
  Minor renaming in the tools code.
  Misc changes for h5dump VOL changes.
  Fix for HDFFV-11065.
  Fix latent bug in h5repack options file reading Add 'enable-error-stack' option to h5format_convert
  TRILAB-192 remove comment
  Minor renaming in h5dump (addr --> token)
  TRILAB-192 add comparable clang flags
  Fix some missing symbols issues in tools library
  A few small tweaks to the tools from review
  Replace usage of some standard library functions with HD- versions
  ...
2020-04-06 18:52:20 -05:00
Dana Robinson
f6514c35ea Merge pull request #2495 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '8e948aa7b717cd7a8dcb12877a4ad61df2a46ebd':
  Updated test ddl files so CMake passes after h5dump failures.
2020-04-06 17:23:42 -05:00
Dana Robinson
8e948aa7b7 Updated test ddl files so CMake passes after h5dump failures. 2020-04-06 15:19:55 -07:00
Vailin Choi
1e52e74ca8 Merge pull request #2472 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/bounds_compat to develop
* commit '3f081c99376ad562dcb6bbf7d6c11216f682aca7':
  Modifications based on PR review feedback.
  Add two routines gen_ref_files() and gen_sel_files() to generate test files related to references and selections. These test files will be copied to 1.12, 1.10 and 1.8 for compatibility testing.
2020-04-06 16:37:47 -05:00
Allen Byrne
e31bb02d38 Remove flag from gfort-general in gfort-5, add /EHsc to Win C++ 2020-04-06 16:12:43 -05:00
Allen Byrne
279ea4f2a2 Update printf pointer syntax and revert fortran to f2003 2020-04-06 15:19:28 -05:00
Allen Byrne
09ec1166d7 Reduce window fortran standard to f90 2020-04-06 14:29:33 -05:00
Allen Byrne
fd18d013f1 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '4830a1796441abbb5a4fbd2cff9a651f2a0d066e':
  Updated tools dump output when dataset offset is undefined.
  Added checks for native optional call support in some of the tools.
  Misc changes for h5dump VOL changes.
2020-04-06 14:13:27 -05:00
Dana Robinson
4830a17964 Merge pull request #2486 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:tools_vol_update to develop
* commit '110cafb9c7b5b9f9170340432062295d630f3ee6':
  Updated tools dump output when dataset offset is undefined.
  Added checks for native optional call support in some of the tools.
  Misc changes for h5dump VOL changes.
2020-04-06 13:53:22 -05:00
Allen Byrne
55299ab2ce Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'a09f810e8d372d1e85661c52a7ef735a164904ad':
  Narrowed the scope of ISO_C_BINDING with ONLY additions
2020-04-06 13:36:28 -05:00
David Young
a788202831 If the shadow-index size is 0 in the current step, don't calloc(3)
anything, since calloc(0, ...) is undefined.
2020-04-06 12:32:54 -05:00
David Young
9678dcffbf Make some changes to conserve filespace and ensure that all filespace is
eventually reclaimed.

Defer reclamation of raw data filespace, only.

XXX Deferring only raw-data reclamation isn't *quite* sufficient because
XXX a writer could conceivably reuse metadata space as raw-data space
XXX before max_lag ticks have elapsed.  Readers could see metadata
XXX corrupted by raw data.

Once a file starts to close, stop deferring reclamation.

In H5MF_free_aggrs(), perform all deferred reclamations if the file is
closing.
2020-04-06 12:32:20 -05:00
Allen Byrne
b4dcee96ce Minor updates and fix settings for fortran flags 2020-04-06 12:17:43 -05:00
Dana Robinson
110cafb9c7 Merge branch 'develop' into tools_vol_update 2020-04-06 09:38:00 -07:00
Scot Breitenfeld
a09f810e8d Merge pull request #2494 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:FortranWarn to develop
* commit '83d29f04c28e150fde5776fba64fbe4fa04f0f25':
  Narrowed the scope of ISO_C_BINDING with ONLY additions
2020-04-06 11:18:39 -05:00
Allen Byrne
a3c57c730c Update intel flags 2020-04-06 10:34:16 -05:00
Scot Breitenfeld
83d29f04c2 Narrowed the scope of ISO_C_BINDING with ONLY additions 2020-04-06 10:04:27 -05:00
Allen Byrne
3247291b1e Fix missing endif 2020-04-06 09:40:22 -05:00
Allen Byrne
f8d8a96eb7 Correct improper file move 2020-04-06 09:38:43 -05:00
Allen Byrne
0d701b9ff8 Move intel warnings to subfolder, update autotools files 2020-04-06 09:35:43 -05:00
Allen Byrne
d0a936ab62 Corrected note 2020-04-06 06:54:27 -05:00
Allen Byrne
2e85f81126 Remove overzealous additions 2020-04-05 16:38:25 -05:00
Allen Byrne
29ad4fcec9 Correct whitespace in flags, force list mode 2020-04-05 15:56:52 -05:00
Allen Byrne
2c2627e7f6 Flag construction must be after compiler detection 2020-04-05 13:38:04 -05:00
Allen Byrne
70495751c0 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5d1590079ea0061a7b86d7210cb796b6d58a17c7':
  Skip testing of passthrough VOL connector in a Family File tools test
  Restore previous tools library driver name behavior with passthrough VOL connector
2020-04-05 11:06:35 -05:00
Allen Byrne
57f5d00a43 TRILAB-192 add c++ and fortran warnings build systems one file 2020-04-05 10:50:08 -05:00
Jordan Henderson
5d1590079e Merge pull request #2490 in HDFFV/hdf5 from tools_vol_update to develop
* commit 'a5a2fb44296327787476407a249d9470b3c80427':
  Skip testing of passthrough VOL connector in a Family File tools test
  Restore previous tools library driver name behavior with passthrough VOL connector
2020-04-03 15:06:08 -05:00
Jordan Henderson
a5a2fb4429 Skip testing of passthrough VOL connector in a Family File tools test 2020-04-03 14:29:10 -05:00
Allen Byrne
7a41367a13 Update release note for CMake warnings 2020-04-03 12:57:56 -05:00
Jordan Henderson
08e77ac6fa Restore previous tools library driver name behavior with passthrough VOL connector 2020-04-03 12:45:22 -05:00
Allen Byrne
b7227657f2 Add missing header include 2020-04-03 08:50:51 -05:00
Allen Byrne
96ea55b95d Merge pull request #2474 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '36b8060323f24341c8f4610108e8ccb955dbe192':
  Correct extra flags
  TRILAB-192 remove comment
  TRILAB-192 add comparable clang flags
2020-04-03 08:49:54 -05:00
David Young
fd079a2357 Improve diagnostic logging. 2020-04-02 15:58:12 -05:00
David Young
1041983d87 Standardize and shorten diagnostic messages to help my search for the
leak of shadow-file space.
2020-04-02 15:56:22 -05:00
David Young
a1175c1b98 Remove superfluous comment. Remove unnecessary variable
initializations: the compiler will tell us if the variables are used
before they're set.  NFCI.
2020-04-02 15:54:29 -05:00
David Young
40c638dcab Remove superfluous whitespace, insert whitespace around / operator,
repair for-loop indentation.  NFCI.
2020-04-02 15:53:44 -05:00
David Young
9c957495db Update comments, shorten comments, remove superfluous comments. 2020-04-02 15:53:02 -05:00
Dana Robinson
85b3b9e670 Updated tools dump output when dataset offset is undefined. 2020-04-02 10:25:46 -07:00
Allen Byrne
36b8060323 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'ac099b0b6391fd149af4f4fcf8f79189dcc615bb':
  Fixed unnecessary H5R casts in the tools that were raising warnings.
2020-04-02 11:02:37 -05:00
Dana Robinson
ac099b0b63 Merge pull request #2485 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '1c854737665f3f853a324c34292390ab57431fec':
  Fixed unnecessary H5R casts in the tools that were raising warnings.
2020-04-02 11:00:48 -05:00
Allen Byrne
7e06b76c64 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'bae05235a2d87acb0d6b3a2e1c32f3b6f48cf203':
  Changed default dataset shared struct to initialize hid_t IDs to H5I_INVALID_HID.
  A fix in the cleaning up code for datatype when datatype initialization via H5D__init_type() fails. This is triggered by the tests for revised references when the libver bounds setting does not allow version 4 datatype message to be created.  The test failure is abort core dumped. This is due to the datatype initialization fails before the datatype ID is registered. The datatype cleanup code should provide for the above situation. The code to fix the problem is the same as what is done in H5D__open_oid().
  Remove tongue-in-cheek credit for Rusty Shackleford and Dale Alvin Gribble.
  Follow HDF5 conventions.
2020-04-02 08:25:44 -05:00
Dana Robinson
1c85473766 Fixed unnecessary H5R casts in the tools that were raising warnings. 2020-04-02 03:57:05 -07:00
Dana Robinson
456308ff17 Added checks for native optional call support in some of the tools. 2020-04-02 02:12:19 -07:00
Dana Robinson
3cd1b46b9c Merge branch 'develop' into tools_vol_update 2020-04-01 23:27:08 -07:00
Vailin Choi
bae05235a2 Merge pull request #2461 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/dtype_close_on_error to develop
* commit 'afdcac28b85d690eebc80ab568fa5266081baaaa':
  A fix in the cleaning up code for datatype when datatype initialization via H5D__init_type() fails. This is triggered by the tests for revised references when the libver bounds setting does not allow version 4 datatype message to be created.  The test failure is abort core dumped. This is due to the datatype initialization fails before the datatype ID is registered. The datatype cleanup code should provide for the above situation. The code to fix the problem is the same as what is done in H5D__open_oid().
2020-04-01 22:14:42 -05:00
Dana Robinson
281e8444d8 Merge pull request #2484 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'a267c4e5d37f00bf6cff942b57b5a13affaa8bd5':
  Changed default dataset shared struct to initialize hid_t IDs to H5I_INVALID_HID.
2020-04-01 21:11:51 -05:00
Dana Robinson
a267c4e5d3 Changed default dataset shared struct to initialize hid_t IDs to
H5I_INVALID_HID.
2020-04-01 18:46:07 -07:00
David Young
1547feed60 Merge pull request #2363 in HDFFV/hdf5 from ~DYOUNG/werror:thread_id to develop
* commit '63c95faf49559ea66e3066427961095b69fdb213':
  Remove tongue-in-cheek credit for Rusty Shackleford and Dale Alvin Gribble.
  Follow HDF5 conventions.
2020-04-01 15:27:51 -05:00
Allen Byrne
196193c18d Correct extra flags 2020-04-01 11:46:26 -05:00
Allen Byrne
abd38c0b85 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '2c494482eb986ce051463e96d12a661c494a9335':
  Minor renaming in the tools code.
2020-03-31 22:23:50 -05:00
vchoi
3f081c9937 Modifications based on PR review feedback. 2020-03-31 19:53:14 -05:00
Dana Robinson
2c494482eb Merge pull request #2483 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'b1533616f28996983ec505fff8f62edf3dd820b3':
  Minor renaming in the tools code.
2020-03-31 19:46:19 -05:00
Dana Robinson
b1533616f2 Minor renaming in the tools code. 2020-03-31 16:58:24 -07:00
David Young
9b5384b436 Add a reader personality to vfd_swmr_zoo_writer. Remove the disused
`-t` option.  Disable the error stack across create_/validate_zoo()
calls.
2020-03-31 13:14:59 -05:00
David Young
69fcb52eca Prepare for reuse in vfd_swmr_zoo_{reader,writer}: in
validate_zoo()/check_zoo(), instead of checking/modifying the global
variable `pass`, just return `false` on failure, `true` on success.
Update test `cache_image` to match.
2020-03-31 13:13:39 -05:00
David Young
817756a0e0 Rename process_deferred_frees as H5MF_process_deferred_frees and make it
available to other files.  Make the tick number a parameter instead of
using the f->shared->tick_num, so that we can pass a maximal tick number
and that way reclaim all of the deferred frees.
2020-03-31 12:54:10 -05:00
David Young
da70686a5a Fix whitespace at end (beginning?) of line. NFCI. 2020-03-31 09:52:11 -05:00
Dana Robinson
816a12f04f Merge branch 'develop' into tools_vol_update 2020-03-31 03:43:03 -07:00
David Young
928c820d04 Straggler: add htri_to_string() for converting htri_t to a string
constant.
2020-03-30 14:34:27 -05:00
David Young
d0b8accbc1 Relax H5F_update_vfd_swmr_metadata_file() argument checking so that we can call
it with num_entries == 0 and a non-NULL `index`.  Delete some code that isn't
necessary if `num_entries == 0 && index != NULL` is allowed.  NFCI.
2020-03-30 13:44:44 -05:00
David Young
c7af3df890 Simplify: change if (cond) { assert(FALSE); } to assert(!cond);. 2020-03-30 13:43:47 -05:00
David Young
ba7dde8ba9 Lower staircase. NFCI. 2020-03-30 13:42:56 -05:00
David Young
53aee36c3e Delete an #ifdef H5MV_VFD_SWMR_DEBUG debug fprintf that probably never worked
quite as intended.
2020-03-30 13:40:08 -05:00
David Young
9db701e95b Add a log outlet. Replace #ifdef H5MV_VFD_SWMR_DEBUG debug fprintf's with
hlog_fast() calls.
2020-03-30 13:39:14 -05:00
David Young
db5942d3f1 Add log outlets. Convert existing #ifdef H5MF_ALLOC_DEBUG{,_MORE} debug
fprintf's to hlog_fast() calls.  Add some new hlog_fast() calls.
2020-03-30 13:37:05 -05:00
David Young
5f58844bd5 Delete ridiculous comments. Remove superfluous curly braces. NFCI. 2020-03-30 13:22:17 -05:00
David Young
989b6c2063 Delete ridiculous comment and excess for-loop whitespace. NFCI. 2020-03-30 13:22:17 -05:00
David Young
57ae4206ca Delete ridiculous comments and repair some whitespace. NFCI. 2020-03-30 13:22:17 -05:00
David Young
7d50e9c89e Be brief: turn 7 lines of if-else to one line of ?:. Be sensible: don't
assert a pointer we just dereferenced is non-NULL.
2020-03-30 13:22:17 -05:00
David Young
78fac0241a Let us use space as well as comma to separate outlet=yes|no clauses in
the HLOG environment variable.
2020-03-30 13:22:17 -05:00
Allen Byrne
18db5749dc Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'a46f31c2eb436e946639bb32518ce279507fa368':
  Fix for HDFFV-11065.
2020-03-30 11:39:47 -05:00
Gerd Heber
a46f31c2eb Merge pull request #2479 in HDFFV/hdf5 from ~GHEBER/hdf5:bugfix/HDFFV-11065 to develop
* commit '2dfc047bc4aca7c13bccf44da97bff026cbbf5a6':
  Fix for HDFFV-11065.
2020-03-30 11:26:14 -05:00
Allen Byrne
076a981993 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'c20e268979ec623fb159501e382c6cc55a5d665e':
  Fix latent bug in h5repack options file reading Add 'enable-error-stack' option to h5format_convert
2020-03-30 07:23:00 -05:00
Dana Robinson
c36b707578 Merge branch 'tools_vol_update' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into tools_vol_update 2020-03-30 01:52:21 -07:00
Dana Robinson
36e8e2be4b Misc changes for h5dump VOL changes. 2020-03-30 01:51:36 -07:00
Jordan Henderson
c20e268979 Merge pull request #2478 in HDFFV/hdf5 from tools_vol_update to develop
* commit '9676029742f18aaae37dd48947bc1faf23406169':
  Fix latent bug in h5repack options file reading Add 'enable-error-stack' option to h5format_convert
2020-03-29 18:13:58 -05:00
Gerd Heber
2dfc047bc4 Fix for HDFFV-11065. 2020-03-29 16:04:58 -05:00
Jordan Henderson
9676029742 Fix latent bug in h5repack options file reading
Add 'enable-error-stack' option to h5format_convert
2020-03-29 12:37:14 -05:00
Allen Byrne
d2a75d211d TRILAB-192 remove comment 2020-03-29 07:51:35 -05:00
Allen Byrne
93a9b70a8f Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'e9e3e2f1d67ccf71cc5af711065d1f85761ab5b7':
  Refactor to reduce verbosity.
2020-03-29 07:47:01 -05:00
Quincey Koziol
e9e3e2f1d6 Merge pull request #2471 in HDFFV/hdf5 from alloc_stat_tests to develop
* commit '0eb562bc201a38f9b4a82e954bfc63daa6838d45':
  Refactor to reduce verbosity.
2020-03-28 15:48:55 -05:00
Allen Byrne
c6c9af20bf Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'f5cb547825e462c3299b6f41d03a71aa6faef950':
  Minor renaming in h5dump (addr --> token)
2020-03-28 09:35:25 -05:00
Dana Robinson
2a06f94377 Merge pull request #2476 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:tools_vol_update to tools_vol_update
* commit 'f5cb547825e462c3299b6f41d03a71aa6faef950': (29 commits)
  Minor renaming in h5dump (addr --> token)
  Correct macro check
  Add extensive warnings to tools executables
  Reorg comments
  Correct warning flag form
  Because of tools macro, this needs to be a warning
  unused set-variable in macro
  Fix Werror issues in JNI and tools
  TRILAB-192 fix JNI shadow warning
  TRILAB-192 restrict extensive warnings to libraries
  TRILAB-24 use CHECK_STRUCT_HAS_MEMBER
  TRILAB-192 add release note
  TRILAB-192 Identify warnings that fail as errors
  Correct failure when allocation tracking are disabled.
  Update the MANIFEST for the autoconf/cmake shared warnings files.
  Correct syntax
  Update CMake compiler flags to use same set of warnings
  Revise API for H5get_alloc_stats() to take a struct instead of separate values.
  Allow use of INTEL icl/icl++ for clang
  Move the GNU warnings configuration under config/gnu-warnings/ and trim the filename prefixes.  Update config/gnu-flags to suit.
  ...
2020-03-27 20:19:22 -05:00
Dana Robinson
f5cb547825 Merge pull request #2475 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '2dd6075c7a13ba7cbaa922448df4bd5e72c1b5ab':
  Minor renaming in h5dump (addr --> token)
2020-03-27 19:23:58 -05:00
Dana Robinson
2dd6075c7a Minor renaming in h5dump (addr --> token) 2020-03-27 17:17:00 -07:00
Allen Byrne
0da53027d9 TRILAB-192 add comparable clang flags 2020-03-27 17:10:53 -05:00
Allen Byrne
c66ce89383 Merge pull request #2473 in HDFFV/hdf5 from tools_vol_update to develop
* commit 'feb0f521b16b79485c22c86a630a1d91cb680a61':
  Fix some missing symbols issues in tools library
2020-03-27 17:06:23 -05:00
Jordan Henderson
feb0f521b1 Fix some missing symbols issues in tools library 2020-03-27 16:54:05 -05:00
Allen Byrne
bf5ef12d50 Merge pull request #2470 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '07a66822fb1350955150295fcd6d9f53d3b7ee15':
  TRILAB-24 use CHECK_STRUCT_HAS_MEMBER
2020-03-27 15:01:44 -05:00
Allen Byrne
07a66822fb Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'd5bbf3d4086d7fa0300325a08a608f1cc7b4ce33':
  A few small tweaks to the tools from review
  Replace usage of some standard library functions with HD- versions
  Update Tools library to be better compatible with VOL connectors
2020-03-27 14:10:05 -05:00
Jordan Henderson
d5bbf3d408 Merge pull request #2469 in HDFFV/hdf5 from tools_vol_update to develop
* commit 'ea952b25ba0fd5c4b5f60a94e75a1b5b78e66172':
  A few small tweaks to the tools from review
  Replace usage of some standard library functions with HD- versions
  Update Tools library to be better compatible with VOL connectors
2020-03-27 13:14:22 -05:00
Jordan Henderson
ea952b25ba A few small tweaks to the tools from review 2020-03-27 10:48:11 -05:00
Jordan Henderson
6d514db55a Replace usage of some standard library functions with HD- versions 2020-03-26 15:26:39 -05:00
vchoi
6740ee1dcd Add two routines gen_ref_files() and gen_sel_files() to generate test files related to
references and selections.
These test files will be copied to 1.12, 1.10 and 1.8 for compatibility testing.
2020-03-26 12:06:04 -05:00
Quincey Koziol
0eb562bc20 Refactor to reduce verbosity. 2020-03-26 11:51:26 -05:00
mainzer
0135ec8d61 Reverted optimization in the metadata cache that avoided re-reading
the first portion of a metadata cache entry in speculative reads.
This is necessary for VFD SWMR as it presumes that metadata entries
are read and written atomically.  See comments in H5C.c / H5C_load_entry()
for further details.
2020-03-26 10:26:49 -05:00
Allen Byrne
1ded274205 Merge pull request #12 in ~BYRN/hdf5_adb from bugfix/TRILAB-24-check_struct_has_member to develop
* commit 'abbeb0cab2380adf8ffb1f81ef2e88960241a6d3':
  TRILAB-24 use CHECK_STRUCT_HAS_MEMBER
2020-03-26 09:33:37 -05:00
Vailin Choi
f3fa23b742 Merge pull request #28 in ~VCHOI/my_third_fork from develop to bugfix/bounds_compat
* commit '181c6110251d7a9e9cc23e14dfd8f52cdb14422b':
  Correct macro check
2020-03-25 20:47:30 -05:00
Quincey Koziol
181c611025 Merge pull request #2467 in HDFFV/hdf5 from alloc_stats_2 to develop
* commit 'a3e08862c614463d16eb1017303e5fec44518b09':
  Correct macro check
2020-03-25 16:27:24 -05:00
Quincey Koziol
a3e08862c6 Correct macro check 2020-03-25 15:52:11 -05:00
Allen Byrne
1b582c3ce4 Merge pull request #2464 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '27b23c8d52e89e9ce15dc9cb9685be85793a5d82':
  Add extensive warnings to tools executables
  Reorg comments
  Correct warning flag form
  Because of tools macro, this needs to be a warning
  unused set-variable in macro
  Fix Werror issues in JNI and tools
  TRILAB-192 fix JNI shadow warning
  TRILAB-192 restrict extensive warnings to libraries
  TRILAB-192 add release note
  TRILAB-192 Identify warnings that fail as errors
  Correct syntax
  Update CMake compiler flags to use same set of warnings
  Allow use of INTEL icl/icl++ for clang
2020-03-25 11:01:03 -05:00
Allen Byrne
27b23c8d52 Add extensive warnings to tools executables 2020-03-25 10:19:09 -05:00
Allen Byrne
c2cc6fa526 Reorg comments 2020-03-25 08:58:53 -05:00
Allen Byrne
cb02c1414f Correct warning flag form 2020-03-25 08:21:40 -05:00
Allen Byrne
75e01a0e41 Because of tools macro, this needs to be a warning 2020-03-25 08:12:21 -05:00
Allen Byrne
0da6786185 unused set-variable in macro 2020-03-25 07:04:19 -05:00
Allen Byrne
2b8407a3ca Fix Werror issues in JNI and tools 2020-03-24 17:42:58 -05:00
Allen Byrne
0d6adfc610 TRILAB-192 fix JNI shadow warning 2020-03-24 17:03:09 -05:00
Allen Byrne
1505fa1498 TRILAB-192 restrict extensive warnings to libraries 2020-03-24 16:45:12 -05:00
David Young
14a8543c7a Remove a duplicate #define H5FD_TESTING line. 2020-03-24 15:39:19 -05:00
David Young
8ccff19e02 Add option flag -v for verbose messages. Alphabetize the options
switch-statement.
2020-03-24 15:35:47 -05:00
David Young
ad8460cc16 When creating a shadow index for testing, increase the page number from
one entry to the next by *at least* 1 so that the index is well-formed.
This fixes a crash that occurred with H5_SHADOW_INDEX_SEED=1585006453.
2020-03-24 15:30:09 -05:00
David Young
e7b2095809 The forced-fail index comes only from the environment, never from
time(3).
2020-03-24 15:26:40 -05:00
Allen Byrne
abbeb0cab2 TRILAB-24 use CHECK_STRUCT_HAS_MEMBER 2020-03-24 13:21:27 -05:00
Allen Byrne
77bac54352 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '765cd82d2e650e089e11539c10d6be4fbdbad984':
  Correct failure when allocation tracking are disabled.
2020-03-24 13:10:06 -05:00
Quincey Koziol
765cd82d2e Merge pull request #2463 in HDFFV/hdf5 from alloc_stats_fix to develop
* commit '60e446113ff9056806b1c1f80dab058418cdbef7':
  Correct failure when allocation tracking are disabled.
2020-03-24 13:04:50 -05:00
Allen Byrne
807480a4bb TRILAB-192 add release note 2020-03-24 12:46:28 -05:00
Allen Byrne
e235df5288 TRILAB-192 Identify warnings that fail as errors 2020-03-24 12:34:17 -05:00
Allen Byrne
15328ae0ae Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'ca64f7e7e9ee028520f6496120b327dfbd0395f2':
  Update the MANIFEST for the autoconf/cmake shared warnings files.
2020-03-24 12:26:26 -05:00
Allen Byrne
ca64f7e7e9 Merge pull request #2462 in HDFFV/hdf5 from ~DYOUNG/werror:gnu-warnings-manifest to develop
* commit '43e5a896975379eb7e363a0bb892a976eb2e15b6':
  Update the MANIFEST for the autoconf/cmake shared warnings files.
2020-03-24 12:25:43 -05:00
Quincey Koziol
60e446113f Correct failure when allocation tracking are disabled. 2020-03-24 12:17:25 -05:00
David Young
43e5a89697 Update the MANIFEST for the autoconf/cmake shared warnings files. 2020-03-24 10:24:51 -05:00
Larry Knox
8890fa3eb5 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'd3ef866a2963ce93d0b95184534a70849b6fa11d':
  Revise API for H5get_alloc_stats() to take a struct instead of separate values.
  Move the GNU warnings configuration under config/gnu-warnings/ and trim the filename prefixes.  Update config/gnu-flags to suit.
  Fixed the RELEASE.txt note for HDFFV-11057
  Fix shutdown errors when using the HDF5_VOL_CONNECTOR environment variable to set a dynamically loaded plugin as the default VOL connector. Fixes HDFFV-11057
  Fix threadsafe for new test
  Fix issues when deserializing point/all/none selection with version beyond the library's supported version: (1) Verify the decoded version before proceeding further with deserialization (2) Close the dataspace if errors occurred after opening the dataspace
  Very minor comment change in H5VLconnector.h.
  Add routines to query the library's free list sizes and allocation stats.
  By default, demote warnings promoted to errors back to warnings.
  Incorporate the H5_ECFLAGS into the library CFLAGS.  Now a bunch of errors will occur.  Next commit will demote the warnings promoted to errors back to warnings again.
  Break out warnings into more files that autoconf and CMake can share.  This change temporarily disables the warnings that were promoted to errors, but I will add those warnings back as warnings, not errors, in the next commit.
  Avoid a crash, don't check if we're flushing when the file is closing: there's no need to check if the metadata cache is flushing if we already know the file is closing, because the condition we rely on is "closing OR flushing."  Further, the cache may have already gone away, so sometimes calling into the cache to see if it's flushing will crash the program.
2020-03-24 08:22:25 -05:00
Allen Byrne
b6ef262ee5 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'd3ef866a2963ce93d0b95184534a70849b6fa11d':
  Revise API for H5get_alloc_stats() to take a struct instead of separate values.
  Add routines to query the library's free list sizes and allocation stats.
2020-03-24 07:00:36 -05:00
Quincey Koziol
d3ef866a29 Merge pull request #2445 in HDFFV/hdf5 from alloc_stats to develop
* commit 'b51585a9110c4322c52f9dcdc60cd26c3ea44546':
  Revise API for H5get_alloc_stats() to take a struct instead of separate values.
  Add routines to query the library's free list sizes and allocation stats.
2020-03-23 18:01:43 -05:00
Allen Byrne
19c47b244b Correct syntax 2020-03-23 16:57:15 -05:00
Allen Byrne
d9a5a49e65 Update CMake compiler flags to use same set of warnings 2020-03-23 15:10:33 -05:00
David Young
85f5bfb3b7 Use the name vfd_swmr_zoo.h5 for the zoo file, not vfd_swmr_vlstr.h5. 2020-03-23 14:57:58 -05:00
David Young
cb5e1ead29 Let tests provide a "hook" that runs after each step in create_zoo().
Provide a hook in vfd_swmr_zoo_writer that calls H5Fvfd_swmr_end_tick().
2020-03-23 14:55:07 -05:00
Allen Byrne
477c96f06f Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'e916acd018d5a307e7690a7978a1b73e83508f2b':
  Move the GNU warnings configuration under config/gnu-warnings/ and trim the filename prefixes.  Update config/gnu-flags to suit.
  By default, demote warnings promoted to errors back to warnings.
  Incorporate the H5_ECFLAGS into the library CFLAGS.  Now a bunch of errors will occur.  Next commit will demote the warnings promoted to errors back to warnings again.
  Break out warnings into more files that autoconf and CMake can share.  This change temporarily disables the warnings that were promoted to errors, but I will add those warnings back as warnings, not errors, in the next commit.
2020-03-23 12:25:48 -05:00
David Young
e916acd018 Merge pull request #2402 in HDFFV/hdf5 from ~DYOUNG/werror:break-out-warnings to develop
* commit '2f09d8f3c8a4a44932c1b8ffb0f6ea2219059a5c':
  Move the GNU warnings configuration under config/gnu-warnings/ and trim the filename prefixes.  Update config/gnu-flags to suit.
  By default, demote warnings promoted to errors back to warnings.
  Incorporate the H5_ECFLAGS into the library CFLAGS.  Now a bunch of errors will occur.  Next commit will demote the warnings promoted to errors back to warnings again.
  Break out warnings into more files that autoconf and CMake can share.  This change temporarily disables the warnings that were promoted to errors, but I will add those warnings back as warnings, not errors, in the next commit.
2020-03-23 11:55:07 -05:00
vchoi
afdcac28b8 A fix in the cleaning up code for datatype when datatype initialization via H5D__init_type() fails.
This is triggered by the tests for revised references when the libver bounds setting does not allow version
4 datatype message to be created.  The test failure is abort core dumped.
This is due to the datatype initialization fails before the datatype ID is registered.
The datatype cleanup code should provide for the above situation.
The code to fix the problem is the same as what is done in H5D__open_oid().
2020-03-23 01:16:32 -05:00
Quincey Koziol
b51585a911 Revise API for H5get_alloc_stats() to take a struct instead of separate values. 2020-03-20 16:39:55 -05:00
Quincey Koziol
66350c3356 Merge remote-tracking branch 'origin/develop' into alloc_stats 2020-03-20 15:50:24 -05:00
David Young
51b8fa3ffe Take a stab at a "zoo" writer for VFD SWMR: write all of the same
objects as the cache_image test does.  The zoo writer is a work in
progress.

This version is useful as a reproducer for the hang in the global heap
that I stumbled over, yesterday.  I run this to reproduce,

env HLOG="pbio=on" ./vfd_swmr_zoo_writer -W -a
2020-03-20 15:20:51 -05:00
David Young
52f8d8a1b1 Deduplicate create_zoo() and validate_zoo() and refactor for reuse by
VFD SWMR tests.

This change reduces the length of genall5.c by 171 lines.
2020-03-20 15:18:19 -05:00
David Young
a4a2dd2cc0 Add a log outlet for pagebuffer I/O and subordinate outlets for
pagebuffer reads and writes: pbio, pbrd, pbwr.  In H5PB_read() and
H5PB_write(), log only global heap accesses, for now.
2020-03-20 14:56:23 -05:00
David Young
b6b43e6dc4 Protect against an assertion during H5Fflush(): do not doubly-increment
the tick number in H5F_vfd_swmr_close_or_flush() when just flushing,
because that made the assertion in H5PB_vfd_swmr__set_tick(), that the
tick number had not increased by more than one, fail.
2020-03-20 14:26:14 -05:00
Allen Byrne
13da6d137f Allow use of INTEL icl/icl++ for clang 2020-03-19 10:57:21 -05:00
Allen Byrne
26fecb8c5a Merge pull request #2457 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6be711bbd2b86de5bcd8f092d8f27d6b2251c111':
  Fix threadsafe for new test
2020-03-19 09:23:02 -05:00
David Young
2f09d8f3c8 Move the GNU warnings configuration under config/gnu-warnings/ and trim
the filename prefixes.  Update config/gnu-flags to suit.

I also made changes to config/cmake/HDFCompilerFlags.cmake, but I'm not
sure they're correct.
2020-03-18 21:12:53 -05:00
Dana Robinson
eecddd9f3e Merge pull request #2456 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'ce7936d2b256bdd5e61a5ef018f35e9562667cac':
  Fixed the RELEASE.txt note for HDFFV-11057
  Fix shutdown errors when using the HDF5_VOL_CONNECTOR environment variable to set a dynamically loaded plugin as the default VOL connector. Fixes HDFFV-11057
  Very minor comment change in H5VLconnector.h.
2020-03-18 17:07:37 -05:00
Quincey Koziol
ae5f556415 Merge remote-tracking branch 'origin/develop' into alloc_stats 2020-03-18 16:18:09 -05:00
Dana Robinson
ce7936d2b2 Fixed the RELEASE.txt note for HDFFV-11057 2020-03-18 14:08:47 -07:00
Dana Robinson
693008ecaf Fix shutdown errors when using the HDF5_VOL_CONNECTOR environment
variable to set a dynamically loaded plugin as the default VOL
connector. Fixes HDFFV-11057
2020-03-18 13:58:02 -07:00
Allen Byrne
6be711bbd2 Fix threadsafe for new test 2020-03-18 15:31:27 -05:00
Dana Robinson
f0a687f133 Merge branch 'develop' into develop_minor 2020-03-18 13:06:15 -07:00
David Young
cca9617742 Use more iterations on the variable-length string reader & writer to
lower the possibility of a false test failure.
2020-03-17 17:14:08 -05:00
David Young
f7b44e40c5 In H5PB__write_meta(), extend a single-page entry when overwriting it
with multiple pages.  Update statistics to maintain consistency.

Refactor a bit: in H5PB__write_meta(), move code that's in both the if-
and else- branch to either before the if-else or after and de-duplicate.

In H5PB_vfd_swmr__update_index(), always update the length of a
shadow-index entry to the current size of its corresponding page-table
entry.

In H5PB_vfd_swmr__update_index(), disregard shadow-index entries that
await garbage collection.
2020-03-17 17:13:50 -05:00
Jordan Henderson
fa087c3919 Update Tools library to be better compatible with VOL connectors
Modify h5repack to integrate with VOL connectors

Update tools library to accomodate VOL connectors

Update logic in h5tools_fopen for VOL connectors

Add command-line options to h5repack for specifying in/out VOL
connectors

Implement h5tools_set_vol_fapl

Fix library shutdown issue

Integrate ROS3 and HDFS VFDs into new h5tools_get_fapl() scheme

Avoid H5Ocopy in h5repack when using different VOL connectors

Update h5tools_test_utils.c for ROS3 and HDFS integration
2020-03-17 14:25:36 -05:00
David Young
5d94976423 Join some lines. NFCI. 2020-03-17 14:16:15 -05:00
David Young
705f52d222 Test H5Dread() for the right "success" conditions. I'm not sure how
this even appeared to work, before.
2020-03-16 17:20:43 -05:00
Jacob Smith
f771958d75 Add function header comment for mirror_writer:run_writer(). 2020-03-16 15:39:26 -05:00
Vailin Choi
9c93c1bb00 Merge pull request #2451 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/develop_seg_fault_sel_compat to develop
* commit '81b1ed4e1724b8a6a731ab2b8fb03234a8b49d15':
  Fix issues when deserializing point/all/none selection with version beyond the library's supported version: (1) Verify the decoded version before proceeding further with deserialization (2) Close the dataspace if errors occurred after opening the dataspace
2020-03-16 14:06:57 -05:00
Jacob Smith
b65405439d Add Splitter VFD to library.
* "Simultaneous and equivalent" Read-Write and Write-Only channels for
  file I/O.
* Only supports drivers with the H5FD_FEAT_DEFAULT_VFD_COMPATIBLE flag for
  now, preventing issues with multi-file drivers.

Add Mirror VFD to library.

* Write-only operations over a network.
* Uses TCP/IP sockets.
* Server and auxiliary server-shutdown programs provided in a new directory,
  `utils/mirror_vfd`.
* Automated testing via loopback ("remote" of localhost).
2020-03-13 17:13:17 -05:00
David Young
3d51febb37 Fix spelling, alread -> already. NFCI. 2020-03-13 14:17:39 -05:00
David Young
ae351c2376 Add tests for the two expected failure modes for variable-length (VL) strings
in VFD SWMR mode.
2020-03-13 14:16:40 -05:00
Vailin Choi
81b1ed4e17 Fix issues when deserializing point/all/none selection with version beyond the library's supported version:
(1) Verify the decoded version before proceeding further with deserialization
(2) Close the dataspace if errors occurred after opening the dataspace
2020-03-13 11:22:22 -05:00
Dana Robinson
3d29cbb27f Very minor comment change in H5VLconnector.h. 2020-03-12 13:21:11 -07:00
Quincey Koziol
545d0f4db3 Merge remote-tracking branch 'origin/develop' into alloc_stats 2020-03-12 14:36:14 -05:00
David Young
7613f7e1aa Merge pull request #2378 in HDFFV/hdf5 from ~DYOUNG/werror:dont-crash-on-close to develop
* commit '093c2c7e69bc4a40e9d49eece1d6fdcf54e8ecb0':
  Avoid a crash, don't check if we're flushing when the file is closing: there's no need to check if the metadata cache is flushing if we already know the file is closing, because the condition we rely on is "closing OR flushing."  Further, the cache may have already gone away, so sometimes calling into the cache to see if it's flushing will crash the program.
2020-03-12 14:00:07 -05:00
David Young
9e81f0103c Add disable_estack() and restore_estack() for disabling the current error-stack
handling and restoring the previous error-stack handling.
2020-03-12 12:27:57 -05:00
Larry Knox
d9f93659a2 Add \d to list of characters allowed after '-' in versions. 2020-03-12 09:51:53 -05:00
Vailin Choi
a24b0c4a84 Merge pull request #26 in ~VCHOI/my_third_fork from develop to bugfix/develop_seg_fault_sel_compat
* commit '9abbdeaa66c70a00b6a7bedee9c76d2493a8e947': (31 commits)
  Remove system command from valgrind reports
  Whitespace
  Fix incorrect FUNC_LEAVE macro (should match FUNC_ENTER_*_TAG).
  Add semicolons to more PASSED() invocations.
  So that I can use PASSED(); anywhere a statement can go, #define PASSED() with a do-while wrapper.
  revert type cast
  Switch the 'get offset' operation from a dataset 'get' callback to a [native] dataset 'optional' operation.
  Modfy expression to match mpicc build with Intel as intel compiler, not gcc.
  Complete the comment on thread_main(), explaining why the barrier is used.
  Fixed issue building HDF5 with NAG Fortran 7.0.
  The first implementation seemed to allow for the possibility that a thread could block at the barrier, wake and exit the barrier, re-acquire the barrier lock and increase `nentered` before the other blocked threads woke and checked `nentered % count == 0`.  Then the other blocked threads would check `nentered % count == 0` and, finding it false, go back to sleep in the barrier.  This new implementation waits for a looser condition to obtain so that threads don't go back to sleep in the barrier.
  Add java version and reference libsettings
  Test the right condition for the EBUSY return in pthread_barrier_destroy().
  s/exit_failure/EXIT_FAILURE/g
  Implement pthread_barrier(3) for Darwin using a counter, condition variable, and mutex.  Untested.
  Update examples and fix old version references.
  Move MODEL check to before usage in CTestScript.cmake.
  Copy generated files instead creating twice
  Fix standalone link
  Fix Fortran macro use and jni comment
  ...
2020-03-11 16:23:56 -05:00
David Young
9592b80913 Mention the problems VFD SWMR has with variable-length data. 2020-03-11 14:24:59 -05:00
David Young
8cc8d63d5e Update Guide. Switch to a short and informative function name. 2020-03-11 12:50:18 -05:00
Quincey Koziol
04b8cc82a8 Add routines to query the library's free list sizes and allocation stats. 2020-03-10 18:37:55 -05:00
David Young
4e4c1c3850 Add my work in progress on variable-length string test for VFD SWMR. 2020-03-10 17:48:32 -05:00
David Young
ecea500047 Start a user's guide. Mention problems with variable-length data. 2020-03-10 17:21:40 -05:00
David Young
3f2e3659c2 Stop changing the type of global-heap storage to raw data before accessing the
page buffer.  Now variable-length (VL) data such as VL strings work with VFD
SWMR.  This change also makes the library more consistent in its treatment of
global-heap storage, since it's always been allocated as metadata, not raw
data.
2020-03-09 14:06:10 -05:00
David Young
1818420acd In await_signal(), print a less alarming message when exiting in normal
circumstances.

Write a comment that tells why await_signal() periodically calls the HDF5 API.
2020-03-09 13:47:26 -05:00
David Young
d0e6a1bbc6 Don't assert that an H5FD_mem_t read/written through the page buffer is not
H5FD_MEM_GHEAP, that's an out-of-date assumption.
2020-03-06 16:03:33 -06:00
David Young
ba9dd7e926 Instead of duplicating H5F_shared_block_write() and _read() wholesale in
H5F_block_write() and _read(), make the latter functions call the former.
2020-03-06 12:43:54 -06:00
David Young
9abbdeaa66 Merge pull request #2351 in HDFFV/hdf5 from ~DYOUNG/werror:b-bye-HDpthread_self to develop
* commit '224cb4a03406ed72e02d026efeab47fdf7f6b33b':
  Use a naked pthread_self() call in the HDF5 thread wrappers.
2020-03-05 11:06:39 -06:00
David Young
7350db497b Merge pull request #2424 in HDFFV/hdf5 from ~DYOUNG/hdf5:passed-do-while to develop
* commit 'b53eb6fb29e556c482ce20fa7a21485c99beea74':
  Add semicolons to more PASSED() invocations.
  So that I can use PASSED(); anywhere a statement can go, #define PASSED() with a do-while wrapper.
2020-03-05 11:05:29 -06:00
Allen Byrne
7413557dd5 Merge pull request #2434 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '24298a031f0b7f6a04364cfbfbdd9c8b6cc1a038':
  Remove system command from valgrind reports
  Whitespace
2020-03-04 09:29:03 -06:00
David Young
20e59d90e9 Break metadata reads and writes into up to three pieces, the non-page-aligned
piece in the beginning, 1 or more full pages, and whatever is leftover at the
end.  Passes all of our tests.
2020-03-03 18:08:03 -06:00
David Young
2646ee0ba7 Add an environment variable, H5_SHADOW_INDEX_FAIL, that I can set to an
unsigned integer value that tells at which index to inject a failure
for testing purposes.  I used this to establish that I can start the
shadow-index lookup test with a previous seed and see the same tests run
again.
2020-03-02 15:45:42 -06:00
Allen Byrne
24298a031f Remove system command from valgrind reports 2020-03-02 14:11:25 -06:00
Allen Byrne
5fc283da8e Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'a01ac97ba509e51905b816e8a29b5d0b2bc8be87':
  Fix incorrect FUNC_LEAVE macro (should match FUNC_ENTER_*_TAG).
2020-03-01 09:24:12 -06:00
Jake Smith
a01ac97ba5 Merge pull request #2427 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:develop to develop
* commit '2d9a81878d05732725f96d7d9b20ada8dfd2a146':
  Fix incorrect FUNC_LEAVE macro (should match FUNC_ENTER_*_TAG).
2020-02-29 23:39:00 -06:00
Allen Byrne
5abf6785cb Whitespace 2020-02-29 14:01:55 -06:00
Kimmy Mu
6e565dd271 Merge pull request #2431 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/type_cast to develop
* commit 'b5cf422799797cf0b573cc9992f866381bd63054':
  revert type cast
2020-02-28 22:12:16 -06:00
Jacob Smith
2d9a81878d Fix incorrect FUNC_LEAVE macro (should match FUNC_ENTER_*_TAG). 2020-02-28 17:14:45 -06:00
David Young
b53eb6fb29 Add semicolons to more PASSED() invocations. 2020-02-28 16:52:22 -06:00
David Young
3e93aa9514 So that I can use PASSED(); anywhere a statement can go, #define PASSED() with
a do-while wrapper.
2020-02-28 16:51:55 -06:00
David Young
32f6a742b3 Add a test for shadow-index lookups per the specification agreed with John and
Mike and described in my email "testing estimates version 2."
2020-02-28 16:46:47 -06:00
David Young
3cb259c5a2 So that I can use PASSED(); anywhere a statement can go, #define PASSED() with
a do-while wrapper.
2020-02-28 16:44:16 -06:00
David Young
0a662ea448 No, Robb Matzke did *not* write this file. Get to the point in a
copy-and-pasted comment.
2020-02-28 16:39:25 -06:00
David Young
b233408fe8 Move the swmr log-outlet declaration to H5FDvfd_swmr_private.h and use swmr
as the parent outlet of a new outlet for messages about the motion of the
shadow index.
2020-02-28 16:36:55 -06:00
kmu
b5cf422799 revert type cast 2020-02-28 14:47:13 -06:00
Quincey Koziol
885aa08ec4 Merge pull request #2419 in HDFFV/hdf5 from revise_get_offset to develop
* commit '38af6ee3d59a8e836f4c62dd533ddabd914c7abb':
  Switch the 'get offset' operation from a dataset 'get' callback to a [native] dataset 'optional' operation.
2020-02-28 14:27:16 -06:00
Quincey Koziol
38af6ee3d5 Switch the 'get offset' operation from a dataset 'get' callback to a [native]
dataset 'optional' operation.
2020-02-28 14:06:28 -06:00
Larry Knox
d7eec7d6ec Merge pull request #2411 in HDFFV/hdf5 from ~DYOUNG/werror:darwin-barriers to develop
* commit '803d805c74466a9d736455930b17de2d9f5cb02d':
  Complete the comment on thread_main(), explaining why the barrier is used.
  The first implementation seemed to allow for the possibility that a thread could block at the barrier, wake and exit the barrier, re-acquire the barrier lock and increase `nentered` before the other blocked threads woke and checked `nentered % count == 0`.  Then the other blocked threads would check `nentered % count == 0` and, finding it false, go back to sleep in the barrier.  This new implementation waits for a looser condition to obtain so that threads don't go back to sleep in the barrier.
  Test the right condition for the EBUSY return in pthread_barrier_destroy().
  s/exit_failure/EXIT_FAILURE/g
  Implement pthread_barrier(3) for Darwin using a counter, condition variable, and mutex.  Untested.
2020-02-28 06:22:13 -06:00
Larry Knox
cfc52fc273 Merge pull request #2415 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '811988f82c182012704942d333ee7800f4a78349':
  Modfy expression to match mpicc build with Intel as intel compiler, not gcc.
2020-02-27 22:03:28 -06:00
Larry Knox
811988f82c Modfy expression to match mpicc build with Intel as intel compiler, not
gcc.
2020-02-27 17:06:41 -06:00
Scot Breitenfeld
0a581b0ac0 Merge pull request #2414 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'dde7e73d9fe8cc3b849767790aa9b13ee2d600cd':
  Fixed issue building HDF5 with NAG Fortran 7.0.
2020-02-27 16:23:06 -06:00
David Young
803d805c74 Complete the comment on thread_main(), explaining why the barrier is used. 2020-02-27 16:14:44 -06:00
Allen Byrne
a8755bfe2b Merge pull request #2412 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6686cac564f5d0015a32b92e4478002069c973ee':
  Add java version and reference libsettings
2020-02-27 14:55:48 -06:00
David Young
ac4afca0c2 Shave 44 lines off of H5PB_read() by gathering a bunch of checks into one if
condition, reducing diagnostic checks, single-spacing, etc.
2020-02-27 13:13:46 -06:00
M. Scot Breitenfeld
dde7e73d9f Fixed issue building HDF5 with NAG Fortran 7.0.
Accounted for the additon of half precision floating-point with a KIND=16.

HDFFV-11033
2020-02-27 12:19:29 -06:00
David Young
4be589813a The first implementation seemed to allow for the possibility that a thread
could block at the barrier, wake and exit the barrier, re-acquire the barrier
lock and increase `nentered` before the other blocked threads woke and checked
`nentered % count == 0`.  Then the other blocked threads would check `nentered
% count == 0` and, finding it false, go back to sleep in the barrier.  This new
implementation waits for a looser condition to obtain so that threads don't go
back to sleep in the barrier.
2020-02-27 11:27:45 -06:00
Allen Byrne
6686cac564 Add java version and reference libsettings 2020-02-27 10:51:13 -06:00
David Young
11d22f3ea5 Test the right condition for the EBUSY return in pthread_barrier_destroy(). 2020-02-27 10:17:24 -06:00
David Young
802bf2dc1e s/exit_failure/EXIT_FAILURE/g 2020-02-27 10:16:49 -06:00
Allen Byrne
9a0e84fb47 Merge pull request #2409 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '13f5b3aee20d1d65f56dc08f088e0f218da5cf37':
  Update examples and fix old version references.
  Move MODEL check to before usage in CTestScript.cmake.
2020-02-27 08:56:44 -06:00
David Young
b87d9cb50e Implement pthread_barrier(3) for Darwin using a counter, condition variable,
and mutex.  Untested.
2020-02-26 20:38:57 -06:00
David Young
42e6eba1e1 Don't re-test a condition that's assert()'d at function entry and
couldn't change in the mean time, but do be paranoid and re-assert.
2020-02-26 16:34:18 -06:00
David Young
56a9459eb5 On the reader, zero the shadow-index entries before filling fields from the
shadow file so that members like `garbage` are not filled with garbage that
fools us, later.
2020-02-26 16:31:50 -06:00
David Young
8b2ba616eb Update some comments. 2020-02-26 16:29:13 -06:00
David Young
4b70e13e14 Where n is the number of page-table/shadow-index entries, avoid spending O(n^2)
time in H5PB_dest().  While we're in H5PB_dest(), mark deleted shadow-index
entries as "garbage" and skip the O(n) shadow index-entries copy.

Rename shadow index-entry member `moved_to_hdf5_file` to `moved_to_lower_file`
while I'm in here---NFCI.
2020-02-26 16:24:42 -06:00
David Young
d859bc4ba7 Pass the right parameter, H5F_shared_t * not H5F_t *. (Grr, serious warnings
not treated as errors....)
2020-02-26 14:48:44 -06:00
Allen Byrne
13f5b3aee2 Update examples and fix old version references. 2020-02-26 13:54:34 -06:00
Allen Byrne
f53220dc20 Move MODEL check to before usage in CTestScript.cmake. 2020-02-26 09:50:38 -06:00
Allen Byrne
1775d6c9bc Merge pull request #2405 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '2af8a87af0d7a1589a4df22d16b2d2513876e7a9':
  Copy generated files instead creating twice
  Fix standalone link
2020-02-25 16:28:11 -06:00
Allen Byrne
2af8a87af0 Copy generated files instead creating twice 2020-02-25 16:04:56 -06:00
Allen Byrne
4906d3d6a8 Fix standalone link 2020-02-25 14:57:14 -06:00
David Young
0f32728f72 By default, demote warnings promoted to errors back to warnings. 2020-02-25 12:02:07 -06:00
David Young
626c60dec4 Incorporate the H5_ECFLAGS into the library CFLAGS. Now a bunch of errors will
occur.  Next commit will demote the warnings promoted to errors back to
warnings again.
2020-02-25 11:59:37 -06:00
David Young
d8e5995f6d Break out warnings into more files that autoconf and CMake can share. This
change temporarily disables the warnings that were promoted to errors, but I
will add those warnings back as warnings, not errors, in the next commit.
2020-02-25 11:38:15 -06:00
Allen Byrne
ddb95a6dc5 Merge pull request #2398 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '04e67af8f968b2c6f50cb42990d3dfa79aa353d9':
  Fix Fortran macro use and jni comment
2020-02-25 09:40:07 -06:00
Allen Byrne
04e67af8f9 Fix Fortran macro use and jni comment 2020-02-25 09:22:19 -06:00
Allen Byrne
fe7c3fb646 Merge pull request #2394 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'cf58730177d60fd7311582a29539d87f10a7d88e':
  Update Windows platforms
  HDFFV-11036 add release note
  HDFFV-11036 add file compare test process
  Correct usage of add_compile_definitions
2020-02-24 13:59:40 -06:00
Allen Byrne
cf58730177 Update Windows platforms 2020-02-24 13:54:00 -06:00
Allen Byrne
1885c3e7d7 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'd24afb233383aa6c945fad430eb1b66edc4d6c63':
  Add missing MANIFEST entry, ./doc/code-conventions.md .
2020-02-24 13:00:25 -06:00
Allen Byrne
4fcd2589bb HDFFV-11036 add release note 2020-02-24 12:49:56 -06:00
Allen Byrne
f7212df030 HDFFV-11036 add file compare test process 2020-02-24 12:45:22 -06:00
David Young
9d5bb32b83 Add log outlets h5mf and h5mf_defer and write some diagnostic
messages to them.

Move and update a comment about removing (all) items from the deferred queue
before processing them.

Bug fix: don't leak file space, add back to the deferred queue all items that
were not disposed of.
2020-02-24 11:25:36 -06:00
David Young
9a29c2212b Move all frequently-read fields---ls_resolved, ls_state, ls_parent---to the top
of hlog_outlet_t so that they're likely to be in the same cacheline.
2020-02-24 11:07:47 -06:00
David Young
bdc6d8ffcd For bool, true, and false, #include <stdbool.h>. 2020-02-24 11:07:19 -06:00
David Young
ce35b2f35f Change a couple more occurrences of "sink" to "outlet." 2020-02-24 11:05:10 -06:00
David Young
1a4097e55c Don't use the __ prefix for attributes __unused and such, since that's reserved
for the system software, IIUC, and it clashes with a symbol on CentOS.
Instead, use a _ prefix.
2020-02-24 11:03:26 -06:00
David Young
d24afb2333 Merge pull request #2385 in HDFFV/hdf5 from manifest-repair to develop
* commit '921278c604b3129c1ff5066f0a2b94abcb3aa8f7':
  Add missing MANIFEST entry, ./doc/code-conventions.md .
2020-02-24 10:49:09 -06:00
Allen Byrne
1773b327fb Correct usage of add_compile_definitions 2020-02-23 16:22:31 -06:00
Larry Knox
2129aa4c24 Merge pull request #2390 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '666205a55f01698a71484f504bc8eb9541800f25':
  TRILAB-142 Change minimum CMake version to 3.12
2020-02-21 23:19:57 -06:00
Allen Byrne
666205a55f TRILAB-142 Change minimum CMake version to 3.12 2020-02-21 16:16:06 -06:00
Allen Byrne
909f9ee6d0 Merge pull request #2388 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '380fe7cfdfd98461cb1bff54bad4de0ee9904ad6':
  Fix always true issue because member is not dynamically allocated
  CMake cleanup
  HDFFV-11032 fix JNI call
2020-02-21 16:05:51 -06:00
Allen Byrne
380fe7cfdf Fix always true issue because member is not dynamically allocated 2020-02-21 15:15:34 -06:00
Allen Byrne
3f3e1520d5 CMake cleanup 2020-02-21 15:14:42 -06:00
Allen Byrne
399ef726f0 HDFFV-11032 fix JNI call 2020-02-21 15:14:00 -06:00
Jordan Henderson
0175224cb8 Merge pull request #1988 in HDFFV/hdf5 from ~JHENDERSON/hdf5_pr:develop to develop
* commit '51b8c63864c72de9a7b40c00673fe07510fec27e':
  Partial fix for HDFFV-10792
2020-02-21 14:36:43 -06:00
Jordan Henderson
51b8c63864 Merge develop 2020-02-21 14:30:34 -06:00
David Young
c5ab228563 Merge pull request #2384 in HDFFV/hdf5 from h5f_decode_length to develop
* commit '158ba17be0ad40e3e47a951c1340710608347772':
  Replace the old H5F_DECODE_LENGTH() implementation with one that initializes the variable it's loading on every path.
2020-02-20 14:37:35 -06:00
David Young
921278c604 Add missing MANIFEST entry, ./doc/code-conventions.md . 2020-02-20 13:34:33 -06:00
David Young
48ca10f80e Improve some comments: fix typos, shorten. 2020-02-19 16:46:42 -06:00
David Young
158ba17be0 Replace the old H5F_DECODE_LENGTH() implementation with one that
initializes the variable it's loading on every path.
2020-02-19 13:18:48 -06:00
Scot Breitenfeld
97fb53cfea Merge pull request #2379 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'def3f1a12e7c2ec165f40b9839f6bfe3da59807b':
  Corrected INTERFACE INTENT(IN) to INTENT(OUT) for buf_size inh5fget_file_image_f.
2020-02-19 12:33:31 -06:00
David Young
7b4131c2ae Merge pull request #2367 in HDFFV/hdf5 from ~DYOUNG/werror:unused to develop
* commit '50aac126d7c4082c2aeb0f3a68cad26bd1cd9783':
  Start to document the function/parameter/variable attribute macros.
  Filter all of the new _USED / _UNUSED type modifiers.
  H5_HAVE_PARALLEL, _DEBUG_API, etc.  Add attributes to some variables and parameters that are unused under some configurations.
2020-02-19 09:38:02 -06:00
M. Scot Breitenfeld
def3f1a12e Corrected INTERFACE INTENT(IN) to INTENT(OUT) for buf_size inh5fget_file_image_f.
HDFFV-11029
2020-02-18 17:26:42 -06:00
David Young
50aac126d7 Start to document the function/parameter/variable attribute macros. 2020-02-18 17:07:40 -06:00
David Young
ac7cd484d8 Filter all of the new _USED / _UNUSED type modifiers. 2020-02-18 16:31:35 -06:00
David Young
ac1912b361 Add a log outlet for shadow-index enlargement and use it instead of
mysteriously printing "ding ding!" when the shadow index is enlarged.

While I'm here, place the new index into place regardless of whether we succeed
at the deferred free of the old index's shadow-file space.
2020-02-18 13:01:21 -06:00
David Young
323e8f8d8b Delete an out-of-date comment. 2020-02-18 13:00:00 -06:00
David Young
d19456dae2 In process_deferred_frees(), remove *all* deferred frees from the
H5F_shared_t's queue before processing any, instead of removing just one,
processing it, removing another, processing it, and so on.  While we processed
the first entry on the queue, we often called H5MF_xfree() again, which called
process_deferred_frees() again, which processed the first entry, calling
H5MF_xfree() again, and on and on, until the deferred frees list was exhausted.
This deep recursion showed up as a wide, tall stack in my flame graphs.  Taking
all deferred entries off of the queue to start definitely breaks the recursion
and saves processing time.
2020-02-18 12:43:37 -06:00
David Young
e43895e3b4 Don't perform superfluous casts. 2020-02-18 11:50:15 -06:00
David Young
a162fbbaaa Trim excess detail. Use shadow/lower file terminology. Be less wordy about
"page or multi-page entry."
2020-02-18 09:59:10 -06:00
David Young
47b79b7422 Merge pull request #2369 in HDFFV/hdf5 from ~DYOUNG/vs2010:develop to develop
Merged per discussion with Elena.

* commit 'b4697f969295245840350e17d75d92a0fdd7e7a9':
  Use HD prefix.
  Delete unhelpful comment per Jordan's question.
  Make sure that H5TS_thread_id() is available as either a function or a macro in all configurations.
  Provide local copies of err(3)- and errx(3)-alike functions for Visual Studio compatibility.
  Provide C99/POSIX.1 format strings PRI[doux]{8,16,32,64,MAX,PTR} on systems that are missing <inttypes.h>.
2020-02-17 10:47:29 -06:00
David Young
fa2b89c6b0 Merge pull request #2325 in HDFFV/hdf5 from ~DYOUNG/werror:h5t_copy to develop
Merged per discussion with Elena.

* commit '3f903a441ad84001ea66589728bd8b036b6fdfca':
  Take out the temporary performance tests.
  Make calls through a function pointer.  Use the same number of arguments, always.
  Increase iterations, provide a baseline for no-op, simplify the overhead case a bit.
  Temporarily add some code that measures the time to run the simplest possible H5T__copy_all()-like routine 10 million times and then measures the version with FUNC_ENTER_STATIC/_LEAVE_NOAPI and a HGOTO_ERROR() statement.
  H5T_copy() constification plus Quincey's contributions.
2020-02-17 10:46:52 -06:00
David Young
3f903a441a Take out the temporary performance tests. 2020-02-14 15:01:44 -06:00
David Young
093c2c7e69 Avoid a crash, don't check if we're flushing when the file is closing:
there's no need to check if the metadata cache is flushing if we already
know the file is closing, because the condition we rely on is "closing
OR flushing."  Further, the cache may have already gone away, so
sometimes calling into the cache to see if it's flushing will crash the
program.
2020-02-13 10:01:05 -06:00
David Young
dfd3f782ca Share latest changes: change many occurrences of "metadata" file/index/header
to "shadow" file/index/header.  Simplify the description of freespace
management.  Finish describing the floating shadow index.
2020-02-12 16:25:22 -06:00
David Young
b4697f9692 Use HD prefix. 2020-02-12 14:07:47 -06:00
David Young
848219ccb8 Share my latest RFC changes. 2020-02-12 13:29:32 -06:00
David Young
f99bbd565a Let us provide a default state to HLOG_OUTLET_MEDIUM_DEFN(). 2020-02-12 13:28:33 -06:00
David Young
f75430585b Add a new log outlet for individual deferred shadow frees and use it.
Rename a variable that tells whether or not we started with an empty
deferred-free list, and take care not to set it excessively.
2020-02-12 13:28:33 -06:00
David Young
ec6919449b Delete misleading "Programmer:" field and excessive decoration from the
H5FD_vfd_swmr_write() comment header.  Delete a superfluous comment.  Delete
some whitespace at EOL.  NFCI.
2020-02-12 13:28:33 -06:00
David Young
2b7347d577 Record the state of a log outlet on first use and reuse that state on
subsequent hlog_fast() calls.

While I'm here, add a typedef, hlog_outlet_t, for struct hlog_outlet, and use
it.
2020-02-12 13:28:33 -06:00
David Young
a3e6c35b2d Whitespace repair. NFCI. 2020-02-12 13:28:33 -06:00
David Young
41a8036511 Make a typedef for enum hlog_outlet_state, hlog_outlet_state_t, and use it.
NFCI.
2020-02-12 13:28:33 -06:00
David Young
47438c741a Don't declare a bunch of undefined log outlets. 2020-02-12 13:28:33 -06:00
Allen Byrne
ddf139aed5 Merge pull request #2377 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'a68302883a243c33ceb495e3e151331fa267f455':
  TRILAB-148 fix sanitizer and -fsanitize usage
2020-02-12 11:32:52 -06:00
Allen Byrne
a68302883a TRILAB-148 fix sanitizer and -fsanitize usage 2020-02-12 09:42:23 -06:00
Allen Byrne
b8a57cb8dc Merge pull request #2372 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b6ea9d25194797fdfb0880ee9721b95bc1533af7':
  Update sanitizer note.
2020-02-11 14:20:09 -06:00
Allen Byrne
b6ea9d2519 Update sanitizer note. 2020-02-11 13:48:55 -06:00
David Young
2069224d0d Share my latest changes to the RFC. 2020-02-11 13:43:58 -06:00
David Young
89247be681 Add latest commentary on RFC. 2020-02-11 13:43:58 -06:00
David Young
63c95faf49 Remove tongue-in-cheek credit for Rusty Shackleford and Dale Alvin Gribble.
Delete the comment questioning whether pthread_mutex_lock is allowed
in a key destructor, since pthread_key_create(3) provides the answer:

   There  is  no  notion  of a destructor-safe function. If an application
   does not call pthread_exit() from a signal handler, or if it blocks any
   signal whose handler may call pthread_exit() while calling async-unsafe
   functions, all functions may be safely called from destructors.

Delete redundant comment.
2020-02-10 17:24:04 -06:00
David Young
4c7254b6ec Make sure that H5TS_thread_id() is available as either a function or a macro in
all configurations.

(Merge remote-tracking branch 'origin/thread_id_everywhere' into vs2010-develop)
2020-02-10 16:59:14 -06:00
Jake Smith
444a666f1d Merge pull request #2357 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:develop to develop
* commit '6a93d1f834184853913d43e50fda5b350fa1dc38':
  Fix improper S3 signing key null check (HDFFV-11015).
2020-02-10 16:57:33 -06:00
Scot Breitenfeld
ae8091f568 Merge pull request #2366 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '79c62f9a25906705735efa9286124c0d3aa9276a':
  HDFFV-11018 Add Fortran H5F_LIBVER_V*_F definitions
2020-02-10 15:39:42 -06:00
M. Scot Breitenfeld
79c62f9a25 HDFFV-11018 Add Fortran H5F_LIBVER_V*_F definitions
Added
------
New Definitions:

  INTEGER :: H5F_LIBVER_ERROR_F
  INTEGER :: H5F_LIBVER_NBOUNDS_F
  INTEGER :: H5F_LIBVER_V18_F
  INTEGER :: H5F_LIBVER_V110_F
  INTEGER :: H5F_LIBVER_V112_F
  INTEGER :: H5F_LIBVER_V114_F

New API:
  h5pget_libver_bounds_f(fapl_id, low, high, hdferr)

Removed:
  call to C wrapper h5pset_libver_bounds_c in h5pset_libver_bounds_f
2020-02-10 15:30:18 -06:00
David Young
f9a8fd5a4c H5_HAVE_PARALLEL, _DEBUG_API, etc. Add attributes to some variables and
parameters that are unused under some configurations.
2020-02-10 14:41:20 -06:00
David Young
4f452ea359 Call them log "outlets" not log "sinks". 2020-02-10 14:25:27 -06:00
David Young
0d94627836 Rename loglib_ / LOGLIB_ to hlog_ / HLOG_, remove the syslog-based
implementation, rename hlog_log() to hlog(), hlog_vlog() to vhlog(), et cetera.
Rename hlog_lazy() to hlog_fast().

Define some log sinks and use them in the page buffer and in VFD SWMR.
2020-02-10 13:48:35 -06:00
David Young
3d2c0d7b0d Delete unhelpful comment per Jordan's question. 2020-02-10 13:31:56 -06:00
David Young
6500ad88a8 Rename log.c to hlog.c, add hlog.[ch] to MANIFEST. 2020-02-07 16:45:07 -06:00
David Young
3109f9e323 Follow HDF5 conventions. 2020-02-07 16:34:01 -06:00
Muqun Yang
e5ae310109 Merge pull request #2361 in HDFFV/hdf5 from ~MYANG6/hdf5-develop:develop to develop
* commit '1b937c69f4b8187401eeb8eef195bbcc2ea58312':
  HDFFV-11014, fix the h5repack issue that misses a few attributes during the repacking. The flag that checks the object reference attribute is not updated properly. The fix is trivial. Just need to move the flag update line into the inner loop. Tested at Jelly. Also update the release.txt.
2020-02-07 15:26:30 -06:00
David Young
39fd512fe7 Make sure that H5TS_thread_id() is available as either a function or a macro in
all configurations.

Previously it was neither declared nor defined in --disable-threadsafety
builds.  The compiler's warning got lost in the noise---I first saw the issue
because my -Werror branch stopped compiling cold---and the tests still linked
and ran.
2020-02-07 14:57:46 -06:00
David Young
c7ad81b0ea Provide local copies of err(3)- and errx(3)-alike functions
for Visual Studio compatibility.
2020-02-07 14:45:08 -06:00
Muqun Yang
1b937c69f4 HDFFV-11014, fix the h5repack issue that misses a few attributes during the repacking. The flag that checks the object reference attribute is not updated properly. The fix is trivial. Just need to move the flag update line into the inner loop. Tested at Jelly. Also update the release.txt. 2020-02-07 14:43:02 -06:00
Jacob Smith
6a93d1f834 Fix improper S3 signing key null check (HDFFV-11015). 2020-02-07 13:47:15 -06:00
David Young
b2cb485268 Provide C99/POSIX.1 format strings PRI[doux]{8,16,32,64,MAX,PTR} on systems
that are missing <inttypes.h>.
2020-02-07 11:40:31 -06:00
David Young
76892a3ff9 Add my logging library in existing form. Abbreviate copyright notices in the
sources but put the full notices & license terms in COPYING.
2020-02-06 17:30:05 -06:00
David Young
021740bac0 Merge pull request #2354 in HDFFV/hdf5 from ~DYOUNG/werror:fix_h5ts_private to develop
* commit '8f77878953b55cbffb6331161d12eab1c778a8a5':
  Oops, the test has to return success in the unimplemented case.
2020-02-06 16:58:50 -06:00
David Young
251d62c5dd Update punch list a bit: mention the over-long postponement of shadow-index
reclamation.  Mention that a writer can delete an object out from under a
reader who holds an hid_t for it.
2020-02-06 16:06:13 -06:00
David Young
ba9dd0b871 Escape some underscores. I'm not sure if this is strictly necessary, but vim's
syntax highlighting colors some (but not all) unescaped underscores red like
there is some problem.  It's possible there is some problem, since underscores
are used to indicate some kind of emphasis---probably underlining.
2020-02-06 16:04:47 -06:00
David Young
8526d61cf4 In a comment, mention that reclamation of shadow indices is postponed for
longer than it needs to be.  NFCI.
2020-02-06 16:03:25 -06:00
David Young
0a544ce307 Extract a routine from shadow_image_defer_free(), shadow_range_defer_free(),
that works in byte offsets rather than page offsets.  Use
shadow_range_defer_free() to defer shadow-index frees.
2020-02-06 14:57:33 -06:00
David Young
5eba819f39 Avoid going back and forth between signed and unsigned in the same expression
with some casts and an unsigned constant.  This quiets GCC warnings, especially
-Wconversion, IIRC.
2020-02-06 14:22:18 -06:00
David Young
34267d8631 Fix a typo in a comment and delete whitespace at EOL. 2020-02-06 14:21:30 -06:00
David Young
afa09c80bd Use an early exit to lower a staircase. 2020-02-06 14:14:34 -06:00
David Young
b972248b73 Reduce code duplication by using vfd_swmr_pageno_to_mdf_idx_entry() to look up
shadow pages.  Reduce casts by choosing correct format strings and compatible
variable types.

Poison writes to addr by making it const.  Don't increase addr in the read(2)
loop because it's never used afterward.

Delete some more dead code.

Rename read_ptr as p and declare it much closer to its use.  Change its type to
`char *` so that no casts are necessary to increase it.
2020-02-06 14:14:34 -06:00
David Young
fcd9e78f8c Delete unused code. 2020-02-06 14:14:34 -06:00
David Young
eaeede0120 Delete the hdf5_page_offset member of shadow_defree_t, it is initialized but
never read.
2020-02-06 14:14:34 -06:00
David Young
4ffc6839e1 Fix a typo in a diagnostic printf and, while I'm here, use the right format
strings.
2020-02-06 14:14:34 -06:00
David Young
bc27f0d1ce Use proper format string. 2020-02-06 14:14:34 -06:00
David Young
9a8ba2a7d3 Make H5FD_vfd_swmr_dump_status() take an unsigned page number to be consistent
with other code.
2020-02-06 14:14:34 -06:00
David Young
456f5c6ee6 Quiet some warnings about jumping over variable initialization,
an improper format string, etc.  NFCI.
2020-02-06 14:14:34 -06:00
David Young
70515b290f Rename the deferred-free queues. There are two of them, and the names I used
for them did not help me keep track of what they were for.

For brevity, I will call a deferred free record a "defree" in the code.

The deferred_free_queue_t becomes a lower_defree_queue_t, and each record on
the queue becomes a lower_defree_t.  A lower_defree_t tracks one deferred free
on the lower VFD---that is, the one under the SWMR VFD.

The old_image_queue_t becomes a shadow_defree_queue_t, and a record therein is
a shadow_defree_t.  A shadow_defree_t tracks one deferred free on the shadow
file.
2020-02-06 14:14:34 -06:00
David Young
3c4a34951e Move the bsdqueue.h #inclusion up with the other #inclusions. 2020-02-06 14:14:34 -06:00
Mike Folk
fbcbf76907 Update VFD_SWMR_Punch_List.md 2020-02-06 13:37:07 -06:00
David Young
a5a9e75f6a Make calls through a function pointer. Use the same number of arguments,
always.
2020-02-06 11:00:10 -06:00
David Young
8f77878953 Oops, the test has to return success in the unimplemented case. 2020-02-06 10:43:37 -06:00
David Young
80179b0648 Merge pull request #2349 in HDFFV/hdf5 from ~DYOUNG/werror:fix_h5ts_private to develop
* commit 'a0a75e7b6e157b40bbe09c7955153835ce200f79':
  If H5_HAVE_THREADSAFE is not #defined, define nothing but a stub implementation of H5TS_thread_id().
2020-02-05 19:34:06 -06:00
David Young
224cb4a034 Use a naked pthread_self() call in the HDF5 thread wrappers. 2020-02-05 19:31:59 -06:00
Jordan Henderson
9064ad0a2f Merge pull request #2346 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit 'be0cd0b64aef3f64b15d5fc89cd15213ad939763':
  Add RELEASE.txt note for token refactoring changes
2020-02-05 18:11:21 -06:00
David Young
a0a75e7b6e If H5_HAVE_THREADSAFE is not #defined, define nothing but a stub implementation
of H5TS_thread_id().
2020-02-05 16:47:55 -06:00
Jordan Henderson
be0cd0b64a Merge branch 'develop' of ssh://git@bitbucket.hdfgroup.org:7999/~jhenderson/hdf5.git into develop 2020-02-05 16:07:33 -06:00
Jordan Henderson
469c56d8a9 Add RELEASE.txt note for token refactoring changes 2020-02-05 16:07:33 -06:00
David Young
00608a8756 Merge pull request #2341 in HDFFV/hdf5 from ~DYOUNG/werror:thread_id to develop
* commit 'cefacee21b5ad569e2394b32793648e1b80f3d6b':
  src/H5Eint.c: #include H5TSprivate.h for H5TS_thread_id() definitions.
  Change thread IDs to uint64_t from unsigned long, per Quincey's suggestion.
  Add thread_id.c to the MANIFEST and the CMakeLists.txt per Allen's request.
  Replace pthread_self_ulong() with H5TS_thread_id().  The POSIX Threads implementation ought to be portable to any system that has POSIX Threads.  On Windows, I use the same API call as before.
2020-02-05 13:34:00 -06:00
Allen Byrne
7ab0fa2d7c Merge pull request #2345 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '7c9427219ff903ee0ebdd56ed253b29e83ce0c06':
  HDFFV-11012 - add release note
2020-02-05 09:56:53 -06:00
Allen Byrne
7c9427219f HDFFV-11012 - add release note 2020-02-05 09:39:13 -06:00
Allen Byrne
0d79831dce Merge pull request #2343 in HDFFV/hdf5 from ~BYRN/hdf5_adb:bugfix/HDFFV-11012-fortran-include-paths to develop
* commit '3ec66d55426c5c947eeb6f4d7d5d31b38f59ebf6':
  HDFFV-11012 - add correct fortran include path properties
2020-02-05 08:52:54 -06:00
Mike Folk
ae61a8e826 Update VFD_SWMR_Punch_List.md 2020-02-04 15:25:06 -06:00
Allen Byrne
7e6d428648 Merge pull request #2342 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '93f6e6761833ba579128503c3fe47b76b02fa85c':
  HDFFV-10996 add release note
  HDFFV-10996 - add java vol tests
2020-02-04 11:37:39 -06:00
Allen Byrne
93f6e67618 HDFFV-10996 add release note 2020-02-04 11:36:56 -06:00
Allen Byrne
3ec66d5542 HDFFV-11012 - add correct fortran include path properties 2020-02-04 11:28:45 -06:00
David Young
cefacee21b src/H5Eint.c: #include H5TSprivate.h for H5TS_thread_id() definitions.
test/thread_id.c: move threads_failure() inside #ifdefs.
2020-02-03 16:33:28 -06:00
David Young
a20b68b257 Change thread IDs to uint64_t from unsigned long, per Quincey's suggestion.
Fix a typo in the H5TS_thread_init() comment and reword some ID
properties.
2020-02-03 16:23:06 -06:00
David Young
3c65919776 NFCI: exit(EXIT_FAILURE) instead of exit(1) for portability.
Delete a comment on a closing curly brace.
2020-02-03 15:05:58 -06:00
David Young
036dd539d3 It's not necessary to assert(p != NULL) if you're dereferencing p in the next
assertion.
2020-02-03 15:04:52 -06:00
David Young
29ee63787b Numerous changes supporting a floating shadow index:
Add to the H5F_shared_t (!) a new member that tells the index in
the shadow file where the index should be written.

Allocate shadow filespace for the header and the index separately so
that the index can float.  Update tests to match the expected original
location of the index.

Introduce vfd_swmr_enlarge_shadow_index(), a routine that allocates space in
the shadow file for a new index that has (up to) twice as many entries as the
old index, allocates a new in-core index of the same size, and copies the old
in-core index to the new.  Call vfd_swmr_enlarge_shadow_index() in
H5PB_vfd_swmr__update_index() when the in-core index has too few slots.

In the comment at the top of H5FD__vfd_swmr_load_hdr_and_idx(), describe the
protocol that it follows, now, when it reads the shadow header and index.
Delete some dead code in the function and add a bit of diagnostic code.
TBD quiet the diagnostic code.

In H5F_vfd_swmr_init(), follow the protocol: write the index, first, then
the header.

Modify property-list checks and tests to reserve no fewer than two pages at the
front of the shadow file for the header and index.
2020-02-03 15:04:21 -06:00
Allen Byrne
00d68851fc HDFFV-10996 - add java vol tests 2020-02-03 13:45:14 -06:00
David Young
64f1ef1fda Make the first argument to H5PB_vfd_swmr__update_index() and H5F_t instead of
an H5F_shared_t because the new routine that will relocate the index (which
will be in a future commit) has to pass an H5F_t to the filespace allocator.
2020-02-03 13:16:05 -06:00
David Young
005bd89ad5 Use FAIL_STACK_ERROR instead of TEST_ERROR after library calls, so that the
error stack will be reported.

Use calloc instead of malloc+memset.
2020-02-03 13:10:11 -06:00
David Young
65600cbd72 Add thread_id.c to the MANIFEST and the CMakeLists.txt per Allen's
request.
2020-02-03 12:59:52 -06:00
David Young
986c7451a0 Replace pthread_self_ulong() with H5TS_thread_id(). The POSIX Threads
implementation ought to be portable to any system that has POSIX
Threads.  On Windows, I use the same API call as before.
2020-02-03 11:59:14 -06:00
Dana Robinson
0147d2493e Merge pull request #2329 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5MM_const to develop
* commit '10301154215fb6a22590e80f7b5ed0005f3e1786':
  Minor refactoring to the VFD info free call.
  Updated the 'const memory free' changes based on PR feedback.
  Added a free wrapper that lets us free constant pointers without generating warnings.
2020-01-30 18:50:41 -06:00
Dana Robinson
1030115421 Minor refactoring to the VFD info free call. 2020-01-30 16:47:30 -08:00
Dana Robinson
88b4c915e8 Updated the 'const memory free' changes based on PR feedback. 2020-01-30 16:31:11 -08:00
David Young
57fe4a52a2 Consolidate shadow-file allocation code in H5MV.c. 2020-01-30 17:27:59 -06:00
David Young
590c51b68c Remove some dead code and out-of-date comments. 2020-01-30 17:22:01 -06:00
David Young
69a064eef8 Increase iterations, provide a baseline for no-op, simplify the overhead
case a bit.
2020-01-30 15:46:12 -06:00
Allen Byrne
0e56affc7e Merge pull request #2330 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '099e68140101a6a2cd128f68d5f6b76661a1de92':
  VS2010 needs an underscore
2020-01-30 14:11:36 -06:00
David Young
f398fe6bee Temporarily add some code that measures the time to run the simplest possible
H5T__copy_all()-like routine 10 million times and then measures the version
with FUNC_ENTER_STATIC/_LEAVE_NOAPI and a HGOTO_ERROR() statement.
2020-01-30 14:10:07 -06:00
Allen Byrne
099e681401 VS2010 needs an underscore 2020-01-30 13:23:54 -06:00
Dana Robinson
9da387342e Added a free wrapper that lets us free constant pointers without
generating warnings.

Also, brought the const-ness of the VOL connector info in line with
the VFD info (not visible externally).
2020-01-30 11:01:25 -08:00
David Young
2e15f48d78 Repair indentation and delete some superfluous comments. NFCI. 2020-01-30 10:48:36 -06:00
Dana Robinson
d1f2eff231 Merge pull request #2328 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'a67c238feef1487814b02132bfd7961f22d9d6eb':
  Cleaned up remaining warnings in high-level library.
2020-01-30 10:43:40 -06:00
David Young
b7f5776c53 Fix typo. NFCI. 2020-01-30 10:25:46 -06:00
Dana Robinson
a67c238fee Cleaned up remaining warnings in high-level library. 2020-01-29 18:09:29 -08:00
Allen Byrne
1255363e9b Merge pull request #2326 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'c5e2d975734d6e7a88fb48b76ec7e11d0a7763de':
  Small fixes for tools and skip autotools tests for no filter
  Correctly manage warnings for new tests
  Ext libs ZLIB and SZIP warnings are separate concerns
2020-01-29 16:25:16 -06:00
Allen Byrne
c5e2d97573 Small fixes for tools and skip autotools tests for no filter 2020-01-29 15:39:25 -06:00
Allen Byrne
1eb6a4512b Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '30ca0cdc9a0b1f7fc1521007c65d9baeb69c9a23':
  fix bad function cast warning
  initialization discards const warning
  testpar/t_2Gio.c: Fix a typo that I think was introduced by a         previous warnings PR.  An array element was assigned to         itself---shape[2]Â =Â shape[2];---instead of being assigned to         chunk[2].
  Reduce casts of HDcalloc()/HDmalloc() that -Wc++-compat required.
  Reduce differences between my -Werror branch and `develop`:
  fix unused function warning
2020-01-29 14:15:00 -06:00
Kimmy Mu
30ca0cdc9a Merge pull request #2323 in HDFFV/hdf5 from ~KMU/hdf5:misc to develop
* commit 'c586d91ea003f37d130c2c45eea6f573f7d3d3bc':
  fix bad function cast warning
  initialization discards const warning
  fix unused function warning
2020-01-29 14:11:51 -06:00
David Young
4a4755d314 H5T_copy() constification plus Quincey's contributions. 2020-01-29 14:11:10 -06:00
kmu
c586d91ea0 Merge branch 'develop' into misc 2020-01-29 14:03:48 -06:00
David Young
43d41633a1 Merge pull request #2318 in HDFFV/hdf5 from ~DYOUNG/werror:reduce-werror-diffs-1 to develop
* commit 'fa1b2f6ef35c459c9f74ead885c119ae7f61c056':
  Reduce differences between my -Werror branch and `develop`:
2020-01-29 13:51:52 -06:00
David Young
0d6e025888 Merge pull request #2320 in HDFFV/hdf5 from ~DYOUNG/werror:reduce-werror-diffs-2 to develop
* commit 'a5f236e83bdd29e660a55c5577a69a3809605cda':
  Reduce casts of HDcalloc()/HDmalloc() that -Wc++-compat required.
2020-01-29 13:51:27 -06:00
David Young
1b49ccd7fa Merge pull request #2321 in HDFFV/hdf5 from ~DYOUNG/werror:reduce-werror-diffs-3 to develop
* commit 'f19e06b59ee53f17465a7b5974c25c3245a40d9a':
  testpar/t_2Gio.c: Fix a typo that I think was introduced by a         previous warnings PR.  An array element was assigned to         itself---shape[2]Â =Â shape[2];---instead of being assigned to         chunk[2].
2020-01-29 13:51:10 -06:00
kmu
4453dc2998 fix bad function cast warning 2020-01-29 13:43:31 -06:00
kmu
0443c582d8 initialization discards const warning 2020-01-29 13:31:14 -06:00
Allen Byrne
661cf6b79b Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '20c09524ea348f4009555a1cba2731842b9af80e':
  HDFFV-11011 - merge include list
  HDFFV-11011 correct issues with target file extension
2020-01-29 13:14:40 -06:00
Allen Byrne
20c09524ea Merge pull request #2319 in HDFFV/hdf5 from ~BYRN/hdf5_adb:bugfix/HDFFV-11011 to develop
* commit 'c8096118d5edd9f27ff0f6180a4dde4c10aafda7':
  HDFFV-11011 - merge include list
  HDFFV-11011 correct issues with target file extension
2020-01-29 13:12:14 -06:00
Allen Byrne
c8096118d5 HDFFV-11011 - merge include list 2020-01-29 12:13:28 -06:00
Allen Byrne
07eaa995c6 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '31616380d107e8f4e4084084984a80871c17528b':
  Introduce new H5VL _by_value routines
2020-01-29 12:11:50 -06:00
Jordan Henderson
31616380d1 Merge pull request #2317 in HDFFV/hdf5 from ~JHENDERSON/hdf5:tools_vol_update to develop
* commit 'e41f671d2ff3c7bb797ea0246e6289b0bac5a0e5':
  Introduce new H5VL _by_value routines
2020-01-29 11:53:14 -06:00
David Young
f19e06b59e testpar/t_2Gio.c: Fix a typo that I think was introduced by a
previous warnings PR.  An array element was assigned to
        itself---shape[2]Â =Â shape[2];---instead of being assigned to
        chunk[2].

fortran/src/H5Pf.c: move conditional compilation controlled by
        H5_NO_DEPRECATED_SYMBOLS outside of a function for readability.

fortran/src/H5match_types.c: put a variable's declaration under the same
        conditional compilation (H5_FORTRAN_HAVE_C_LONG_DOUBLE) as its
        use.

For now, skip compilation of some unused debug dump routines in the JNI.
While I'm in the JNI, delete a set-but-unused variable.

src/H5Z.c: condition a variable declaration on H5_NO_DEPRECATED_SYMBOLS
        so that it's not declared but unused or vice versa.

test/cache_common.h: add an #include in to get some symbols we need to
        avoid implicit declaration warnings.

test/dsets.c: use a more conventional conditional-compilation syntax.

test/dt_arith.c, test/fillval.c: initialize a bunch of uninitialized
        variables before use.

test/vfd.c: pass the expected type of `void **` to posix_memalign(3)
        instead of `int **`.

testpar/t_bigio.c: explicitly compare with 0 instead of using ! when
        "equal to 0?" is the question not "is false?"  Repair some
        indentation while I'm here.

testpar/testpar.h: repair misaligned line-continuation backslashes in a
        macro that probably should be a function so that we don't have
        to fiddle with the line continuation to begin with.

tools/src/h5repack/h5repack_main.c: fix some compiler fussing about
        enums.

tools/test/perform/pio_engine.c: the compiler fusses if you cast a
        function call returning double directly to off_t.  It's ok if
        you cast a variable that's a double to off_t, however.  Write
        and use a new function, sqrto(), to avoid the cast warnings.
2020-01-29 11:44:39 -06:00
Allen Byrne
103bcbdfd2 Correctly manage warnings for new tests 2020-01-29 11:44:35 -06:00
Allen Byrne
66e389c48a Ext libs ZLIB and SZIP warnings are separate concerns 2020-01-29 11:34:18 -06:00
David Young
a5f236e83b Reduce casts of HDcalloc()/HDmalloc() that -Wc++-compat required.
Reduce gratuitous casts---e.g., (size_t)1.

Use the right format string for a pointer.

In the H5C sanity checks, change a "size increase" variable from ssize_t
(too narrow) to int64_t (wide enough).

Parenthesize every appearance of `storage` in the macro
`H5D_CHUNK_STORAGE_INDEX_CHK(storage)` so that you can pass in an
expression like &sc and it works properly.

Disallow re-assignment of the `dset` parameter to H5D__chunk_init()
because it helped assure me that it's safe to replace the repeating
expression `&dset->shared->layout.storage.u.chunk` with `sc` throughout.

Replace lengthy expressions such as
`&dset->shared->layout.storage.u.chunk` with `sc` throughout several
functions in H5Dchunk.c ISTR that the compiler warned that `sc` was
declared but unused in a couple of functions, and then I found that `sc`
could be used in many places.  Maybe the disused `sc` appeared because a
bunch of code was copied and pasted, I don't know.  Anyway, it's a lot
tighter code now that I use `sc`.

In H5D__chunk_update_old_edge_chunks() and H5D__chunk_delete()
I actually expand `sc` and another temporary variable, `pline`,
because they're used only in !defined(NDEBUG) code.  This squashes
unused-variable warnings in the defined(NDEBUG) configuration.

Don't drop the `volatile` qualification with a cast in
tools/src/h5import/h5import.c.
2020-01-29 10:47:30 -06:00
Allen Byrne
f554a4fb54 Merge pull request #2275 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '4276e37eab01c4d67e0d669fff28d3eac31cc806':
  Remove commented warnings line
  Note for common warnings files
  Create common build system files for warnings
2020-01-29 10:41:33 -06:00
Allen Byrne
4276e37eab Remove commented warnings line 2020-01-29 10:28:10 -06:00
David Young
fa1b2f6ef3 Reduce differences between my -Werror branch and develop:
Rename index -> idx, fileno -> fnumber, fileno -> fno to avoid GCC
shadowed declaration warnings about index(3).

Convert #pragma GCC diagnostic push/pop/ignored to the HDF5 library's
H5_GCC_DIAG_OFF()/H5_GCC_DIAG_ON() macros.
2020-01-28 20:35:28 -06:00
Jordan Henderson
e41f671d2f Introduce new H5VL _by_value routines 2020-01-28 18:18:38 -06:00
kmu
684a9bd9cb Merge branch 'develop' into misc 2020-01-28 14:30:20 -06:00
kmu
52115036dd fix unused function warning 2020-01-28 14:25:40 -06:00
Allen Byrne
1755c2e38f Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '71c050f837149a0c11e0936e661047c091deaa2f':
  rename macro
  fix issues from test fail
  change condition
  pick up from Dave's fix
  leave Wswitch-default for later fix
  fix Wredundant-decls, Wswitch-default, Wdeclaration-after-statement, Wsign-compare, Wmisleading-indentation, Wshadow
2020-01-28 13:46:27 -06:00
Kimmy Mu
71c050f837 Merge pull request #2311 in HDFFV/hdf5 from ~KMU/hdf5:misc to develop
* commit '406330addf45529ecdd088f4d22e9aab9a03661d':
  rename macro
  change condition
  pick up from Dave's fix
  leave Wswitch-default for later fix
  fix Wredundant-decls, Wswitch-default, Wdeclaration-after-statement, Wsign-compare, Wmisleading-indentation, Wshadow
2020-01-28 13:28:26 -06:00
kmu
406330addf rename macro 2020-01-28 13:27:50 -06:00
Kimmy Mu
57dd6d9864 Merge pull request #2315 in HDFFV/hdf5 from ~KMU/hdf5:develop to develop
* commit '3177c89c5b0749ef1294ec60e124bf402246feba':
  fix issues from test fail
2020-01-28 13:25:09 -06:00
Allen Byrne
527aaa32b2 HDFFV-11011 correct issues with target file extension 2020-01-28 13:14:59 -06:00
kmu
3177c89c5b fix issues from test fail 2020-01-28 13:08:18 -06:00
David Young
cb66576c7a Use fewer gratuitous casts. Use struct assignment instead of member-by-member
assignment to copy `struct timespec`.  NFCI.
2020-01-28 10:57:57 -06:00
Allen Byrne
c8e9e10593 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '15a1bce9a26b15313029410e23be6d706ad0c207':
  Replaced my_isnan with C99 isnan in h5diff.
2020-01-28 08:15:50 -06:00
Dana Robinson
15a1bce9a2 Merge pull request #2304 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:isnan_fixes to develop
* commit '8b4d774eb9bb95cb3c59f033b43ed9fba340a54a':
  Replaced my_isnan with C99 isnan in h5diff.
2020-01-28 02:44:07 -06:00
kmu
9214617e2e change condition 2020-01-27 13:41:42 -06:00
David Young
b34e6d2f45 Add some missing spaces. 2020-01-27 13:41:42 -06:00
David Young
59e7b10a7e Fix spelling. NFCI. 2020-01-27 13:27:01 -06:00
kmu
cd2f954314 pick up from Dave's fix 2020-01-27 12:57:33 -06:00
kmu
54610a7c47 leave Wswitch-default for later fix 2020-01-27 11:38:20 -06:00
Allen Byrne
6637e76a38 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '38d3834c54ee1dfa7366ae1c581909f0cf7fa000':
  Add another warning variation
  Correct ignore warnings
  Only use sanitizer with Clang
  Remove cmake macros from valgrind tests
2020-01-27 11:12:25 -06:00
Allen Byrne
38d3834c54 Merge pull request #2308 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '3b804074bd358b4a1f5b8ace30f53c4a5b250bf8':
  Add another warning variation
  Correct ignore warnings
  Only use sanitizer with Clang
  Remove cmake macros from valgrind tests
2020-01-27 11:11:27 -06:00
Allen Byrne
3b804074bd Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b0aa2c037ebb742db520e4e9a72e06d21c4afa27':
  Restore fix of test assert fail eror undone by later commit.
2020-01-27 09:22:16 -06:00
Allen Byrne
e4055cbea6 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b0aa2c037ebb742db520e4e9a72e06d21c4afa27':
  Restore fix of test assert fail eror undone by later commit.
2020-01-27 09:22:08 -06:00
Larry Knox
b0aa2c037e Merge pull request #2312 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '1c812fcd5d475afb7e65ed28d84990f96eefa649':
  Restore fix of test assert fail eror undone by later commit.
2020-01-27 09:18:53 -06:00
Larry Knox
1c812fcd5d Restore fix of test assert fail eror undone by later commit. 2020-01-27 09:02:58 -06:00
kmu
5163a7e1cf fix Wredundant-decls, Wswitch-default, Wdeclaration-after-statement, Wsign-compare, Wmisleading-indentation, Wshadow 2020-01-27 09:01:32 -06:00
Allen Byrne
999b9151d4 Add another warning variation 2020-01-26 15:13:28 -06:00
Allen Byrne
8e3cd63983 Correct ignore warnings 2020-01-26 10:51:31 -06:00
Allen Byrne
7e52c4a1e1 Only use sanitizer with Clang 2020-01-26 10:19:17 -06:00
Allen Byrne
87a8951fa0 Remove cmake macros from valgrind tests 2020-01-25 09:36:20 -06:00
Allen Byrne
0eec2cc207 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5638d8860f3192f9830088ede372006a25bebbd2':
  fix assert fail
  Cleaned up warnings in test/tid.c.
2020-01-25 08:30:45 -06:00
Dana Robinson
5638d8860f Merge pull request #2305 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:tid_cleanup to develop
* commit '51ed3d256e87b423265c17867c80f588ee48fa3b':
  Cleaned up warnings in test/tid.c.
2020-01-24 17:14:41 -06:00
David Young
0fbd8654f7 Prepare the VFD SWMR reader for a "floating" shadow index by overhauling
the way that the shadow header and shadow index are loaded.

In H5FD__vfd_swmr_load_hdr_and_idx(), adopt a new protocol for reading
the shadow file:

0 If the maximum number of retries have been attempted, then exit
  with an error.

1 Try to read the shadow file *header*.  If successful, continue to 2.

  If there is a hard failure, then return an error.  If there is a failure
  that may be transient, then sleep and retry at 0.

2 If the tick number in the header is less than the tick last read by the VFD,
  then return an error.

3 If the tick number in the header is equal to the last tick read by the
  VFD, then exit without doing anything.

4 Try to read the shadow file *index*.  If successful, continue to 5.

  If there is a hard failure, then return an error.  If there is a failure
  that may be transient, then sleep and retry at 0.

5 If a different tick number was read from the index than from the index,
  then continue at 0.

6 Try to *re-read* the shadow file *header*.  If successful, continue to 7.

  If there is a hard failure, then return an error.  If there is a failure
  that may be transient, then sleep and retry at 0.

7 Compare the header that was read previously with the new header.  If
  the new header is different than the old, then we may not have read
  the index at the right shadow-file offset, or the index may have been
  read in an inconsistent state, so sleep and retry at 0.  Otherwise,
  return success.

Simplify H5FD__vfd_swmr_header_deserialize() and
H5FD__vfd_swmr_index_deserialize().  Remove their retry loops.  Make
each return TRUE on success, FALSE on an error that may be transient,
and FAIL on an irrecoverable error.

In H5FD__vfd_swmr_header_deserialize(), do not check the size of the
shadow file with fstat(2), since the read(2) will fail if the file is
too small.  This saves us a system call.

Lightly consti-ify H5FD__vfd_swmr_index_deserialize() arguments.

In H5FD__vfd_swmr_load_hdr_and_idx():

    Consolidate all of the retry-looping.  Increase the initial
    retry delay from 1ns to 1/10s.  Delete the disused maximum-retry
    constants.

    Use #if 0 to disable some error-checking code that ought to be
    unnecessary under the new protocol.

    Don't memset() the header and index header, but make sure
    they're fully initialized with real content, instead.
2020-01-24 14:49:09 -06:00
Kimmy Mu
ff4da4f3f5 Merge pull request #2306 in HDFFV/hdf5 from ~KMU/hdf5:develop to develop
* commit 'a152ffafb322551033adb594112f53836f7eb240':
  fix assert fail
2020-01-24 12:31:45 -06:00
kmu
a152ffafb3 fix assert fail 2020-01-24 12:06:26 -06:00
kmu
fb6328b631 Merge branch 'develop' of https://git.hdfgroup.org/scm/~kmu/hdf5 into develop 2020-01-24 12:05:09 -06:00
Allen Byrne
5b92b4d362 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '590aaff33046df99a4d88ba59e4b461e060b36e4':
  Optimized the floating point comparisons a little bit.
  Fix for failing h5diff tests involving floating-point compares.
  Removed H5_DEC_ENUM
  Revert "Revert "Moved -Wunsuffixed-float-constants to the developer warnings.""
  Revert "Moved -Wunsuffixed-float-constants to the developer warnings."
  Moved -Wunsuffixed-float-constants to the developer warnings.
  Fixed a bug in testpar/t_cache.c concerning checking expected vs. actual cache entry reads and writes.
2020-01-24 09:57:39 -06:00
Dana Robinson
590aaff330 Merge pull request #2303 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '9475ee5d59e9ac916271a64c5372dfc28f709417':
  Optimized the floating point comparisons a little bit.
  Fix for failing h5diff tests involving floating-point compares.
2020-01-24 07:34:43 -06:00
Dana Robinson
51ed3d256e Cleaned up warnings in test/tid.c. 2020-01-23 21:19:24 -08:00
Dana Robinson
8b4d774eb9 Replaced my_isnan with C99 isnan in h5diff. 2020-01-23 20:12:16 -08:00
Dana Robinson
9475ee5d59 Optimized the floating point comparisons a little bit. 2020-01-23 19:12:24 -08:00
Dana Robinson
a85e4a75b2 Fix for failing h5diff tests involving floating-point compares. 2020-01-23 18:58:08 -08:00
Dana Robinson
3e22f567c4 Merge pull request #2302 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '601752e76e2e3f34c8bcd2b5b46cf73cad122cb2':
  Removed H5_DEC_ENUM
  Revert "Revert "Moved -Wunsuffixed-float-constants to the developer warnings.""
2020-01-23 17:23:35 -06:00
Dana Robinson
601752e76e Removed H5_DEC_ENUM 2020-01-23 14:43:59 -08:00
Dana Robinson
492d186a5c Revert "Revert "Moved -Wunsuffixed-float-constants to the developer warnings.""
This reverts commit 6486e06545.
2020-01-23 14:40:47 -08:00
Dana Robinson
9a97411a61 Merge pull request #2296 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '6486e06545bf637d46e18a787395542f4fca143a':
  Revert "Moved -Wunsuffixed-float-constants to the developer warnings."
  Moved -Wunsuffixed-float-constants to the developer warnings.
  Fixed a bug in testpar/t_cache.c concerning checking expected vs. actual cache entry reads and writes.
2020-01-23 16:35:52 -06:00
Dana Robinson
6486e06545 Revert "Moved -Wunsuffixed-float-constants to the developer warnings."
This reverts commit 12bc75c617.
2020-01-23 14:35:16 -08:00
Allen Byrne
bf89ea4711 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'f3a4e8164f99d733e6804acddfe1b3b0dfe63634':
  remove unnecessary stuff
  squash cast warning fix
2020-01-23 16:30:17 -06:00
Kimmy Mu
f3a4e8164f Merge pull request #2300 in HDFFV/hdf5 from ~KMU/hdf5:squashed_cast to develop
* commit 'af5c33afabdae2e39bb45eb1b3e9c8366da01145':
  remove unnecessary stuff
  squash cast warning fix
2020-01-23 16:21:06 -06:00
kmu
af5c33afab remove unnecessary stuff 2020-01-23 16:15:52 -06:00
Allen Byrne
3595067621 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'a9aaad9be317ed92150ccc6b4e8574e596447dba':
  Change tools debug macros to not use error stack
2020-01-23 15:29:29 -06:00
kmu
838d4ec56b squash cast warning fix 2020-01-23 15:12:00 -06:00
Dana Robinson
12bc75c617 Moved -Wunsuffixed-float-constants to the developer warnings. 2020-01-23 10:18:04 -08:00
Dana Robinson
0444f65140 Merge branch 'develop' into develop_minor 2020-01-23 10:17:40 -08:00
Allen Byrne
a9aaad9be3 Merge pull request #2299 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'ee1fa14066af158fdafafd6e051f7d5b5f79ba6a':
  Change tools debug macros to not use error stack
2020-01-23 12:12:16 -06:00
Allen Byrne
ee1fa14066 Change tools debug macros to not use error stack 2020-01-23 10:20:34 -06:00
Allen Byrne
670027bf81 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'edcba1ce2e11f80d20fcce8f4cfacae1308bf839':
  more cleanup
  Max Library "index" should be 7.
  not use hdf5 private header
  fix float type cmp warning
  fix float type cmp warning
  fix missing prototype warning
  fix uninitizlized warning
  change it back
  pick up missing piece
  fix unused related warnings
  removed unused parameter
  more fix and address comments
  remove unsed var,function,macro, etc
2020-01-23 09:08:47 -06:00
Larry Knox
edcba1ce2e Merge pull request #2297 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '30fa2606b45e789ba36f3193130cdea2c12b68a6':
  Max Library "index" should be 7.
2020-01-22 22:13:34 -06:00
Kimmy Mu
80935975c1 Merge pull request #2291 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/uninitialized to develop
* commit '2de0ce0d8ba2fb58fadefc5d718a3c0fedab25c8':
  fix uninitizlized warning
2020-01-22 21:34:17 -06:00
kmu
2de0ce0d8b merge and fix conflict 2020-01-22 21:30:36 -06:00
Kimmy Mu
d741405363 Merge pull request #2295 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/float to develop
* commit '9afaf94bef740f89958a1a8aae369d5f607845f4':
  not use hdf5 private header
  fix float type cmp warning
  fix float type cmp warning
2020-01-22 20:59:49 -06:00
Kimmy Mu
720ba8624a Merge pull request #2292 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/prototype to develop
* commit '9f80ffa1f1908975b3100814b2529bf779521e13':
  fix missing prototype warning
2020-01-22 20:58:42 -06:00
Kimmy Mu
8ce59829e4 Merge pull request #2094 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/unused to develop
* commit '145ef3ceee20c28a443bd11507c58858bea3f889':
  more cleanup
  change it back
  pick up missing piece
  fix unused related warnings
  removed unused parameter
  more fix and address comments
  remove unsed var,function,macro, etc
2020-01-22 19:46:53 -06:00
kmu
145ef3ceee more cleanup 2020-01-22 19:46:12 -06:00
Larry Knox
30fa2606b4 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2020-01-22 15:47:49 -06:00
Larry Knox
f3d1b4c6d2 Max Library "index" should be 7. 2020-01-22 15:46:34 -06:00
Dana Robinson
4e00ee2916 Fixed a bug in testpar/t_cache.c concerning checking expected
vs. actual cache entry reads and writes.
2020-01-22 12:31:56 -08:00
kmu
9afaf94bef not use hdf5 private header 2020-01-22 14:15:40 -06:00
kmu
9cc63d81fb fix float type cmp warning 2020-01-22 12:55:21 -06:00
kmu
04a2d20bba fix float type cmp warning 2020-01-22 12:55:01 -06:00
Allen Byrne
cf556437de Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'ad8e79beece8ddea71715d3fd2634af12d78ca29':
  Fixed yet another small issue in test/efc.c.
2020-01-22 10:01:02 -06:00
kmu
b62f37c3f9 Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2020-01-22 08:55:51 -06:00
Larry Knox
ad8e79beec Merge pull request #2290 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '24fe4b38da4786990cb95b117b45475404b05920':
  Fixed yet another small issue in test/efc.c.
2020-01-22 08:55:01 -06:00
Allen Byrne
904e7db518 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'a250af4916b0625bfda2ca259d58d2ca41ed0a88':
  Remove irrelevant sentence from comment.
  Remove duplicate lines noted on forum by Eric Bavier
  Add v111 version for H5O functions to enable version1 default for HDF5 1.8-1.10 and version 3 default for HDF5 1.12.  Version 2 functions are available (deprecated) but will not be the default for any version.
2020-01-22 08:48:42 -06:00
Larry Knox
a250af4916 Merge pull request #2289 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'a92cfed71e0da0ff61af2550640e38bf6d415fee':
  Remove irrelevant sentence from comment.
  Remove duplicate lines noted on forum by Eric Bavier
  Add v111 version for H5O functions to enable version1 default for HDF5 1.8-1.10 and version 3 default for HDF5 1.12.  Version 2 functions are available (deprecated) but will not be the default for any version.
2020-01-22 08:34:30 -06:00
Larry Knox
a92cfed71e Remove irrelevant sentence from comment. 2020-01-22 08:30:14 -06:00
Dana Robinson
24fe4b38da Fixed yet another small issue in test/efc.c. 2020-01-21 15:51:46 -08:00
Larry Knox
793eb6b219 Remove duplicate lines noted on forum by Eric Bavier 2020-01-21 15:42:37 -06:00
Larry Knox
30ccab0fb3 Add v111 version for H5O functions to enable version1 default for HDF5
1.8-1.10 and version 3 default for HDF5 1.12.  Version 2 functions are
available (deprecated) but will not be the default for any version.
2020-01-21 15:08:17 -06:00
kmu
9f80ffa1f1 fix missing prototype warning 2020-01-21 12:30:40 -06:00
kmu
408b9b1f3b fix uninitizlized warning 2020-01-21 12:29:48 -06:00
Allen Byrne
b826ae3cdd Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'a63f22e27cad74c9bb98ca2b4d2a5fd118ef3571':
  Only 2 versions of H5O_info_t and H5O_iterate_t.
  PATH_MAX fix in efc test for Windows.
  H5vers.txt has versions v10 that should be v110 and some missing v110 entries.
2020-01-21 09:22:49 -06:00
kmu
9be5b2842e merge and fix 2020-01-20 21:11:32 -06:00
kmu
a95b5b1e05 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2020-01-20 20:47:48 -06:00
Larry Knox
a63f22e27c Merge pull request #2286 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '59f19282b34b5dcc29a2921fdbd475833d4f6b92':
  Only 2 versions of H5O_info_t and H5O_iterate_t.
2020-01-20 09:20:36 -06:00
Larry Knox
59f19282b3 Only 2 versions of H5O_info_t and H5O_iterate_t. 2020-01-20 09:16:19 -06:00
Larry Knox
b2831f9e71 Merge pull request #2280 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '9e610d835b74f01320fdc777086c88ef40b0b0a2':
  H5vers.txt has versions v10 that should be v110 and some missing v110 entries.
2020-01-20 08:18:37 -06:00
Dana Robinson
7403cba552 Merge pull request #2285 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '2f606a7c62c67d09835f004bad11fff6a76fc918':
  PATH_MAX fix in efc test for Windows.
2020-01-19 23:31:41 -06:00
Dana Robinson
2f606a7c62 PATH_MAX fix in efc test for Windows. 2020-01-19 18:51:07 -08:00
kmu
628d267162 merge and fix conflict 2020-01-19 08:09:44 -06:00
Allen Byrne
3e9980d20d Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '66a94df13b3801547523f1ea90bc84fe2ee6824b':
  Removed UIUC from copyright, added helpful comment.
  Updated MANIFEST
  Added a config file for ARM (Tested on a Raspberry Pi 3B+ w/ gcc 6).
  Tidying from code review.
  Fixed stack and frame size warnings. Not complete, but fixes most of the easier cases.
2020-01-19 07:45:15 -06:00
Larry Knox
9e610d835b H5vers.txt has versions v10 that should be v110 and some missing v110
entries.
2020-01-18 22:59:29 -06:00
Dana Robinson
66a94df13b Merge pull request #2269 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:stack_size_warnings to develop
* commit '44739ccd4715cc9e15595575700e945341fcdbcc':
  Tidying from code review.
  Fixed stack and frame size warnings. Not complete, but fixes most of the easier cases.
2020-01-18 13:15:39 -06:00
Dana Robinson
3ef5b9e977 Merge pull request #2273 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:pi_config to develop
* commit 'c7292efc1879cdbbbeae9503fbaf170bd19c8383':
  Removed UIUC from copyright, added helpful comment.
  Updated MANIFEST
  Added a config file for ARM (Tested on a Raspberry Pi 3B+ w/ gcc 6).
2020-01-18 11:09:44 -06:00
Dana Robinson
c7292efc18 Removed UIUC from copyright, added helpful comment. 2020-01-17 16:20:39 -08:00
David Young
33ea1d2b06 Add my newest commentary. Finally reached page 14! 2020-01-17 17:25:38 -06:00
Allen Byrne
23656c7877 Note for common warnings files 2020-01-17 13:30:20 -06:00
Allen Byrne
cf84882b3c Create common build system files for warnings 2020-01-17 13:14:06 -06:00
Allen Byrne
5fadf221ba Merge pull request #2274 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'db65d57541dd766e9912fb0698210cd76107d328':
  Correct standalone function attributes
  Standalone should not use import/export attributes
2020-01-17 13:11:21 -06:00
kmu
385ac20380 Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2020-01-17 12:51:45 -06:00
kmu
6e62be3456 Merge branch 'develop' of https://git.hdfgroup.org/scm/~kmu/hdf5 into develop 2020-01-17 12:51:12 -06:00
Allen Byrne
db65d57541 Correct standalone function attributes 2020-01-17 12:15:16 -06:00
Allen Byrne
1643f591d6 Standalone should not use import/export attributes 2020-01-17 10:08:10 -06:00
Dana Robinson
b51ae5f35e Updated MANIFEST 2020-01-17 05:00:23 -08:00
Dana Robinson
b5eb454396 Added a config file for ARM (Tested on a Raspberry Pi 3B+
w/ gcc 6).
2020-01-17 03:06:11 -08:00
Dana Robinson
44739ccd47 Merge branch 'develop' into stack_size_warnings 2020-01-16 16:32:33 -08:00
David Young
2754bb2b76 Change md_pages_reserved and pb_expansion_threshold parameters to uint32_t from
int32_t.
2020-01-16 16:51:08 -06:00
Dana Robinson
55670c88cf Merge pull request #2272 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:tr_squash to develop
* commit 'a92c735c9b57049e8c4037d3490f7e10f8eef4d6':
  Squashed commit of the token_refactoring branch:
2020-01-16 16:11:46 -06:00
Dana Robinson
a92c735c9b Squashed commit of the token_refactoring branch: 2020-01-16 13:29:34 -08:00
kmu
7e93acd94f Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2020-01-16 10:42:24 -06:00
Dana Robinson
46c3bc6b98 Tidying from code review. 2020-01-15 16:43:53 -08:00
Jerome Soumagne
024f7ba092 Merge pull request #2237 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:HDFFV-10992-fix to develop
* commit 'a7648879d729c1b75bd32f3a151831e9cbfbe31c':
  Add test for reference shutdown issue
  H5R: set app ref when incrementing ref_count on location held by reference (fix HDFFV-10992)
2020-01-15 17:27:48 -06:00
Jerome Soumagne
a7648879d7 Add test for reference shutdown issue 2020-01-15 17:23:33 -06:00
Allen Byrne
eaa8ab2774 Merge pull request #2270 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f73103745e9b9165e9d399ddb5b9991d7fb2a9e5':
  HDFFV-11001 fix if block
  HDFFV-11001 need to qualify all by parallel or serial types
  HDDFV-11001 add note
  HDFFV-11001 Add fine control over testing
  Adjust regex for warnings
  Update tools hid_t declarations with H5I_INVALID_HID
2020-01-15 13:57:45 -06:00
Allen Byrne
f73103745e HDFFV-11001 fix if block 2020-01-15 12:40:18 -06:00
Allen Byrne
7022a3380c HDFFV-11001 need to qualify all by parallel or serial types 2020-01-15 12:28:53 -06:00
Allen Byrne
26c65e106a HDDFV-11001 add note 2020-01-15 11:45:18 -06:00
Allen Byrne
a0ae5e9b89 HDFFV-11001 Add fine control over testing 2020-01-15 11:38:06 -06:00
Dana Robinson
1f8f6f019c Fixed stack and frame size warnings. Not complete, but fixes most of
the easier cases.
2020-01-15 09:32:01 -08:00
Allen Byrne
4077d99645 Adjust regex for warnings 2020-01-14 11:44:02 -06:00
kmu
d46ea2d08a merge and fix conflicts 2020-01-14 11:28:27 -06:00
kmu
71b817038d Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2020-01-14 11:25:49 -06:00
Allen Byrne
341600b4a6 Update tools hid_t declarations with H5I_INVALID_HID 2020-01-13 17:10:09 -06:00
Allen Byrne
c3c60dc7b5 Merge pull request #2263 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '06cff24b8de3d0cb60f89b2c200a98583dd136de':
  Ignore ZLIB warnings
2020-01-13 16:54:02 -06:00
Allen Byrne
06cff24b8d Ignore ZLIB warnings 2020-01-13 16:39:47 -06:00
Allen Byrne
fb7f1b3f0d Merge pull request #2256 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '1385457eb2874b75fd7b9fa0c470e9e4225a104e':
  Added JIRA note
  io_timer.c uses a parallel lib function
  Fix standalone compile issues
2020-01-13 16:02:02 -06:00
kmu
156baee371 change it back 2020-01-13 14:48:22 -06:00
kmu
03c5bcbea7 pick up missing piece 2020-01-13 13:29:05 -06:00
kmu
9712fad601 fix unused related warnings 2020-01-13 13:20:19 -06:00
David Young
fe7965d38f Don't use the bash-ism [[ ]]. Use the [ ], which is standard and
perfectly adequate in this case.
2020-01-13 11:22:34 -06:00
Allen Byrne
1385457eb2 Added JIRA note 2020-01-13 09:19:04 -06:00
David Young
16ca8f2c95 Prepare a bit to let the shadow index "float": drastically
simplify H5FD__vfd_swmr_index_deserialize(): reuse
h5_retry_init()/h5_retry_next() for retry loops.

Don't wait for the fstat(2) to read the correct size, because the
read(2) will return short if the file isn't long enough.  (This change
should save at least one system call, always.)

Leave a bunch of comments about the changes that I will have to make so
that the shadow index will float.

NFCI: do not cast H5MM_malloc() return values, this is not C++.
2020-01-10 14:52:19 -06:00
David Young
5fb463bb2e Now that we're buffering the removed pages to process at once,
it's not necessary to iterate over pass numbers any more,
so just use two loops.

While I'm in here, change a comment or formatting here and there.
2020-01-10 14:41:12 -06:00
David Young
7a0a2a0b5d H5F_vfd_swmr_reader_end_of_tick(),
compares both new and old shadow indices and calls H5PB_remove_entry()
on each entry that was in the old index but is not in the new.

Ever since H5PB_remove_entry() started removing shadow index
entries, it has been possible for H5F_vfd_swmr_reader_end_of_tick()
to walk past the end of the new shadow index or even to skip entries
in the new index.  Sometimes an assertion failed when that happened.

I have restructured the code in H5F_vfd_swmr_reader_end_of_tick()
so that it compares the old and new indices, gathering a list of
removed pages, in one step.  In the next step, it processes the
list of removed pages, calling H5PB_remove_entry() on each page.
In the step after that, it notifies the metadata cache of each
removed page.  This fixes the bug I described, above.
2020-01-10 14:22:06 -06:00
David Young
cdbdc33c5a Simplify nested logic in H5FD_vfd_swmr_get_tick_and_idx().
assert() our expectation that either a NULL index was passed, or a
pointer to the index length was passed in, too.
2020-01-10 12:00:22 -06:00
David Young
671f7552ab Correct some irregular indentation, delete an unused line, split an
`if ((p = allocate(...)) == NULL) { }` into two statements, `p =
allocate(...); if (p == NULL) { }`, put a semicolon at the end of an
HGOTO_ERROR(), remove comments /* end if */, /* end for */ after closing
curly braces.
2020-01-10 12:00:22 -06:00
David Young
f19b6c4d48 Make H5FD__vfd_swmr_load_hdr_and_idx() simpler and faster: copy a
pointer to the metadata index instead of copying the index itself.  Use
struct assignment instead of copying individual struct members.  Lower a
staircase.
2020-01-10 12:00:22 -06:00
David Young
c4e19fa84b After quick-sorting the index, go ahead and assert that there are not
duplicate entries for the same HDF5 page offset.  There's an O(n) cost
to that, but it should be no more than the O(n log n) cost of the
quicksort.
2020-01-10 12:00:22 -06:00
David Young
d288a7b93c In H5F__vfd_swmr_writer__create_index(), use calloc(3) instead of
malloc(3) and a for-loop that zeroes the index.
2020-01-10 12:00:22 -06:00
David Young
8d2217d295 In H5PB_remove_entry(), do not call vfd_swmr_mdf_idx_entry_remove(),
because the H5PB__evict_entry() call should have already done that.
Instead, just assert() that the index entry is not present.
2020-01-10 12:00:22 -06:00
David Young
790eccbc20 In vfd_swmr_mdf_idx_entry_remove(), give some local variables less wordy
names.  While I am here, do not copy the last element of the index over
the element that's being deleted, because in the very next step I'm
shifting all elements over by one.
2020-01-10 12:00:22 -06:00
David Young
f4d8894158 Straggler from previous: provide uint64_decode(). 2020-01-10 12:00:22 -06:00
David Young
3fd9dc7b83 Clean up the code a bit: remove some unnecessary casts and such. NFCI. 2020-01-10 12:00:22 -06:00
David Young
3a911e2b39 Change the blah_blah_blah_md_header index_length member from
`uint64_t` to `size_t` because it describes the size of an in-core
structure as well as an on-disk one, and `size_t` is wide enough
to store the size of any in-core structure, while `uint64_t` may
be much too wide.  Check that `index_length` is no more than SIZE_MAX
after we read it.
2020-01-10 12:00:22 -06:00
David Young
1df69ed3a0 Delete unused constants. 2020-01-10 12:00:22 -06:00
David Young
5ae8d135a5 Be brief, replace (H5FS_section_info_t *)node with &node->sect_info. 2020-01-10 12:00:22 -06:00
David Young
f8c5797bd6 Provide a convenience constant, H5_RETRY_ONE_SECOND. 2020-01-10 12:00:22 -06:00
David Young
62e1340bdd Disable C++ compatibility warnings to follow develop on the main fork. 2020-01-10 12:00:22 -06:00
Allen Byrne
1e70eb845a Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'd14b96e95976967c03c7623f6800506b89292656':
  Modify external_env.c to prevent deleting test file of external.c. Fix for HDFFV-10941.
2020-01-10 08:21:48 -06:00
Larry Knox
d14b96e959 Merge pull request #2248 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '278980a654061b969a5b39b72fc3da6327f8aabf':
  Modify external_env.c to prevent deleting test file of external.c. Fix for HDFFV-10941.
2020-01-10 07:40:52 -06:00
Allen Byrne
2600c358a5 io_timer.c uses a parallel lib function 2020-01-10 06:49:29 -06:00
Jerome Soumagne
9c398c804b H5R: set app ref when incrementing ref_count on location held by reference
(fix HDFFV-10992)
2020-01-09 19:05:31 -06:00
Larry Knox
278980a654 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2020-01-09 16:32:04 -06:00
Larry Knox
a7c5c5715a Modify external_env.c to prevent deleting test file of external.c.
Fix for HDFFV-10941.
2020-01-09 16:29:24 -06:00
Allen Byrne
9b82f8c0ac Fix standalone compile issues 2020-01-09 16:00:13 -06:00
Allen Byrne
99fa2dbec3 Merge pull request #2239 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '21f3d628d702bfd6c9cbb4b90f18842023ea40b3':
  Separate result variables for the function performed
  Check for actual content before using file
  HDFFV-10995 - add missing import
  HDFFV-10995 - need to add import
  HDFFV-10995 - Update all time instances
  HDFFV-10995 adjust testing to tolerate non-US locale
2020-01-09 15:38:30 -06:00
Kimmy Mu
8d8b9f8ae8 Merge pull request #2244 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/intel_warnings to develop
* commit '6b1b4b3c0bdd803835efe8c531965bb9900a5363':
  fix test assert fail error
2020-01-09 15:31:19 -06:00
Allen Byrne
21f3d628d7 Separate result variables for the function performed 2020-01-09 15:18:55 -06:00
Allen Byrne
b97daea891 Check for actual content before using file 2020-01-09 13:30:00 -06:00
kmu
6b1b4b3c0b fix test assert fail error 2020-01-09 12:06:45 -06:00
David Young
c09a9e90e1 Update punchlist a bit with John: add some items, update entries that are now
complete.
2020-01-09 11:41:02 -06:00
David Young
0b11cfbf50 Add a new version of the RFC with some commentary by me. 2020-01-08 17:27:43 -06:00
Allen Byrne
d90ef60b32 HDFFV-10995 - add missing import 2020-01-08 14:37:31 -06:00
Allen Byrne
5a6f379420 HDFFV-10995 - need to add import 2020-01-08 13:14:58 -06:00
Allen Byrne
b73c0aeaa9 HDFFV-10995 - Update all time instances 2020-01-08 12:48:48 -06:00
Allen Byrne
59ab02a6c5 HDFFV-10995 adjust testing to tolerate non-US locale 2020-01-08 12:44:48 -06:00
Kimmy Mu
c3ae64a875 Merge pull request #2234 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/intel_warnings to develop
* commit '30ac64d83aff5e022d51a17fd6c1d72903ae4f02':
  add new type support
2020-01-07 08:21:25 -06:00
kmu
30ac64d83a add new type support 2020-01-06 20:15:58 -06:00
David Young
0ec3340692 Makes some updates: in-progress, needs unit testing. Insert some whitespace
where it makes things more readable.
2020-01-06 15:48:34 -06:00
kmu
e938f4407e Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2020-01-06 13:04:23 -06:00
Kimmy Mu
127f07d64a Merge pull request #2071 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/intel_warnings to develop
* commit '0a2bb11b248df6841daabca3970df5d8504adfc7':
  address problems from comments
  fix and address comments
  change according to previous comments
  add missing piece
  remove unnecessary check macro
  fix intel compile warnings
  Revert "fix warnings from Intel compiler"
  Revert "fix warnings and some text alignment"
  Revert "let hdf5 pick up the right compiler in Intel environment"
  Revert "fix issues from previous PR comments"
  Revert "using a different MACRO"
  using a different MACRO
  fix issues from previous PR comments
  let hdf5 pick up the right compiler in Intel environment
  fix warnings and some text alignment
  fix warnings from Intel compiler
2020-01-06 12:17:10 -06:00
Quincey Koziol
4f98de52d6 Merge pull request #2228 in HDFFV/hdf5 from minor_improvements_from_token_refactor to develop
* commit '0225e6d59698c9a720177766794619c7ad273f4a':
  Small changes from the token_refactoring branch, to reduce the delta to develop
2020-01-04 09:31:30 -06:00
Quincey Koziol
0225e6d596 Small changes from the token_refactoring branch, to reduce the delta to develop 2020-01-03 22:16:38 -06:00
Jordan Henderson
99e990e1ee Merge pull request #2226 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit 'ccf177344ae2d4b03802adecc08a6cc956a7dac5':
  Fix some places where H5P_DEFAULT gets passed down to a VOL connector
2020-01-03 17:29:30 -06:00
Jordan Henderson
ccf177344a Fix some places where H5P_DEFAULT gets passed down to a VOL connector 2020-01-03 12:43:51 -06:00
Dana Robinson
041b14c876 Merge pull request #2221 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '1a50056dafc8e22facda675acb43a71705fdd15c':
  Changed -Wformat-truncation to level 2 in CMake w/ gcc.
  Changed -Wformat-truncation's level from 2 to 1.
2020-01-02 11:42:23 -06:00
Dana Robinson
1a50056daf Changed -Wformat-truncation to level 2 in CMake w/ gcc. 2020-01-01 10:18:56 -08:00
Dana Robinson
4fd5a3e00b Changed -Wformat-truncation's level from 2 to 1. 2020-01-01 10:12:52 -08:00
Jordan Henderson
1e0a2d37ae Merge pull request #2216 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '9c9b9b1c7a49529da6f43bb4516669c9ff79f700':
  Fix issue in h5dump where reference objects weren't being destroyed
2019-12-31 13:14:54 -06:00
Jordan Henderson
9c9b9b1c7a Fix issue in h5dump where reference objects weren't being destroyed 2019-12-31 11:33:27 -06:00
David Young
12ea13f745 Mention the current situation concerning raw-data flushing. 2019-12-31 09:58:19 -06:00
Jordan Henderson
5681bede70 Merge pull request #2210 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '1795aa660afe47adb28436b24eac64fa77f183fd':
  Clean up tools warnings introduced by H5TOOLS_ERR_INIT macro
  Refactor tools library error handling macros
2019-12-30 18:10:44 -06:00
Jordan Henderson
1795aa660a Clean up tools warnings introduced by H5TOOLS_ERR_INIT macro 2019-12-30 18:02:06 -06:00
David Young
68b012f017 Mention that I fixed the VFD SWMR tests. 2019-12-30 16:59:15 -06:00
Jordan Henderson
2cbf31cb3a Refactor tools library error handling macros 2019-12-28 14:08:04 -06:00
Allen Byrne
34a68acc93 Merge pull request #2185 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '0350f4d000abf7051c1d03810d45c007e66734da':
  Add MPI libs to standalone perf
2019-12-24 07:21:55 -06:00
Allen Byrne
0350f4d000 Add MPI libs to standalone perf 2019-12-22 12:17:20 -06:00
Allen Byrne
9d9044e0e9 Merge pull request #2178 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b6bc749eac68335004ad80edc0f4e28322631d15':
  Grep needs to search error file
  Correct flaws in test scripts and files
  grep for failure text in error stack
  Add list to function arg
  Test files for new ref types
  h5diff test script files
  Add ref changes to test script
2019-12-22 11:55:43 -06:00
Allen Byrne
b6bc749eac Grep needs to search error file 2019-12-22 10:35:05 -06:00
Allen Byrne
2fa314d8b3 Correct flaws in test scripts and files 2019-12-22 10:05:06 -06:00
Allen Byrne
a2604b1e15 grep for failure text in error stack 2019-12-21 18:04:45 -06:00
Allen Byrne
b81802b71e Add list to function arg 2019-12-21 17:36:55 -06:00
Allen Byrne
6d28cbe853 Test files for new ref types 2019-12-21 17:35:13 -06:00
Allen Byrne
9ff8fe6477 h5diff test script files 2019-12-21 14:45:12 -06:00
Allen Byrne
4be4a50fe0 Add ref changes to test script 2019-12-21 14:37:04 -06:00
Allen Byrne
f679b7495d Merge pull request #2173 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '576e713924b1802a64ae2f6655d2389d70fadfd1':
  Add new h5diff files
  Fix compile statement order
  HDFFV-10976,-10980 Init obj_type before calling H5Rget_obj_type3
  Add unknown define for h5dump ref objects
  Standalone doesn't use h5test implementation.
  HDFFV-10980 - h5diff uses new ref APIs
2019-12-21 07:49:22 -06:00
Allen Byrne
576e713924 Add new h5diff files 2019-12-21 07:48:23 -06:00
Quincey Koziol
9016f66248 Merge pull request #2167 in HDFFV/hdf5 from refactor_optional_vol_callback_02 to develop
* commit 'c2ca33dcfa340af603399036dfddad0ebbd72f6f':
  Remove unnecessary H5CX call
  Refactor H5Dvlen_get_buf_size to use optional dataset operation, with generic fallback for VOL connectors that don't implement operation
  Cleanups from PR reviews
  Refactor all the 'H5VL_*_optional' callbacks to move the type of operation out of the va_list, so it's at least possible for another connector to know what the operation is and decide whether to implement it or not.
2019-12-20 22:54:04 -06:00
Quincey Koziol
c2ca33dcfa Remove unnecessary H5CX call 2019-12-20 22:49:48 -06:00
Quincey Koziol
cf5cd3b639 Refactor H5Dvlen_get_buf_size to use optional dataset operation, with generic fallback for VOL connectors that don't implement operation 2019-12-20 22:41:00 -06:00
Allen Byrne
de0f667076 Fix compile statement order 2019-12-20 14:18:01 -06:00
Allen Byrne
23f813026f HDFFV-10976,-10980 Init obj_type before calling H5Rget_obj_type3 2019-12-20 13:23:48 -06:00
Quincey Koziol
2c2c46d4ea Cleanups from PR reviews 2019-12-20 11:22:31 -06:00
Allen Byrne
d7c38eeee9 Add unknown define for h5dump ref objects 2019-12-20 11:08:37 -06:00
David Young
0b5dfad751 Don't cast a malloc(3), this is C. Put curly braces around a multiline if
statement.  Delete an unnecessary backslash line continuation.  NFCI.
2019-12-20 09:53:29 -06:00
Allen Byrne
ca1b672ced Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '7e0e9f83dc45a4ec1212bc96f6584d221073af39':
  Standalone doesn't use h5test lib implementation.
2019-12-20 09:53:11 -06:00
David Young
e024b2737c Assert that a shadow image is page-aligned since we assume that it is when we
compute its base address and free it.
2019-12-20 09:52:09 -06:00
David Young
37fb4bda71 Delete unnecessary whitespace including invisible whitespace at the end of
lines.  Wrap a couple of lines.  NFCI.
2019-12-20 09:50:53 -06:00
Allen Byrne
7e0e9f83dc Merge pull request #2172 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '50425ad4395b58ece517ab3a442d0dd703afa687':
  Standalone doesn't use h5test lib implementation.
2019-12-20 09:50:36 -06:00
Allen Byrne
50425ad439 Standalone doesn't use h5test lib implementation. 2019-12-20 09:48:09 -06:00
Allen Byrne
a057a82a69 Standalone doesn't use h5test implementation. 2019-12-20 09:28:02 -06:00
Allen Byrne
bc88c82308 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b55a584fd5b3aac6f2514fba41a6182030b497ae':
  In portable shell scripts (using #!/bin/sh) we have to use single square brackets, [ ], instead of the bash-ism double square brackets, [[ ]].
  Make this script work on hosts where PERL is not installed at /usr/bin/perl.
2019-12-20 09:02:51 -06:00
Quincey Koziol
58cf795321 Refactor all the 'H5VL_*_optional' callbacks to move the type of operation out
of the va_list, so it's at least possible for another connector to know what
the operation is and decide whether to implement it or not.

Added a new VOL sub-class called "introspect" where callbacks that report
information about the connector or container can be placed.  Added an
'opt_query' callback to this sub-class, for a connector to report back
to the library whether a particular optional callback operation is supported.
Also added a 'get_conn_cls' introspection callback, to retrieve the H5VL_class_t
of a connector (either the "current" connector, H5VL_GET_CONN_LVL_CURR, or
the terminal connector, H5VL_GET_CONN_LVL_TERM).

Moved the "post open" operation from a file 'specific' operation to a file
'optional' operation, now that it's possible to detect (with the 'opt_query'
introspection callback) whether a VOL connector implements an optional
operation, without just returning an error.

Added new internal VOL helper routines: H5VL_object_is_native, to determine
if an object is in (or is a) native file, and H5VL_file_is_same, to determine
if two objects are in (or are) the same terminal VOL connector's container.
(And moved the special handling for FILE_IS_EQUAL operation out of internal VOL
callback routine into H5VL_file_is_same)

Made new dataset 'get' operation for H5Dvlen_get_buf_size, aligning it better
with other 'get' operations in API.

Fixed several issues with pass-through connectors, which are now passing the
'make check-passthrough-vol' tests again.

A bunch of warning and style cleanups as well.
2019-12-19 22:41:37 -06:00
David Young
b55a584fd5 Merge pull request #2161 in HDFFV/hdf5 from ~DYOUNG/netbsd:develop to develop
* commit 'ec4418a75716b7f2ce53e627de28d139b281b545':
  In portable shell scripts (using #!/bin/sh) we have to use single square brackets, [ ], instead of the bash-ism double square brackets, [[ ]].
  Make this script work on hosts where PERL is not installed at /usr/bin/perl.
2019-12-19 17:24:52 -06:00
Allen Byrne
628c63f125 HDFFV-10980 - h5diff uses new ref APIs 2019-12-19 16:29:43 -06:00
Allen Byrne
63fdb78685 Merge pull request #2162 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '74d37c880f1309900b45bd9f4813dca225d2d3c4':
  Add missing note
2019-12-19 16:25:55 -06:00
Allen Byrne
74d37c880f Add missing note 2019-12-19 16:12:05 -06:00
David Young
ec4418a757 In portable shell scripts (using #!/bin/sh) we have to use single square
brackets, [ ], instead of the bash-ism double square brackets, [[ ]].
2019-12-19 15:06:57 -06:00
David Young
d11b347aa7 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '817235bb60e1f79c4b22b4a6116a1594aa75b81d': (145 commits)
  Remove const
  Fix compile error - declaration after executable statement
  Adjust cache.c only variables.
  Fix include to correct memory calls - big-endian issue.
  Update h5debug to retrieve file pointer through VOL framework
  Minor whitespace
  Remove duplicate instance
  Revert and move declaration
  Correct struct access
  Fix duplicate and varname
  Fix compile and test issues from DT
  Modify H5VL initialization routines to initialize all VOL-managed object types.  Modify H5VLwrap_register() to reject non-VOL-managed object types.  Also fix overisights in h5trace.c from previous changes.
  Add release note for sanitizer support
  HDFFV-10979 cleanup globals
  TRILABS-135 Add clang analyzers
  HDFFV-10979 fix global name clash
  Fix issues found with ONLY_SHARED_LIBS option
  Fix 2010 compile issues
  Change from using H5Dcreate to H5Dcreate2
  Latest date first in RELEASE.txt
  ...
2019-12-19 14:55:49 -06:00
David Young
07e6f39f4b Change the unwieldy name vfd_swmr_idx_entry_defer_free() to
shadow_image_defer_free(), which is also a better description of what the
routine does.
2019-12-19 14:14:13 -06:00
David Young
dc15a6987e Use the "tail queue" from queue(3) for the delayed free list of shadow images.
Delete the little-used free-list length, dl_len, and just count up the list
entries when diagnostic code needs the length.

Extract the code for deferring shadow-image free into a new subroutine,
`vfd_swmr_idx_entry_defer_free()`.

Rename type `deferred_free_head_t` as `deferred_free_queue_t`.

Remove the disused H5F__LL_{REMOVE,PREPEND} macros.

Add some diagnostic code and #if 0'd assertions.

Change `qsort(ptr, n, sizeof(type), cmp)` to
`qsort(ptr, n, sizeof(*ptr), cmp)`.

Use a `continue` statement to lower a staircase in
H5F_update_vfd_swmr_metadata_file().

Add vfd_swmr_mdf_idx_entry_remove() to delete a shadow index entry and add the
image at that entry to a deferred-free list.  Call it whenever a page is
evicted.

Update the comment in H5PB_remove_entry() that asks if we need to remove shadow
index entries: now we *do* remove them.  Remove shadow index entries in
H5PB__evict_entry().  Also mention in the comment that the index-entry removal
performed by H5PB__evict_entry() ought to be sufficient.
2019-12-19 13:43:54 -06:00
David Young
10a7a47415 Remove unnecessary casts. Use the ptr = calloc(n, sizeof(*ptr)) idiom for
specifying the item size to be allocated.  NFCI.
2019-12-19 11:21:57 -06:00
David Young
13386f3c91 Prepare for some changes I'm committing shortly: pass an H5F_shared_t * as
the first argument to H5PB__evict_entry() instead of an `H5PB_t *`.
2019-12-19 11:08:33 -06:00
David Young
9a66eb1377 Make the first parameter of H5PB_remove_entry() non-const to support some
changes I will commit shortly.
2019-12-19 11:03:22 -06:00
Allen Byrne
817235bb60 Merge pull request #2153 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ac87f12afe73fa22dcf31d9aeba05a259e215765':
  Remove const
  Fix compile error - declaration after executable statement
  Adjust cache.c only variables.
  Fix include to correct memory calls - big-endian issue.
2019-12-19 10:23:37 -06:00
Allen Byrne
ac87f12afe Remove const 2019-12-18 16:10:12 -06:00
David Young
10353ef87d There's no need to name parameters in a function declaration, and it makes them
very long, so just delete the parameters.
2019-12-18 15:53:34 -06:00
David Young
f0a01e6915 Allocate regionsin the shadow file of page size or greater size with page
alignment.  The VFD SWMR code had always assumed that the regions were aligned
to page size.  It would blithely round the start addresses of regions to the
next lower page.  When the region was freed, the freespace manager (H5MV) would
suffer an assertion or corruption.
2019-12-18 15:50:29 -06:00
David Young
3455c4031e Tell the tick number in diagnostic messages. 2019-12-18 15:38:09 -06:00
David Young
2c5c110378 Align the shadow images on page boundaries so that they don't overlap. This
seems to be the programmer's original intention.  It sure makes debugging
easier to have non-overlapping shadow images.
2019-12-18 15:29:48 -06:00
David Young
941daa6b07 In the faked-up shadow-index entries, assign independent page numbers in the
HDF5 file and in the shadow file.  I had added assertions that the page numbers
were unique, and this caused those assertions to fail.  I don't know if I'll
keep the assertions, but this is an inexpensive change that makes the test more
realistic.
2019-12-18 15:26:40 -06:00
David Young
1a55342b3e Allocate and zero using calloc(3) instead of malloc(3)+memset(3). 2019-12-18 15:25:11 -06:00
David Young
2c0dddf263 Follow the naming convention enforced by FUNC_ENTER_/FUNC_EXIT_* macros (?)
where static routines have to have double underscores (__) in their name or
else the library asserts false.
2019-12-18 15:09:13 -06:00
Allen Byrne
27596d1157 Fix compile error - declaration after executable statement 2019-12-18 15:08:40 -06:00
Allen Byrne
b89d428087 Adjust cache.c only variables. 2019-12-18 14:29:46 -06:00
Allen Byrne
527105012b Fix include to correct memory calls - big-endian issue. 2019-12-18 12:44:27 -06:00
Quincey Koziol
134a31c4a9 Merge pull request #2151 in HDFFV/hdf5 from h5debug_vol_fix to develop
* commit 'b8b6659debc3b0592ef4f0fe9db60c3bec8619ad':
  Update h5debug to retrieve file pointer through VOL framework
2019-12-17 14:23:32 -06:00
Quincey Koziol
b8b6659deb Update h5debug to retrieve file pointer through VOL framework 2019-12-17 13:11:39 -06:00
Allen Byrne
9facd2347a Merge pull request #2146 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ae5385b7ae0a273fc4940ae1f145cf4e73807ff5':
  Minor whitespace
  Remove duplicate instance
2019-12-17 11:07:10 -06:00
Allen Byrne
ae5385b7ae Minor whitespace 2019-12-17 09:07:21 -06:00
Allen Byrne
7234dce255 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'fb3cc3767b182d2190f5d2ba839f588e1c139bc8':
  Fixed bugs in pread/pwrite I/O in VFDs.
2019-12-17 08:54:10 -06:00
Dana Robinson
fb3cc3767b Merge pull request #2109 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:pread_bugs to develop
* commit '99f85cbf15a637768c8df977ddc5eebe7683a60d':
  Fixed bugs in pread/pwrite I/O in VFDs.
2019-12-16 21:18:49 -06:00
Allen Byrne
ba2f6a74d3 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '9ee8c599d7b8cd495efb28cd9f068192712ae086':
  More fixes for previous committed PR #2079 dated Dec 5 2019. (1) H5O_dtype_ver_bounds[] for V112 should be H5O_DTYPE_VRESION_4 (2) The tests for the new reference types should work for V112 and beyond
2019-12-16 15:52:21 -06:00
Vailin Choi
9ee8c599d7 Merge pull request #2086 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/reference_ver_hyperslab_ver to develop
* commit 'b42325e8f5ff3b6bfa2ce446af5b6dc5cbbff666':
  More fixes for previous committed PR #2079 dated Dec 5 2019. (1) H5O_dtype_ver_bounds[] for V112 should be H5O_DTYPE_VRESION_4 (2) The tests for the new reference types should work for V112 and beyond
2019-12-16 13:49:16 -06:00
Allen Byrne
a966640208 Remove duplicate instance 2019-12-16 09:47:10 -06:00
Allen Byrne
568e30ef0d Merge pull request #2133 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'dc2cbdaf6720b6c3af72846989dfdbec4f207208':
  Revert and move declaration
  Correct struct access
  Fix duplicate and varname
  Fix compile and test issues from DT
  Add release note for sanitizer support
  HDFFV-10979 cleanup globals
  TRILABS-135 Add clang analyzers
2019-12-13 12:47:10 -06:00
Allen Byrne
dc2cbdaf67 Revert and move declaration 2019-12-13 12:28:18 -06:00
Allen Byrne
4ab00a3d1d Correct struct access 2019-12-13 11:59:20 -06:00
Allen Byrne
f57907d22c Fix duplicate and varname 2019-12-13 11:52:38 -06:00
Allen Byrne
e3c75f6cf7 Fix compile and test issues from DT 2019-12-13 11:36:09 -06:00
David Young
2d4e4e217c Delete a macro that's not used. 2019-12-13 10:34:03 -06:00
David Young
17d6de5396 Remove disused duplicate of H5F__idx_entry_cmp(). I probably introduced that
by accident when I merged Vailin's changes that moved some functions from one
file to another.
2019-12-13 10:25:25 -06:00
David Young
93175a115c Remove the ugly casts on calloc() and malloc(). Change some malloc() to
calloc() so that all bytes are initialized to something.
2019-12-13 10:24:02 -06:00
David Young
5d163c8d78 Fix some typos. NFCI. 2019-12-13 10:22:19 -06:00
Neil Fortner
7aedeedf67 Merge pull request #2139 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:vol_init_fix to develop
* commit 'ce653ff82b7dd52b8e36a5eff7b1728c4b75d9f7':
  Modify H5VL initialization routines to initialize all VOL-managed object types.  Modify H5VLwrap_register() to reject non-VOL-managed object types.  Also fix overisights in h5trace.c from previous changes.
2019-12-12 15:52:59 -06:00
Neil Fortner
ce653ff82b Modify H5VL initialization routines to initialize all VOL-managed object
types.  Modify H5VLwrap_register() to reject non-VOL-managed object
types.  Also fix overisights in h5trace.c from previous changes.
2019-12-12 15:52:21 -06:00
kmu
7366709e40 Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2019-12-12 14:10:48 -06:00
Allen Byrne
e350797b71 Add release note for sanitizer support 2019-12-12 12:31:28 -06:00
Allen Byrne
3ab183ba99 HDFFV-10979 cleanup globals 2019-12-12 12:20:49 -06:00
Allen Byrne
74524c5a35 TRILABS-135 Add clang analyzers 2019-12-11 16:49:34 -06:00
Allen Byrne
8026c67a1c Merge pull request #2132 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '8ef8f5fda952540dc18a43ccf65597089db175f9':
  HDFFV-10979 fix global name clash
2019-12-11 16:43:38 -06:00
Allen Byrne
8ef8f5fda9 HDFFV-10979 fix global name clash 2019-12-11 15:58:59 -06:00
kmu
d33f4365b5 Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2019-12-11 15:54:40 -06:00
Allen Byrne
34ff52bd1a Merge pull request #2130 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6e7dcf170b39885f8aa4e7a35d1dc54f1489b375':
  Fix issues found with ONLY_SHARED_LIBS option
2019-12-11 15:51:55 -06:00
Allen Byrne
6e7dcf170b Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5d94490e38eae88c5180c6ce1b3f74d82f1dd600':
  Fix 2010 compile issues
2019-12-11 15:13:26 -06:00
Allen Byrne
5d94490e38 Merge pull request #2128 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '1d5bf068224df9582dfc2280525352967a02367b':
  Fix 2010 compile issues
2019-12-11 14:11:48 -06:00
kmu
b0e5b2d933 removed unused parameter 2019-12-11 13:36:56 -06:00
kmu
0a2bb11b24 address problems from comments 2019-12-11 13:35:02 -06:00
Allen Byrne
1fc1b09bf3 Fix issues found with ONLY_SHARED_LIBS option 2019-12-11 12:28:33 -06:00
Allen Byrne
1d5bf06822 Fix 2010 compile issues 2019-12-11 11:36:46 -06:00
kmu
026c5b6f19 Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2019-12-11 10:50:39 -06:00
kmu
45a62b2d46 fix and address comments 2019-12-11 10:44:56 -06:00
Richard Warren
b003ff5b1b Merge pull request #2127 in HDFFV/hdf5 from Fix_use_of_H5Dcreate_to_H5Dcreate2 to develop
* commit '2a94589f55bae69a06f8d672a904b9870d7353d1':
  Change from using H5Dcreate to H5Dcreate2
2019-12-11 10:44:41 -06:00
Richard Warren
2a94589f55 Change from using H5Dcreate to H5Dcreate2 2019-12-11 11:21:39 -05:00
Allen Byrne
5c97dbe59f Merge pull request #2118 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '51e799551309e16558297469edef6e2d232a3246':
  HDFFV-10974 Change defines to eliminate Windows conflict
2019-12-11 08:39:08 -06:00
Allen Byrne
51e7995513 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '6b670e353c1ea7f13ef72cc4297d9973102078bb':
  Correct assignment
  Fix java include, h5watch and remove clang tool.
  Add missing filenames
2019-12-11 08:29:33 -06:00
Larry Knox
6b670e353c Merge pull request #2123 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f2ef40feb8d1f5f31ab60f78bb37d2ba595aacb8':
  Correct assignment
  Fix java include, h5watch and remove clang tool.
  Add missing filenames
2019-12-10 23:44:30 -06:00
Allen Byrne
b260e2969f Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'eb415973e81605e3c15bbb954d57dd5d42ad449c':
  Latest date first in RELEASE.txt
  Update RELEASE.txt with performance improvements
2019-12-10 15:00:46 -06:00
Allen Byrne
f2ef40feb8 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'eb415973e81605e3c15bbb954d57dd5d42ad449c':
  Latest date first in RELEASE.txt
  Update RELEASE.txt with performance improvements
2019-12-10 14:59:33 -06:00
Chris Hogan
eb415973e8 Merge pull request #2122 in HDFFV/hdf5 from ~CHOGAN/hdf5:chogan/develop/release_txt to develop
* commit '794d008375b094d4dd2d26b0bbf6d2c51fd39281':
  Latest date first in RELEASE.txt
  Update RELEASE.txt with performance improvements
2019-12-10 14:58:37 -06:00
Chris Hogan
794d008375 Latest date first in RELEASE.txt 2019-12-10 14:32:02 -06:00
Chris Hogan
64eb3e815a Update RELEASE.txt with performance improvements 2019-12-10 14:23:10 -06:00
Allen Byrne
ad0a727c69 Correct assignment 2019-12-10 14:19:31 -06:00
Allen Byrne
7535f5a728 Fix java include, h5watch and remove clang tool. 2019-12-10 13:55:34 -06:00
kmu
a00d71b2e2 change according to previous comments 2019-12-10 12:10:49 -06:00
kmu
62badd9ebc add missing piece 2019-12-10 10:59:34 -06:00
David Young
8f62e5dafb Wrap some comments at <= 80 characters. 2019-12-10 10:56:04 -06:00
David Young
fed174988d Shorten the type name H5F_vfd_swmr_eot_queue_entry_t to eot_queue_entry_t:
people have to read and type this stuff!

Use TAILQ_* macros instead of an unnecessary custom implementation of
doubly-linked lists.
2019-12-10 10:52:58 -06:00
Allen Byrne
e2d299225e HDFFV-10974 Change defines to eliminate Windows conflict 2019-12-10 07:43:28 -06:00
David Young
38902de493 Fix typo. NFCI. 2019-12-09 18:05:04 -06:00
David Young
305a64f674 Remove disused #ifdef QAK code. 2019-12-09 15:47:08 -06:00
David Young
a6be1c0397 Be brief: don't cast the last parameter of H5Pset_file_space_strategy(), the
constant `1`, to `hsize_t`.
2019-12-09 15:42:40 -06:00
David Young
0f33e41541 Don't see a 1GB threshold for tracking free filespace, that workaround for VFD
SWMR was never 100% effective, and now that there is a delay line on filespace
frees, it is not necesesary.
2019-12-09 15:30:17 -06:00
Allen Byrne
96cb94a95c Add missing filenames 2019-12-09 14:14:39 -06:00
kmu
f2614c9042 more fix and address comments 2019-12-09 14:08:47 -06:00
Chris Hogan
89cb46ead3 Merge pull request #2113 in HDFFV/hdf5 from ~CHOGAN/hdf5:chogan/develop/10934_release_txt to develop
* commit 'c000061e6a6123d9cba7938bb8e6b94139cc3cc7':
  Add RELEASE.txt entry for Jira 10934
2019-12-09 11:13:06 -06:00
Chris Hogan
c000061e6a Add RELEASE.txt entry for Jira 10934 2019-12-09 11:09:34 -06:00
Allen Byrne
162497a3f9 Merge pull request #2031 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'c087ef41b637686ae5e783bfb0a48e91dbe3f58e': (28 commits)
  Add H5Rdestroy calls to cleanup
  Remove problem tests for now
  Add new test reference
  HDFFV-10876 fix compare reference
  HDFFV-10876 ignore old reference API tests
  Add missing quotes
  Fix windows 10 compile error
  Correct indentation
  Revert declaration used in macro.
  Revert declaration deletion.
  HDFFV-10876 add note
  Address compile warnings
  Fix compile errors - mostly in jni
  HDFFV-10876 Update dump to match DDL spec
  Add extra line
  Adjust whitespace
  Update h5ls help and rework dump_mem routines for attrs
  Update create calls
  Add debug compile option as comment
  Update reference calls
  ...
2019-12-09 10:43:05 -06:00
David Young
c8f533cfc3 Merge all of my changes from merge-back-to-feature-vfd_swmr-attempt-1,
including the merge of `hdffv/hdf5/develop`, back to the branch that Vailin and
I share.

Now I need to put this branch on a fork with a less confusing name than
vchoi_fork!
2019-12-09 10:30:58 -06:00
kmu
8b51394f38 Merge branch 'develop' into bugfix/intel_warnings 2019-12-09 09:18:56 -06:00
Dana Robinson
99f85cbf15 Fixed bugs in pread/pwrite I/O in VFDs.
Fixes HDFFV-10945.
2019-12-08 21:52:29 -08:00
Allen Byrne
c087ef41b6 Add H5Rdestroy calls to cleanup 2019-12-08 14:43:06 -06:00
Allen Byrne
1cde6b2fba Remove problem tests for now 2019-12-08 14:03:05 -06:00
Allen Byrne
349656ecba Add new test reference 2019-12-08 13:58:35 -06:00
Allen Byrne
eed923ec70 HDFFV-10876 fix compare reference 2019-12-08 13:25:14 -06:00
Allen Byrne
1d3186ad45 HDFFV-10876 ignore old reference API tests 2019-12-07 15:05:08 -06:00
Allen Byrne
972cf8e60c Add missing quotes 2019-12-07 10:30:38 -06:00
Allen Byrne
bc20a7e47a Fix windows 10 compile error 2019-12-07 10:26:30 -06:00
Allen Byrne
7d6d3e2956 Correct indentation 2019-12-07 08:42:19 -06:00
Allen Byrne
7225519e2a Revert declaration used in macro. 2019-12-07 08:38:06 -06:00
Allen Byrne
b98f630009 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '9c3900d0bf05a65e59cce6dc613b38b240599d93':
  Add note to RELEASE.txt for H5Sselect_adjust.
  Add RELEASE.txt note for H5Sselect_project_interesection
  Minor tweaks noticed while going over VOL documentation.
2019-12-07 08:31:52 -06:00
Allen Byrne
73c8e2f9d6 Revert declaration deletion. 2019-12-07 08:31:12 -06:00
Dana Robinson
9c3900d0bf Merge pull request #2082 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'bbd4f7d2a0bea8f984868e2bf88dd1c5f5aa35e8':
  Minor tweaks noticed while going over VOL documentation.
2019-12-06 17:07:10 -06:00
Neil Fortner
26b8bb8e6c Merge pull request #2098 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit 'f6961c82bf3e7b848b071a0299dcc3753361e35d':
  Add note to RELEASE.txt for H5Sselect_adjust.
2019-12-06 16:19:50 -06:00
Neil Fortner
f6961c82bf Add note to RELEASE.txt for H5Sselect_adjust. 2019-12-06 16:18:33 -06:00
Neil Fortner
ac14c63146 Merge pull request #2093 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit '411241bea660411b99925edc8040139443fe8a74':
  Add RELEASE.txt note for H5Sselect_project_interesection
2019-12-06 14:36:11 -06:00
Neil Fortner
411241bea6 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~nfortne2/hdf5_naf into develop 2019-12-06 14:35:27 -06:00
Neil Fortner
848be85f00 Add RELEASE.txt note for H5Sselect_project_interesection 2019-12-06 14:34:56 -06:00
Allen Byrne
e6c54c372f Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'fa31520e25ec27140f8d0dfec859aede163d2201':
  Add RELEASE.txt note for HVLget_file_type()
2019-12-06 14:20:40 -06:00
Neil Fortner
fa31520e25 Merge pull request #2090 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit 'c7165f05444ce5ae6c5db50f2faf33023ba0eac0':
  Add RELEASE.txt note for HVLget_file_type()
2019-12-06 14:15:24 -06:00
Neil Fortner
c7165f0544 Add RELEASE.txt note for HVLget_file_type() 2019-12-06 14:14:22 -06:00
kmu
189935ff26 remove unnecessary check macro 2019-12-06 14:12:57 -06:00
Allen Byrne
0d74deba5d HDFFV-10876 add note 2019-12-06 14:10:56 -06:00
Allen Byrne
fce2a31dc5 Address compile warnings 2019-12-06 13:55:34 -06:00
Allen Byrne
52c9749d6f Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b816f4c4aaf9bc80dbde35158b520e693f135fa2':
  Fixed PR issues pointed out by Allen
  Remove the Copyright UofI per Larry's guidance
  Adds a new t_2Gio.c MPI test
2019-12-06 12:58:01 -06:00
Allen Byrne
cf61098fa6 Fix compile errors - mostly in jni 2019-12-06 12:57:38 -06:00
Richard Warren
b816f4c4aa Merge pull request #2056 in HDFFV/hdf5 from HDFFV-10929_2GB_testing to develop
* commit '7dfeab4863a25a79999fa1e5ede12a1aa685ca97':
  Fixed PR issues pointed out by Allen
  Remove the Copyright UofI per Larry's guidance
  Adds a new t_2Gio.c MPI test
2019-12-06 12:56:51 -06:00
kmu
f22e258586 remove unsed var,function,macro, etc 2019-12-06 12:03:19 -06:00
Vailin Choi
b42325e8f5 More fixes for previous committed PR #2079 dated Dec 5 2019.
(1) H5O_dtype_ver_bounds[] for V112 should be H5O_DTYPE_VRESION_4
(2) The tests for the new reference types should work for V112 and beyond
2019-12-06 11:55:36 -06:00
Vailin Choi
bb9fdb8f4b Merge pull request #22 in ~VCHOI/my_third_fork from develop to bugfix/reference_ver_hyperslab_ver
* commit '107bcbd3dfff51895c99ea3ff71afa0ce693a956':
  Implement support for using H5Dvlen_get_buf_size with non-native VOL connectors.
  Add H5VL_MAP_OPTIONAL operation id (unused currently).
  Fix H5VL_token_t type and fix H5VL_loc_by_token to use H5VL_token_t *
  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.
2019-12-06 11:27:45 -06:00
Richard Warren
7dfeab4863 Fixed PR issues pointed out by Allen 2019-12-06 10:58:59 -05:00
kmu
1f871e23b7 Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2019-12-06 09:51:06 -06:00
Richard Warren
c62aaaff46 Remove the Copyright UofI per Larry's guidance 2019-12-06 09:33:55 -05:00
Dana Robinson
bbd4f7d2a0 Minor tweaks noticed while going over VOL documentation. 2019-12-05 22:10:02 -08:00
Allen Byrne
eb52c2ea6f Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '107bcbd3dfff51895c99ea3ff71afa0ce693a956':
  Implement support for using H5Dvlen_get_buf_size with non-native VOL connectors.
  Two fixes: (1) Set the version for reference datatype messge to H5O_DTYPE_VERSION_4. (2) Verify the decoded version for hyperslab selection.
  Add H5VL_MAP_OPTIONAL operation id (unused currently).
  Fix H5VL_token_t type and fix H5VL_loc_by_token to use H5VL_token_t *
  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.
2019-12-05 17:26:00 -06:00
Jerome Soumagne
107bcbd3df Merge pull request #2076 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:type_fixes to develop
* commit '7b03a1c03633d695b487642e54f897c715f8622e':
  Fix H5VL_token_t type and fix H5VL_loc_by_token to use H5VL_token_t *
  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.
2019-12-05 17:25:22 -06:00
Allen Byrne
e8ad5f6d1a HDFFV-10876 Update dump to match DDL spec 2019-12-05 17:21:02 -06:00
Neil Fortner
5efd80f6ec Merge pull request #2073 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:vol_vl_buf_size to develop
* commit '12ac0587e7b9b18a56907aa78f68c084dd5b51b4':
  Implement support for using H5Dvlen_get_buf_size with non-native VOL connectors.
2019-12-05 16:13:12 -06:00
Neil Fortner
12ac0587e7 Implement support for using H5Dvlen_get_buf_size with
non-native VOL connectors.
2019-12-05 16:11:30 -06:00
Vailin Choi
8c9b8047ea Merge pull request #2079 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/reference_ver_hyperslab_ver to develop
* commit '1e10b3212ed5904b69d9f4c4bcb4d0122dfd7c77':
  Two fixes: (1) Set the version for reference datatype messge to H5O_DTYPE_VERSION_4. (2) Verify the decoded version for hyperslab selection.
2019-12-05 16:11:08 -06:00
Neil Fortner
bdbe010fd3 Merge pull request #2078 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit '73709ef2fa2494e675566dd3310c6c8ebac01c18':
  Add H5VL_MAP_OPTIONAL operation id (unused currently).
2019-12-05 16:03:16 -06:00
Vailin Choi
1e10b3212e Two fixes:
(1) Set the version for reference datatype messge to H5O_DTYPE_VERSION_4.
(2) Verify the decoded version for hyperslab selection.
2019-12-05 15:09:23 -06:00
Neil Fortner
73709ef2fa Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~nfortne2/hdf5_naf into develop 2019-12-05 14:57:35 -06:00
Neil Fortner
9cb7729730 Add H5VL_MAP_OPTIONAL operation id (unused currently). 2019-12-05 14:56:57 -06:00
Jerome Soumagne
7b03a1c036 Fix H5VL_token_t type and fix H5VL_loc_by_token to use H5VL_token_t * 2019-12-05 14:42:06 -06:00
David Young
60756183d9 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-05 14:41:45 -06:00
Allen Byrne
4747e2f2ad Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'c7b3d6d6a5c1d376812e17c0ddb26f55334a2c59':
  Yanked -Wc++-compat from the flags used to build the C library in both the Autotools and CMake.
2019-12-05 09:30:11 -06:00
Dana Robinson
c7b3d6d6a5 Merge pull request #2072 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:cpp_warning_disable to develop
* commit '1ad02a445920578654d257bb66aa1e8e7e368018':
  Yanked -Wc++-compat from the flags used to build the C library in both the Autotools and CMake.
2019-12-04 18:08:57 -06:00
Allen Byrne
4f74548f53 Add extra line 2019-12-04 17:00:45 -06:00
Allen Byrne
11825bc525 Adjust whitespace 2019-12-04 16:59:03 -06:00
Allen Byrne
d552e97eae Update h5ls help and rework dump_mem routines for attrs 2019-12-04 16:36:32 -06:00
Allen Byrne
cc2407257a Update create calls 2019-12-04 12:35:48 -06:00
Allen Byrne
8f9005570a Add debug compile option as comment 2019-12-04 12:24:53 -06:00
Allen Byrne
ba8f2f1174 Update reference calls 2019-12-04 12:24:53 -06:00
Allen Byrne
e994c9cb4a Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'aa0b54e27e5d6f0b7c23fe5662d5c8f30898d7f4':
  Fixed missing blob callbacks in test VOL connectors.
  Add support for scalar dataspaces to H5Sproject_intersection.  Add checking for ank validity.
  Fix issues with using H5Pget_fill_value() with file datatypes retrieved from H5VLget_file_type().
2019-12-04 11:36:07 -06:00
Neil Fortner
aa0b54e27e Merge pull request #2064 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:vol_fillval to develop
* commit '28294070597c8a04c10e55a843dfe6dbae6ef04c':
  Fix issues with using H5Pget_fill_value() with file datatypes retrieved from H5VLget_file_type().
2019-12-04 11:35:58 -06:00
Neil Fortner
62b5de82e2 Merge pull request #2065 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:scalar_spi2 to develop
* commit 'ac1a8ab5fe7c58533e005fef94d3acb2d46f4b31':
  Add support for scalar dataspaces to H5Sproject_intersection.  Add checking for ank validity.
2019-12-04 11:33:43 -06:00
Dana Robinson
1ad02a4459 Yanked -Wc++-compat from the flags used to build the C library in both
the Autotools and CMake.
2019-12-04 00:49:52 -08:00
kmu
132fa33dad fix intel compile warnings 2019-12-03 20:52:55 -06:00
Dana Robinson
96429e48e3 Merge pull request #2070 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '43c48fbadc994f740f63caeb5110442c79346501':
  Fixed missing blob callbacks in test VOL connectors.
2019-12-03 17:27:47 -06:00
Dana Robinson
43c48fbadc Fixed missing blob callbacks in test VOL connectors. 2019-12-03 15:14:57 -08:00
Allen Byrne
915184104b Add missing javadoc for new arg 2019-12-03 16:37:40 -06:00
Allen Byrne
7ad3d62a5c Update data output reference 2019-12-03 16:05:35 -06:00
Allen Byrne
12fd139e90 Update reference files and fix int as string 2019-12-03 14:43:05 -06:00
Allen Byrne
7c057f658a Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'ca34de56cd336f58c4bcf4ac9e1460f898fba3c9':
  Add OAPL parameter to H5Rcreate_ APIs
  Fix failing test and retain semantics for chunk cache properties in non-chunked datasets
  Add two missing calls to H5I_dec_ref for new dapl_id
  Community-proposed fix
2019-12-03 12:35:02 -06:00
Jordan Henderson
ca34de56cd Merge pull request #2066 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '874900d39561f97c0a41b7efc59686daa66df95e':
  Add OAPL parameter to H5Rcreate_ APIs
2019-12-03 11:32:55 -06:00
Jordan Henderson
874900d395 Add OAPL parameter to H5Rcreate_ APIs 2019-12-02 17:05:15 -06:00
Chris Hogan
4b2560fa81 Merge pull request #2049 in HDFFV/hdf5 from ~CHOGAN/hdf5:chogan/issue_10934 to develop
* commit '3664cea5d6f87a7e8e708191f9cea36077424a80':
  Fix failing test and retain semantics for chunk cache properties in non-chunked datasets
  Add two missing calls to H5I_dec_ref for new dapl_id
  Community-proposed fix
2019-12-02 16:58:16 -06:00
Allen Byrne
8888cfd25c Update to new error text 2019-12-02 14:58:57 -06:00
Allen Byrne
929490f6bc Update reference files to latest output 2019-12-02 12:01:40 -06:00
Vailin Choi
adcf8a315e Fix the FSM bug when setting the FSM threshold to a non-default value.
Check for smaller or larger section size after merging and shrinking a section,
for this case is the section that is smaller than threshold (see H5MF_xfree() in H5MF.c).
It is possible for the section to be smaller after merging/shrinking (see H5MF__sect_large_shrink()
in H5MFsection.c).
2019-12-02 11:07:25 -06:00
kmu
463199464f Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2019-12-02 10:46:22 -06:00
Neil Fortner
ac1a8ab5fe Add support for scalar dataspaces to H5Sproject_intersection. Add
checking for ank validity.
2019-12-02 10:32:03 -06:00
Allen Byrne
7e92c2e3e5 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '0772b975d1d2bfa15aedeb4b6e2c2aac78c61a2f':
  Fix missing free in H5T__ref_mem_read()
  Fix bugs in H5VL file comparison code.  Add short circuit success to H5VL_cmp_connector_cls().
  Implement file comparison VOL callback.  Other changes to allow references to work with non-native connectors.  There is a bug somewhere.
  Add support for point selections to H5S_select_project_intersection.
  Remove H5VL_NATIVE_FILE_GET_FILE_ID and add H5VL_OBJECT_GET_FILE
  Revert "Make a squash commit of 'Quiet some warnings by adjusting warnings level and fixing some code.' (commit 5c911d8baf)"
  Revert "Oops, remove more C99 designated initializers for VS 2010 compatibility."
  H5R: fix H5Tconv to check for null references
  Trivial parameter renaming in VOL API calls.
  Move checking for zero offset in selection adjust calls to the selection callbacks.  This makes the procedure for checking it consistent across selection types and between _s and _u, ensures it is always is performed even when called within the H5S package, and removes the redundant check that would occur when callins H5S_select_adjust_s() from outside the H5S package.
  Replace H5Sselect_adjust_u() and H5Shyper_adjust_s() with H5Sselect_adjust.  Implement "adjust_s" callback for all selection types.  Add range checking to H5Sselect_adjust().
2019-12-02 08:00:20 -06:00
Neil Fortner
0772b975d1 Merge pull request #2063 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:vol_file_cmp to develop
* commit '40b2658b4b266b4dc65ec3db2897e0aaf54f8e42':
  Fix missing free in H5T__ref_mem_read()
  Fix bugs in H5VL file comparison code.  Add short circuit success to H5VL_cmp_connector_cls().
  Implement file comparison VOL callback.  Other changes to allow references to work with non-native connectors.  There is a bug somewhere.
2019-11-30 18:44:02 -06:00
Neil Fortner
40b2658b4b Fix missing free in H5T__ref_mem_read() 2019-11-28 23:07:33 -06:00
Neil Fortner
ece625e3b6 Fix bugs in H5VL file comparison code. Add short circuit success to
H5VL_cmp_connector_cls().
2019-11-27 22:48:01 -06:00
Jerome Soumagne
648073ea8e Merge pull request #2059 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:topic_nullref to develop
* commit '6b68cc352ffabb5fe997db1eb52216b3ee80e669':
  H5R: fix H5Tconv to check for null references
2019-11-27 22:31:18 -06:00
Neil Fortner
e23e67798a Implement file comparison VOL callback. Other changes to allow
references to work with non-native connectors.  There is a bug
somewhere.
2019-11-27 16:50:01 -06:00
Neil Fortner
2829407059 Fix issues with using H5Pget_fill_value() with file datatypes retrieved
from H5VLget_file_type().
2019-11-27 14:52:30 -06:00
Neil Fortner
33a5acf8a5 Merge pull request #2050 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:point_spi to develop
* commit 'ad2fbb022e096233444489e69b93343a4b7e9631':
  Add support for point selections to H5S_select_project_intersection.
2019-11-27 14:47:23 -06:00
Neil Fortner
ad2fbb022e Add support for point selections to H5S_select_project_intersection. 2019-11-27 14:45:53 -06:00
Jerome Soumagne
68852d726c Merge pull request #2057 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:topic_get_file_id_native to develop
* commit 'f46494ffd8449fc610798c8af312362608029d3d':
  Remove H5VL_NATIVE_FILE_GET_FILE_ID and add H5VL_OBJECT_GET_FILE
2019-11-27 14:19:41 -06:00
Jerome Soumagne
f46494ffd8 Remove H5VL_NATIVE_FILE_GET_FILE_ID and add H5VL_OBJECT_GET_FILE
Remove H5F__get_file_id() and use only private routine instead
2019-11-27 14:17:08 -06:00
David Young
5e800bff9d Merge pull request #2062 in HDFFV/hdf5 from ~DYOUNG/vchoi_fork:revert-c99-designated to develop
* commit '0108072f7a746b809952d5cc560577f931b64f71':
  Revert "Make a squash commit of 'Quiet some warnings by adjusting warnings level and fixing some code.' (commit 5c911d8baf)"
  Revert "Oops, remove more C99 designated initializers for VS 2010 compatibility."
2019-11-27 13:18:53 -06:00
David Young
0108072f7a Revert "Make a squash commit of 'Quiet some warnings by adjusting warnings level and fixing some code.' (commit 5c911d8baf)" 2019-11-27 11:26:02 -06:00
David Young
8fb9fb5d4d Revert "Oops, remove more C99 designated initializers for VS 2010 compatibility."
This reverts commit f907b511d0.
2019-11-27 11:16:52 -06:00
kmu
ea0759d047 Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2019-11-26 21:59:51 -06:00
kmu
e0262c8bed Revert "fix warnings from Intel compiler"
This reverts commit 8b9338ab57.
2019-11-26 17:24:48 -06:00
kmu
bfbd613f53 Revert "fix warnings and some text alignment"
This reverts commit d06474c4e1.
2019-11-26 17:24:24 -06:00
kmu
e971c0afa1 Revert "let hdf5 pick up the right compiler in Intel environment"
This reverts commit 3613ec7296.
2019-11-26 17:24:11 -06:00
kmu
2bb0f52edf Revert "fix issues from previous PR comments"
This reverts commit d242a900f4.
2019-11-26 17:23:58 -06:00
kmu
4c8a2f726a Revert "using a different MACRO"
This reverts commit fc61b7a9f3.
2019-11-26 17:23:34 -06:00
Jerome Soumagne
6b68cc352f H5R: fix H5Tconv to check for null references
Valid for both deprecated and non-deprecated references

Update test
2019-11-26 15:50:08 -06:00
Neil Fortner
9f61c26927 Merge pull request #2045 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:select_adjust to develop
* commit '4e12984b77cdd7615843d94f8de8d54db27476ac':
  Move checking for zero offset in selection adjust calls to the selection callbacks.  This makes the procedure for checking it consistent across selection types and between _s and _u, ensures it is always is performed even when called within the H5S package, and removes the redundant check that would occur when callins H5S_select_adjust_s() from outside the H5S package.
  Replace H5Sselect_adjust_u() and H5Shyper_adjust_s() with H5Sselect_adjust.  Implement "adjust_s" callback for all selection types.  Add range checking to H5Sselect_adjust().
2019-11-26 11:38:25 -06:00
Richard Warren
8a790fe85a Adds a new t_2Gio.c MPI test 2019-11-26 09:20:47 -05:00
Dana Robinson
5f3414e4d9 Merge pull request #2054 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_trivial to develop
* commit '9a93ecac522d9032efd9cdc39ff0550412e54565':
  Trivial parameter renaming in VOL API calls.
2019-11-25 23:23:52 -06:00
Allen Byrne
dcae4544a3 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'a8892bb42d6f6e4fbc30fae0eb2b957f81c938b9': (45 commits)
  Oops, remove more C99 designated initializers for VS 2010 compatibility.
  Add an #include to get a function declaration.
  Don't use C99 designated initializers, they're not compatible with Visual Studio 2010.
  Quiet some more maybe-uninitialized warnings---each is a false positive, *sigh*.  This is more code that may not compile with VS2010, *sigh sigh*.
  Always warn on maybe-uninitialized.  -Wincompatible-pointer-types was not available until GCC 5, so enable it only if that's the GCC version we're using.
  Only promote maybe-uninitialized warnings to errors on GCC 8.  Even on GCC 8, there may be false positives at low optimization levels?  I need to check.
  Only use -Werror=cast-function-type with GCC 8 and later.
  Put all of the -W options back into the order I found them in so that it's easier to compare old and new config/gnu-flags.
  Add new source files to CMakeLists.txt.
  Mention the -Werror= flags in libhdf5.settings.in.
  free -> HDfree
  Promote decleration-after-statement warnings to errors.
  Quiet decleration-after-statement warnings.
  Move a statement under some declarations since some vintages of Visual Studio don't like declarations after statements.
  Document H5D__chunk_mem_xfree_wrapper().
  Undo accidental test deletion.
  Oops, delete a debug printf that snuck in here.
  Undo my changes to the HD macros, hadn't really intended those to be on this branch....
  Make errors of some more warnings.  Move disabled warnings to DEVELOPER_WARNING_CFLAGS.  Put just one warning option on a line, and sort some of the options.
  Cast to the parameter type, H5VL_token_t *, instead of to unsigned char *.
  ...
2019-11-25 18:21:14 -06:00
David Young
a8892bb42d Merge pull request #2055 in HDFFV/hdf5 from ~DYOUNG/vchoi_fork:add-werror-and-squash-some to develop
* commit 'f907b511d06612dafc7814a7c30f2f3d2b76d52b':
  Oops, remove more C99 designated initializers for VS 2010 compatibility.
2019-11-25 17:33:54 -06:00
David Young
f907b511d0 Oops, remove more C99 designated initializers for VS 2010 compatibility. 2019-11-25 17:30:08 -06:00
Dana Robinson
9a93ecac52 Trivial parameter renaming in VOL API calls. 2019-11-25 15:30:04 -08:00
David Young
5c911d8baf Merge pull request #2030 in HDFFV/hdf5 from ~DYOUNG/vchoi_fork:add-werror-and-squash-some to develop
* commit '62208b056a09c01855fbac7f75146be58ad6bfe5': (44 commits)
  Add an #include to get a function declaration.
  Don't use C99 designated initializers, they're not compatible with Visual Studio 2010.
  Quiet some more maybe-uninitialized warnings---each is a false positive, *sigh*.  This is more code that may not compile with VS2010, *sigh sigh*.
  Always warn on maybe-uninitialized.  -Wincompatible-pointer-types was not available until GCC 5, so enable it only if that's the GCC version we're using.
  Only promote maybe-uninitialized warnings to errors on GCC 8.  Even on GCC 8, there may be false positives at low optimization levels?  I need to check.
  Only use -Werror=cast-function-type with GCC 8 and later.
  Put all of the -W options back into the order I found them in so that it's easier to compare old and new config/gnu-flags.
  Add new source files to CMakeLists.txt.
  Mention the -Werror= flags in libhdf5.settings.in.
  free -> HDfree
  Promote decleration-after-statement warnings to errors.
  Quiet decleration-after-statement warnings.
  Move a statement under some declarations since some vintages of Visual Studio don't like declarations after statements.
  Document H5D__chunk_mem_xfree_wrapper().
  Undo accidental test deletion.
  Oops, delete a debug printf that snuck in here.
  Undo my changes to the HD macros, hadn't really intended those to be on this branch....
  Make errors of some more warnings.  Move disabled warnings to DEVELOPER_WARNING_CFLAGS.  Put just one warning option on a line, and sort some of the options.
  Cast to the parameter type, H5VL_token_t *, instead of to unsigned char *.
  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.
  ...
2019-11-25 16:58:27 -06:00
David Young
62208b056a Add an #include to get a function declaration. 2019-11-25 16:56:03 -06:00
David Young
d07aeef6ad Merge remote-tracking branch 'hdf5/develop' into add-werror-and-squash-some 2019-11-25 16:38:21 -06:00
Chris Hogan
3664cea5d6 Fix failing test and retain semantics for chunk cache properties in non-chunked datasets 2019-11-25 16:28:51 -06:00
David Young
f2f8a554e6 Don't use C99 designated initializers, they're not compatible with
Visual Studio 2010.
2019-11-25 15:43:56 -06:00
kmu
fc61b7a9f3 using a different MACRO 2019-11-25 15:17:55 -06:00
Allen Byrne
be971e8ec2 Remove unneeded flag overwrites 2019-11-25 12:53:45 -06:00
Allen Byrne
a8e8f491c0 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b8a56718e40efaf6954a760984b9d513dbff8f7d':
  Add documentation for H5CX_get_ohdr_flags
  Add object header flags to API context
  Use major error code of calling package
  Handle H5CX_state_t for lcpl
  Add character encoding to lcpl context
  Change LC property name from 'create_intermediate_group' to 'intermediate_group'
  Use API context to store/retrieve LCPL when creating intermediate groups
2019-11-25 12:52:02 -06:00
kmu
d242a900f4 fix issues from previous PR comments 2019-11-25 12:48:51 -06:00
Chris Hogan
b8a56718e4 Merge pull request #2029 in HDFFV/hdf5 from ~CHOGAN/hdf5:feature/cx_lcpl to develop
* commit '4ce9c10c568ff81ebd4eb7585039cbe3c40d1718':
  Add documentation for H5CX_get_ohdr_flags
  Add object header flags to API context
  Use major error code of calling package
  Handle H5CX_state_t for lcpl
  Add character encoding to lcpl context
  Change LC property name from 'create_intermediate_group' to 'intermediate_group'
  Use API context to store/retrieve LCPL when creating intermediate groups
2019-11-25 11:39:04 -06:00
David Young
4d50f9a7a8 Update status of the expand/shrink test. 2019-11-25 11:01:42 -06:00
David Young
0f9678b415 Mention the Markdown cheat sheet and tutorial, per John's request. 2019-11-22 15:36:56 -06:00
David Young
edd5297143 Quiet some more maybe-uninitialized warnings---each is a false positive,
*sigh*.  This is more code that may not compile with VS2010, *sigh
sigh*.
2019-11-22 15:31:00 -06:00
David Young
6d5ec83fc3 Always warn on maybe-uninitialized. -Wincompatible-pointer-types was not
available until GCC 5, so enable it only if that's the GCC version we're using.
2019-11-22 14:34:42 -06:00
David Young
fa1dfbbd8d Only promote maybe-uninitialized warnings to errors on GCC 8. Even on
GCC 8, there may be false positives at low optimization levels?  I need
to check.
2019-11-22 14:23:07 -06:00
David Young
dde718ad51 Only use -Werror=cast-function-type with GCC 8 and later. 2019-11-22 13:49:59 -06:00
David Young
edb6f34440 Put all of the -W options back into the order I found them in so that it's
easier to compare old and new config/gnu-flags.
2019-11-22 13:41:45 -06:00
Chris Hogan
0de8401d34 Add two missing calls to H5I_dec_ref for new dapl_id 2019-11-21 16:21:06 -06:00
Allen Byrne
772846eb05 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '33d173d672f4affc804cf6e3c43b92693bd3ed68':
  Modify H5Ssel_iter_get_seq_list() to accept iterators that have reached the end of iteration (returning zero sequences).  Previously it could cause an assertion failure.
2019-11-21 09:33:23 -06:00
Allen Byrne
5fe5caf560 Comment correction 2019-11-21 09:33:04 -06:00
David Young
456171651a Add new source files to CMakeLists.txt. 2019-11-20 16:56:00 -06:00
Vailin Choi
12438c22b7 Fix for punch list #28:
Given that the VFD SWMR configuration FAPL property is set, the writer field must
be consistent with the flags passed in the H5Fopen() (either H5F_ACC_RDWR for the
VFD SWMR writer, or H5F_ACC_RDONLY for the VFD SWMR readers).
2019-11-20 16:23:03 -06:00
David Young
adb0c7bde5 Mention the -Werror= flags in libhdf5.settings.in. 2019-11-20 15:54:15 -06:00
David Young
559bcaf570 free -> HDfree 2019-11-20 15:53:46 -06:00
Neil Fortner
33d173d672 Merge pull request #2043 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:seq_list_fix to develop
* commit 'c104f4cb87a1558ab6a772967887738dc9800f0d':
  Modify H5Ssel_iter_get_seq_list() to accept iterators that have reached the end of iteration (returning zero sequences).  Previously it could cause an assertion failure.
2019-11-20 12:02:46 -06:00
Vailin Choi
68ad19d9cc Changes for punch list #4: Add support for opening mulitple files in either VFD SWMR writer or reader mode. See EOT queue in section 3.2.2 and 3.3 and 3.3.2 in the RFC.
Update punch list with items completed and in progress.
2019-11-20 11:39:26 -06:00
Allen Byrne
79f45aacea Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '13456df8a47fdcd8f96f170c9218e57a03066120':
  Minor correction
  Update list of tested platforms
  Add VS2019 support
  Fixed the H5_mpi_get_bigio_count function prototype
2019-11-20 06:51:54 -06:00
David Young
d3055b85b9 Add my name to some entries. 2019-11-19 17:16:06 -06:00
David Young
65c38da1f0 Mention the items that Vailin is working on. 2019-11-19 16:35:02 -06:00
David Young
7579e10abb Use bold to highlight items status. 2019-11-19 15:53:57 -06:00
David Young
898871545d Add some notes about what's done and what I'm working on. 2019-11-19 15:52:38 -06:00
Allen Byrne
13456df8a4 Merge pull request #2048 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'efe234c832581d16d3da41fe71b50ef71fd44acc':
  Minor correction
  Update list of tested platforms
  Add VS2019 support
2019-11-19 15:48:06 -06:00
David Young
d84343004e Add URL for the punch list. 2019-11-19 14:14:17 -06:00
David Young
c905d7105a Remove the last (?) vestige of gettimeofday alternate implementation of
VFD SWMR.
2019-11-19 14:12:29 -06:00
Allen Byrne
efe234c832 Minor correction 2019-11-18 15:32:19 -06:00
Allen Byrne
0f09287b19 Update list of tested platforms 2019-11-18 15:02:10 -06:00
Allen Byrne
265325fb9a Add VS2019 support 2019-11-18 14:58:06 -06:00
Richard Warren
3f9c7efbd9 Merge pull request #2047 in HDFFV/hdf5 from h5_private_prototype_fix to develop
* commit 'c440e05de82b224a0a6b042ec8a27accdc1e48ae':
  Fixed the H5_mpi_get_bigio_count function prototype
2019-11-18 14:18:55 -06:00
Chris Hogan
fd1970572f Community-proposed fix 2019-11-18 14:07:03 -06:00
Richard Warren
c440e05de8 Fixed the H5_mpi_get_bigio_count function prototype 2019-11-18 15:04:35 -05:00
Neil Fortner
4e12984b77 Move checking for zero offset in selection adjust calls to the selection callbacks. This makes the
procedure for checking it consistent across selection types and between
_s and _u, ensures it is always is performed even when called within the H5S package, and removes the redundant check that would occur when callins H5S_select_adjust_s() from outside the H5S package.
2019-11-18 13:33:36 -06:00
Neil Fortner
4064332a2d Replace H5Sselect_adjust_u() and H5Shyper_adjust_s() with
H5Sselect_adjust.  Implement "adjust_s" callback for all selection
types.  Add range checking to H5Sselect_adjust().
2019-11-18 11:53:50 -06:00
Allen Byrne
cc22fb0ae5 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '3593b3d201dd6eac4a71e67db02a54959d9a169e':
  Correct file extension
2019-11-16 08:15:58 -06:00
Neil Fortner
c104f4cb87 Modify H5Ssel_iter_get_seq_list() to accept iterators that have reached
the end of iteration (returning zero sequences).  Previously it could
cause an assertion failure.
2019-11-15 16:47:30 -06:00
Chris Hogan
4ce9c10c56 Add documentation for H5CX_get_ohdr_flags 2019-11-15 16:19:19 -06:00
Allen Byrne
3593b3d201 Merge pull request #2042 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'c2fd059704e9232a3d3221ddd0c84803256baec2':
  Correct file extension
2019-11-15 16:00:39 -06:00
vchoi
e847ec43ac Fix for punch list #9 Move VFD SWMR H5F code to its own file: H5Fvfd_swmr.c. 2019-11-15 14:17:02 -06:00
Allen Byrne
c2fd059704 Correct file extension 2019-11-14 16:41:18 -06:00
Chris Hogan
a7b35b8584 Add object header flags to API context
Add missing DCPL to API context state
Replace a couple LCPL H5P_get calls with H5CX_get_*
2019-11-14 15:56:15 -06:00
Vailin Choi
350a786486 Fix for punch list #13 item #1: Odd behavior in the superblock refresh routine.
The test "driver_addr != sblock->driver_addr" is failing for superblock version 2 & 3.
Fix: there is no driver_addr in superblock version 2 & 3.
It should decode the root group object header address (root_addr) and verify accordingly.
2019-11-14 15:15:37 -06:00
Vailin Choi
227688c9cd Modifications for the following items in the punch list:
(A) #5: Add the "pb_expansion_threshold" field to the "H5F_vfd_swmr_config_t" structure
and update H5Pset_vfd_swmr_config() and H5Pget_vfd_swmr_config() accordingly
(B) #13 bullet 2: Comment H5F_vfd_swmr_config_t in H5Fpublic.h properly
(copied from John's description in the RFC)
(C) Change the field name "vfd_swmr_writer" to "writer" in "struct H5F_vfd_swmr_config_t"
(as indicated on page 11 in the RFC) and all references to it
2019-11-14 13:15:23 -06:00
David Young
f2bb4e3dbc Good-bye md_open_tries. 2019-11-14 11:11:15 -06:00
kmu
3613ec7296 let hdf5 pick up the right compiler in Intel environment 2019-11-14 09:28:03 -06:00
Allen Byrne
b3e7dab9f6 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '07b59c0b63041f1be964aee2a27f5c748c29d688':
  Implement public H5Sselect_project_intersection().  Updated internal algorithm to (optionally) avoid sharing selection data structures. Tested internal code (including with valgrind) by setting VDS code to avoid sharing selection, has since been changed to share selection for performance, so this code is not yet tested in regression tests.  API has not been tested.
2019-11-13 17:16:36 -06:00
David Young
492d8b8b2a Add the latest version of the RFC. 2019-11-13 15:04:46 -06:00
David Young
29561bac95 Promote decleration-after-statement warnings to errors. 2019-11-13 14:39:12 -06:00
David Young
bf6b89c841 Quiet decleration-after-statement warnings. 2019-11-13 14:38:22 -06:00
David Young
7dcd36a37d Move a statement under some declarations since some vintages of Visual
Studio don't like declarations after statements.
2019-11-13 14:21:15 -06:00
David Young
3dd539473b Document H5D__chunk_mem_xfree_wrapper(). 2019-11-13 13:48:07 -06:00
David Young
bd77af437f Undo accidental test deletion. 2019-11-13 13:41:05 -06:00
David Young
305177a51f Oops, delete a debug printf that snuck in here. 2019-11-13 13:39:59 -06:00
David Young
b0dd6184bc Undo my changes to the HD macros, hadn't really intended those to be on
this branch....
2019-11-13 13:38:47 -06:00
David Young
560db03d66 Make errors of some more warnings. Move disabled warnings to
DEVELOPER_WARNING_CFLAGS.  Put just one warning option on a line, and
sort some of the options.
2019-11-13 13:33:46 -06:00
David Young
15f5a6980d Cast to the parameter type, H5VL_token_t *, instead of to unsigned char *.
(H5VL_token_t, too, probably should turn from a typedef for a
constant-length array to an array encapsulated in a struct.)
2019-11-13 13:31:51 -06:00
David Young
b505226ad5 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.
2019-11-13 13:29:59 -06:00
David Young
4281d101c4 Make this script work on hosts where PERL is not installed at
/usr/bin/perl.
2019-11-13 13:04:58 -06:00
Neil Fortner
07b59c0b63 Merge pull request #2033 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:public_spi to develop
* commit 'db6eab893e5f027f0b535316e0e7a9abe9ff8619':
  Implement public H5Sselect_project_intersection().  Updated internal algorithm to (optionally) avoid sharing selection data structures. Tested internal code (including with valgrind) by setting VDS code to avoid sharing selection, has since been changed to share selection for performance, so this code is not yet tested in regression tests.  API has not been tested.
2019-11-13 12:57:31 -06:00
Neil Fortner
db6eab893e Implement public H5Sselect_project_intersection(). Updated internal
algorithm to (optionally) avoid sharing selection data structures.
Tested internal code (including with valgrind) by setting VDS code to
avoid sharing selection, has since been changed to share selection for
performance, so this code is not yet tested in regression tests.  API
has not been tested.
2019-11-13 12:54:13 -06:00
dyoung
d017ff1850 Put the Markdown punch list on the right branch. 2019-11-13 12:17:20 -06:00
David Young
695c62bafe In every instance, x is initialized by memcpy, but GCC isn't smart
enough to figure that out.  Quiet some warnings by always initializing
`x` to 0.
2019-11-13 12:06:01 -06:00
David Young
1e3d63dcdf same_file is assigned but never used. Delete it. 2019-11-13 12:05:16 -06:00
David Young
81a256b02e Don't assign a constant string to a pointer to non-constant character. 2019-11-13 12:04:42 -06:00
David Young
42cd35b717 GCC isn't smart enough to realize that fill_c is always initialized
and exclusively used in `datatype == H5T_COMPOUND` branches, so just
initialize it at its declaration so that GCC doesn't warn.
2019-11-13 12:03:18 -06:00
David Young
7bdf30738d I'm not sure what the previous code was trying to do, casting an array
of `hsize_t`, `start`, to `long long`, but I think the way that I have
rewritten it, it probably produces a more useful result?  As a bonus,
GCC has stopped warning about it.
2019-11-13 11:56:46 -06:00
David Young
dc0d3a3881 Quiet a warning about an unused variable. This code looks like it
should be heavily restructured to avoid the use of globals like `pass`,
but that's a project for another day and another person.
2019-11-13 11:50:11 -06:00
David Young
943e601b10 Straggler from previous commit: build and link the new .c files where I
moved some previously-static variables and functions that were causing
unused-variable/function warnings.
2019-11-13 11:49:15 -06:00
David Young
c5b8f3db3b Make many warnings about H5T_copy() calls that discard const qualifiers
into a few warnings in H5T_copy() itself.
2019-11-13 11:45:29 -06:00
David Young
19e3b93c81 Use FUNC_ENTER_STATIC_NOERR instead of FUNC_ENTER_STATIC for a function
that does not generate its own error, so GCC does not warn that
err_occurred (or whatever it is called) is unused or set and unused.
2019-11-13 11:42:50 -06:00
David Young
408d208710 Explicitly initialize type_flags; the compiler does not realize that
it is set before use by passing it as a reference to another function.
2019-11-13 11:41:25 -06:00
David Young
918e1a879d Initialize a couple of return values to avoid used-before-set warnings. 2019-11-13 11:39:24 -06:00
David Young
1937029354 Initialize a couple of variables that the compiler does not realize are
initialized when they're passed by reference to functions.
2019-11-13 11:37:14 -06:00
David Young
e2d9cc5584 To quiet a warning, initialize some struct timevals that the compiler
does not realize are always set before use by `gettimeofday`.
2019-11-13 11:35:36 -06:00
David Young
833c0a2fc6 Move some static functions and variables to .c files to avoid unused
function/variable warnings.
2019-11-13 11:35:00 -06:00
David Young
98c4ed49e8 Delete unused variable. 2019-11-13 11:33:35 -06:00
David Young
3f11ed26f7 Change a signed variable to unsigned to avoid a warning about the sign
being lost by a cast.
2019-11-13 11:32:38 -06:00
David Young
37eb3dd7d2 Avoid unused-variable warnings: change static const strings in a couple
of header-file templates to #defines.
2019-11-13 11:31:20 -06:00
David Young
77a9806ab5 Demote errors to warnings for a couple of unused-but-set variables that
I cannot untangle right now.
2019-11-13 11:26:49 -06:00
David Young
aa0f3cb1a8 Delete an unused variable. 2019-11-13 11:25:51 -06:00
David Young
0cb24f8ad4 Mark an unused parameter H5_ATTR_UNUSED. 2019-11-13 11:25:27 -06:00
David Young
769a6e9d32 Delete variables that are unused or set and unused. 2019-11-13 11:24:40 -06:00
David Young
587758e8c6 Initialize a variable before its first use. 2019-11-13 11:23:12 -06:00
David Young
c538919509 Format a pointer with %p to avoid a gripe about casting a pointer to an
integer.
2019-11-13 11:22:09 -06:00
Allen Byrne
e5f9c60e69 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'e08b69d3d2e572de4707b1fbf908111d29f40a1b':
  Use HD prefix.
  Fix issue where H5R__reopen_file did not make the file "post open" callback.
  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 `[^/]+`.
  Implement H5VLget_file_type() to return a copy of a datatype with the location set to be in a file.  Only meant to be used by VOL connectors. Implement H5VLpeek_connector_id() to support connectors querying their own IDs.  Fix app_ref with connector IDs in a couple places (external VOLs registered as default through ENV should be visible to the application).  Modify vlen and reference interfaces to work with arbitrary VOL connectors.  Implement file "post open" specific callback, to enable connectors to update their file structs after a wrap context has been set.
  Fix HDFFV-10937: use a more reliable (and probably faster) scheme for visiting all elements of a matrix in an arbitrary order.
2019-11-13 10:31:35 -06:00
David Young
62afeec0ee Merge remote-tracking branch 'hdf5/develop' into add-werror-and-squash-some to
see if new warnings-as-errors have cropped up.
2019-11-12 14:02:35 -06:00
David Young
e08b69d3d2 Merge pull request #2027 in HDFFV/hdf5 from ~DYOUNG/hdf5:dsets-randomness to develop
* commit '4d834adba4aeb1a0174bddb83212b7073b64e269':
  Use HD prefix.
  Fix HDFFV-10937: use a more reliable (and probably faster) scheme for visiting all elements of a matrix in an arbitrary order.
2019-11-12 13:25:26 -06:00
Neil Fortner
f1b3df09ef Merge pull request #2037 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit 'e5fc4889fa4f412056a4672435c96c17a6d1a936':
  Fix issue where H5R__reopen_file did not make the file "post open" callback.
2019-11-12 13:01:40 -06:00
David Young
4d834adba4 Use HD prefix. 2019-11-12 12:40:51 -06:00
Neil Fortner
e5fc4889fa Fix issue where H5R__reopen_file did not make the file "post open"
callback.
2019-11-12 12:09:43 -06:00
David Young
78dfcd4658 Merge pull request #2036 in HDFFV/hdf5 from ~DYOUNG/netbsd:develop to develop
* commit 'f1b39ad80e2fc0d0f4f6ecae2a9fb0ea436c34cc':
  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 `[^/]+`.
2019-11-12 11:14:29 -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
kmu
d06474c4e1 fix warnings and some text alignment 2019-11-11 10:49:37 -06:00
Chris Hogan
07ff0a842a Use major error code of calling package 2019-11-08 15:29:37 -06:00
Neil Fortner
9fd1143ffd Merge pull request #2032 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:vlget_file_type to develop
* commit '1dbec40d465072540f8507c524ae7b909a6b1cf0':
  Implement H5VLget_file_type() to return a copy of a datatype with the location set to be in a file.  Only meant to be used by VOL connectors. Implement H5VLpeek_connector_id() to support connectors querying their own IDs.  Fix app_ref with connector IDs in a couple places (external VOLs registered as default through ENV should be visible to the application).  Modify vlen and reference interfaces to work with arbitrary VOL connectors.  Implement file "post open" specific callback, to enable connectors to update their file structs after a wrap context has been set.
2019-11-08 15:21:21 -06:00
Neil Fortner
1dbec40d46 Implement H5VLget_file_type() to return a copy of a datatype with the
location set to be in a file.  Only meant to be used by VOL connectors.
Implement H5VLpeek_connector_id() to support connectors querying their
own IDs.  Fix app_ref with connector IDs in a couple places (external
VOLs registered as default through ENV should be visible to the
application).  Modify vlen and reference interfaces to work with
arbitrary VOL connectors.  Implement file "post open" specific
callback, to enable connectors to update their file structs after a
wrap context has been set.
2019-11-08 15:14:33 -06:00
David Young
4981e83740 Merge remote-tracking branch 'hdf5/develop' into add-werror-and-squash-some
to pick up the NetBSD-compatibility changes that I recently merged.
2019-11-08 12:19:31 -06:00
kmu
815611a318 Merge branch 'develop' of https://git.hdfgroup.org/scm/~kmu/hdf5 into develop 2019-11-07 14:51:40 -06:00
kmu
8b9338ab57 fix warnings from Intel compiler 2019-11-07 14:34:13 -06:00
Allen Byrne
6b927a773c HDFFV-10876 Update h5dump and h5ls for new ref api. 2019-11-07 09:49:11 -06:00
David Young
2dd5bbfe16 Merge pull request #1984 in HDFFV/hdf5 from ~DYOUNG/netbsd:develop to develop
* commit '0b721858e46a317c370a24115032d5be41688f67':
  Make these scripts relocatable again: derive a relative path for the original installation prefix from the examples prefix.  Use that relative path to locate the current installation prefix, always.  Fall back to an absolute installation prefix if the relative path cannot be derived.
  Get the path to prefix right: needs a ../ to back out of subdirectory c/.
  Make this script relocatable again: derive a relative path for the original installation prefix from the examples prefix.  Use that relative path to locate the current installation prefix, always.  Fall back to an absolute installation prefix if the relative path cannot be derived.
  Let us override the examples directory using --with-examplesdir=DIR. This is handy for NetBSD where HDF5 examples are installed by convention in $prefix/share/examples/hdf5/ rather than in ${prefix}/share/hdf5_examples/, which is the HDF5 default.
  Follow longstanding execv convention for compatibility with NetBSD.
  Under the examples directories, always find the installed HDF5 executables and scripts using @prefix@ instead of a relative path, because the number of ../ in the relative path will be different on NetBSD than on other systems.
  Make the HDF5 configure script grok NetBSD.
  For portability, insulate the HDF5 library from some system macros.
  Not every system has perl installed in /usr/bin/, so change the shebang (#!) line to `/usr/bin/env perl` to locate perl on the PATH.
  For portability, use the POSIX sh(1) string-comparison operator `=` instead of `==`.
2019-11-05 15:36:09 -06:00
David Young
0b721858e4 Make these scripts relocatable again: derive a relative path for the
original installation prefix from the examples prefix.  Use that
relative path to locate the current installation prefix, always.  Fall
back to an absolute installation prefix if the relative path cannot be
derived.
2019-11-05 15:13:47 -06:00
David Young
1b01b6d60b Get the path to prefix right: needs a ../ to back out of subdirectory
c/.
2019-11-05 15:13:02 -06:00
David Young
34eff2aae5 Change some GCC warnings to errors. Fix code to quiet some warnings. 2019-11-05 12:14:26 -06:00
David Young
d459daa1f7 Make this script relocatable again: derive a relative path for the
original installation prefix from the examples prefix.  Use that
relative path to locate the current installation prefix, always.  Fall
back to an absolute installation prefix if the relative path cannot be
derived.
2019-11-05 10:14:59 -06:00
Chris Hogan
2eeda063ba Handle H5CX_state_t for lcpl 2019-11-04 15:10:44 -06:00
Chris Hogan
77a0f4087f Add character encoding to lcpl context 2019-11-04 14:42:08 -06:00
Chris Hogan
e6d6388905 Change LC property name from 'create_intermediate_group' to 'intermediate_group' 2019-10-30 16:11:25 -05:00
Chris Hogan
f8ab081b1f Use API context to store/retrieve LCPL when creating intermediate groups 2019-10-29 11:46:48 -05:00
David Young
e8de6a46e2 Fix HDFFV-10937: use a more reliable (and probably faster) scheme for
visiting all elements of a matrix in an arbitrary order.
2019-10-28 16:54:05 -05:00
Richard Warren
afd4b29131 Merge pull request #2015 in HDFFV/hdf5 from HDFFV-10943 to develop
* commit '299c9ed5fe19edac37cab27bc04d587fa67568c2':
  Removed set_bigio_count prototype since it has been added to H5private.h
  Change API names for get/set bitio_count.  Also added H5_mpi_set_bigio_count to H5private.h.
2019-10-25 11:39:10 -05:00
Richard Warren
299c9ed5fe Removed set_bigio_count prototype since it has been added to H5private.h 2019-10-25 11:28:21 -04:00
Allen Byrne
73e8b16d92 Merge pull request #2016 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '9affb7f12ec6084ccaadec9fcdc8d94bccf4dd4f':
  Fix MPI test depends
2019-10-23 16:10:40 -05:00
Allen Byrne
9affb7f12e Fix MPI test depends 2019-10-23 14:49:05 -05:00
Richard Warren
94d14191fa Change API names for get/set bitio_count. Also added H5_mpi_set_bigio_count to H5private.h. 2019-10-23 14:41:45 -04:00
David Young
0ea6e75d9f VFD SWMR sparse readers failed to open the .h5 file because the sparse writer
had finished its work and closed the .h5 file, thus removing the shadow file.
Make the sparse writer wait to close the .h5 file for a signal from
testvfdswmr.sh.  In testvfdswmr.sh, send the signal when the readers have all
finished.
2019-10-23 10:47:14 -05:00
Allen Byrne
20292df367 Merge pull request #2008 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '685956cd4c088d38862b36b8138e643b114b2929':
  Update format and fix missing prefix
2019-10-23 08:07:56 -05:00
David Young
e84a416ad8 Expect the h5ls usage message to mention --poll twice. 2019-10-21 17:08:25 -05:00
David Young
7e4d20453e First, reduce code duplication in h5tools_fopen(). Then, stop h5tools_fopen()
from using the SWMR VFD unless the h5tools_fopen() arguments specifically
choose that VFD.
2019-10-21 16:17:10 -05:00
Allen Byrne
685956cd4c Update format and fix missing prefix 2019-10-21 09:38:37 -05:00
David Young
6f1469fce4 Fix some tools: try all other VFDs before SWMR. 2019-10-18 15:58:02 -05:00
David Young
63df4fae56 Delay for no more than 1/100 second between any retry in H5C_load_entry().
This lets test/testflushrefresh.sh pass again.  It was timing out while it
waited for expected failures to occur because the retry loop ran for way too
long.
2019-10-18 14:54:06 -05:00
David Young
e100cbdd3c Ntheever skip a read (skip_read is always false). This lets my demos work and
it does not seem to affect either my unit tests or testvfdswmr.sh.
2019-10-18 14:52:59 -05:00
David Young
90a602634e I've changed test/dsets so that every time it needs to visit all
cells in a matrix in an arbitrary order, first it chooses a random
starting `offset` in [0, rows * columns - 1].  Then it chooses a
random `increment` that's relatively prime to `rows * columns`.
Then it visits every cell in `rows * columns` steps:

        for (i = 0; i < rows * columns; i++) {
                visit(cell[offset / columns][offset % columns]);
                offset = (increment + offset) % (rows * columns);
        }

By moving the HDrandom() calls outside of the main loop and visiting
each cell only once, this probably speeds things up quite a bit.  It's
also more resilient to a crummy random sequence.  The new code visits
cells in an order that's probably arbitrary enough for testing purposes.
2019-10-17 16:36:17 -05:00
David Young
fcd490a0bc Use PRIuHADDR. 2019-10-17 13:17:06 -05:00
David Young
8efc3d9757 Move a disused variable inside of the #if 0 region that needs it. 2019-10-17 13:15:54 -05:00
David Young
0850f06862 Repair comments. 2019-10-17 13:14:38 -05:00
Jerome Soumagne
a27403d595 Merge pull request #2000 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:fix_endian_develop to develop
* commit '294e4faab724c26985867fe8ede684967da8a698':
  Fix encode and decode of tokens in H5VLnative
2019-10-11 17:42:02 -05:00
Jerome Soumagne
294e4faab7 Fix encode and decode of tokens in H5VLnative
Fix encode and decode of deprecated object reference addresses

Make H5Rdeprec.c use tokens instead of haddr_t

Fix H5Oopen_by_addr() to serialize addr to token
2019-10-11 17:40:40 -05:00
Jordan Henderson
c4f785bc93 Partial fix for HDFFV-10792 2019-10-10 17:06:13 -05:00
Jordan Henderson
fc479b4012 Merge pull request #1998 in HDFFV/hdf5 from ~JHENDERSON/hdf5:bugfix/H5Dvlen_reclaim_ref_fix to develop
* commit '93f509a2f2d5143450a0e6753325557b2bb8b707':
  Fix various Java issues when deprecated symbols are disabled
2019-10-10 14:33:57 -05:00
Jordan Henderson
93f509a2f2 Fix various Java issues when deprecated symbols are disabled 2019-10-10 13:37:18 -05:00
Jordan Henderson
2d8096c735 Merge pull request #1996 in HDFFV/hdf5 from ~JHENDERSON/hdf5:feature/unify_H5Lcopy_H5Lmove to develop
* commit '54d149061f36eaadf5308839a3627f9158d24458':
  Unify code between H5Lcopy and H5Lmove
2019-10-10 12:49:07 -05:00
Jordan Henderson
54d149061f Unify code between H5Lcopy and H5Lmove 2019-10-09 20:22:45 -05:00
Larry Knox
3506207344 Merge pull request #1993 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '78268762bcf9cb949f711fa0e5290f96957cb60a':
  Improvements in response to  Allen's suggestions.
  Corrections and improvements to testh5dump.sh.in changes.
  Fix errors in testh5dump.sh tests that grep for reference error messages.
2019-10-09 11:38:52 -05:00
Jerome Soumagne
7b416e6239 Merge pull request #1994 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:ref_fix to develop
* commit 'cc1546ea92304e3b8d24ad32aa7252af367d5762':
  Fix func enter macro in H5T_ref_reclaim()
2019-10-09 11:14:05 -05:00
Jerome Soumagne
cc1546ea92 Fix func enter macro in H5T_ref_reclaim() 2019-10-09 11:12:34 -05:00
Larry Knox
78268762bc Improvements in response to Allen's suggestions. 2019-10-09 11:04:15 -05:00
Larry Knox
d1f330fd61 Corrections and improvements to testh5dump.sh.in changes. 2019-10-09 09:36:26 -05:00
Larry Knox
21d69ca15f Fix errors in testh5dump.sh tests that grep for reference error messages. 2019-10-08 23:26:03 -05:00
Larry Knox
1cac341502 Merge pull request #1991 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'd42203b1d44686a0e5309f061c996b959023ce57':
  Change reference test to grep for specific error
2019-10-08 16:20:07 -05:00
David Young
2dd9c3b92f The err_compat test relied on some "lines" on the standard output stream
to end with whitespace padding rather than newlines.  My introduction of
variadic TESTING() got rid of the padding.  I have straightened this out
by newline-terminating the stdout lines in the test program and in its
expected out.  I also add some newlines to the program's standard error
output so that the expected error output still matches.
2019-10-08 16:17:42 -05:00
Allen Byrne
d42203b1d4 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '4c558700ab33934e7358483c5d20fea4823baf9e':
  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.
  Remove debugging logic from the new t_bigio test
  Expanded t_bigio.c to include Jordan's test from HDFFV-10539
  Another cleanup pass as suggested by the reviewers.
  Fix some typos and remove an unused prototype from H5Sprivate.h
  At the suggestion of the PR reviewers, moved the mpio_create_large_type to H5mpi.c and renamed the function appropriately.  Also moved some support functions to set and get the vvalue where we transistion to using derived datatypes.
  Made code review edit suggested by Jerome, plus various code updates to files that I touched to eliminate compile warnings (on my Linux box).
  No functional changes, just removed some tab characters
  Make the initial bug fixes to allow >2GB writes with Independent IO
2019-10-08 16:14:40 -05:00
Jerome Soumagne
4c558700ab Merge pull request #1931 in HDFFV/hdf5 from feature/references to develop
* commit '9ed9762889fcd05dc230d6652b92fddc5ec880a4':
  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-08 15:06:55 -05:00
Richard Warren
e9f253c756 Merge pull request #1987 in HDFFV/hdf5 from HDFFV-10539-2GB-Write-Independent to develop
* commit 'abb43d3d3ac2e802d0efbe21e028381ed99722f9':
  Remove debugging logic from the new t_bigio test
  Expanded t_bigio.c to include Jordan's test from HDFFV-10539
  Another cleanup pass as suggested by the reviewers.
  Fix some typos and remove an unused prototype from H5Sprivate.h
  At the suggestion of the PR reviewers, moved the mpio_create_large_type to H5mpi.c and renamed the function appropriately.  Also moved some support functions to set and get the vvalue where we transistion to using derived datatypes.
  Made code review edit suggested by Jerome, plus various code updates to files that I touched to eliminate compile warnings (on my Linux box).
  No functional changes, just removed some tab characters
  Make the initial bug fixes to allow >2GB writes with Independent IO
2019-10-08 14:57:43 -05:00
Jerome Soumagne
9ed9762889 Update RELEASE.txt for reference changes 2019-10-08 14:51:12 -05:00
Jerome Soumagne
0beba4aac2 Fix reference type comparison in h5dump 2019-10-08 14:30:24 -05:00
Jerome Soumagne
c13078a0ed Make wrappers, tests and tools use H5Treclaim() instead of H5Dvlen_reclaim() 2019-10-08 14:30:24 -05: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
Jerome Soumagne
0f4e080309 Remove ability to loc by ref from H5VL layer 2019-10-08 14:30:24 -05:00
Jerome Soumagne
616567f8a1 Add support for retrieving object name by token 2019-10-08 14:30:24 -05:00
Jerome Soumagne
2c9699a61d Add H5VL_OBJECT_GET_TYPE to get object type
Add H5VL_OBJECT_LOOKUP to lookup objects
2019-10-08 14:30:24 -05:00
Jerome Soumagne
0922e60de2 Add H5VL_MAX_TOKEN_SIZE and H5VL_token_t 2019-10-08 14:30:24 -05:00
Quincey Koziol
bf65652e9b Adapt Jerome's "file info" H5VL 'get' query to retrieve container token info.
Remove "by address" location for VOL operations. (Switching to "by token")
2019-10-08 14:30:24 -05:00
Jerome Soumagne
fa6fdde1bf Fix H5VL_blob_get to return size of blob
Fix const in blob API

Add H5HG_HEAP_ID_SIZE macro to return native blob size

Add maximum size for blobs

Fix blob API callbacks to pass VOL file object

Add public wrappers for blob VOL API

Implement passthrough blob callbacks

Update H5Tvlen after callback changes

Update trace information for H5VL blob routines

Fix public header inclusion in native and passthru headers
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
Richard Warren
abb43d3d3a Remove debugging logic from the new t_bigio test 2019-10-08 15:03:13 -04:00
Richard Warren
06db420929 Expanded t_bigio.c to include Jordan's test from HDFFV-10539 2019-10-08 13:23:32 -04:00
Richard Warren
e2405c1091 Another cleanup pass as suggested by the reviewers. 2019-10-07 19:53:19 -04:00
David Young
c2b841f513 Add NetBSD and Berkeley licenses for struct timespec helper macros. 2019-10-07 17:36:30 -05:00
Richard Warren
d7e83cc510 Fix some typos and remove an unused prototype from H5Sprivate.h 2019-10-07 17:30:15 -04:00
Richard Warren
a97c0d418d At the suggestion of the PR reviewers, moved the mpio_create_large_type to H5mpi.c and renamed the function appropriately. Also moved some support functions to set and get the vvalue where we transistion to using derived datatypes. 2019-10-07 17:22:51 -04:00
Allen Byrne
403c0445fb Change reference test to grep for specific error 2019-10-07 14:00:54 -05:00
David Young
730b2fbcb2 Provide the BSD struct timespec arithmetic macro, timespecsub(). 2019-10-07 12:15:40 -05:00
David Young
19304abb51 Fix an off-by-one error in the retries API that made the test "protect
an entry to verify retries" in `test/cache` fail.
2019-10-07 11:50:20 -05:00
Richard Warren
a074eeda11 Made code review edit suggested by Jerome, plus various code updates to files that I touched to eliminate compile warnings (on my Linux box). 2019-10-07 08:56:05 -04:00
Richard Warren
fa2882c0b3 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into HDFFV-10539-2GB-Write-Independent 2019-10-07 08:10:59 -04:00
Richard Warren
abe2958035 No functional changes, just removed some tab characters 2019-10-05 10:32:32 -04:00
Richard Warren
21a18a1cd2 Make the initial bug fixes to allow >2GB writes with Independent IO 2019-10-05 10:18:17 -04:00
Dana Robinson
f32e70895e Merge pull request #1985 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5Gget_object_behavior_change to develop
* commit 'ff3278f1a0d57663d73caa6aaa7f209864e9a9bd':
  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-04 13:28:12 -05:00
Dana Robinson
ff3278f1a0 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-04 02:03:11 -07:00
David Young
743c9358d1 Introduce PRI*HADDR and PRI*HSIZE for printing haddr_t and hsize_t. 2019-10-03 17:34:05 -05:00
David Young
82f647534c Make some NetBSD compatibility patches. 2019-10-03 17:30:46 -05:00
David Young
b8a93a7224 Let us override the examples directory using --with-examplesdir=DIR.
This is handy for NetBSD where HDF5 examples are installed
by convention in $prefix/share/examples/hdf5/ rather than in
${prefix}/share/hdf5_examples/, which is the HDF5 default.

Place hdf5_examples/ under ${datarootdir} which on most systems will be
${prefix}/share/, anyway.
2019-10-03 16:01:40 -05:00
David Young
bbc1264ea6 Follow longstanding execv convention for compatibility with NetBSD. 2019-10-03 16:01:40 -05:00
David Young
7bb8d071c6 Under the examples directories, always find the installed HDF5
executables and scripts using @prefix@ instead of a relative
path, because the number of ../ in the relative path will be
different on NetBSD than on other systems.

Examples on NetBSD are installed at ${prefix}/share/examples/hdf5/
instead of at ${prefix}/share/hdf5_examples/, by convention.  It may be
the same on other BSDs, I'm not sure.
2019-10-03 16:01:40 -05:00
David Young
6083b740ad Make the HDF5 configure script grok NetBSD. 2019-10-03 16:01:40 -05:00
David Young
cef5db7e1f For portability, insulate the HDF5 library from some system macros. 2019-10-03 16:01:40 -05:00
David Young
7c82abc3ff Not every system has perl installed in /usr/bin/, so change the shebang
(#!) line to `/usr/bin/env perl` to locate perl on the PATH.

Everything after the first pathname in the shebang line is treated as
a single argument to the command interpreter (/usr/bin/env "perl -w"),
and there is not ordinarily any such program as "perl -w".  So if the
old shebang line used an option such as `-w`, add a `use warnings;`
statement to the script---note that the semantics change slightly.
`bin/destdep` uses a trick to pass `-p` to `/usr/bin/env perl`.  It
couldn't hurt to use the same trick to pass `-w`.

With these changes, `sh autogen.sh` runs on NetBSD.  It ought to still
work on every other system HDF5 supports, too.
2019-10-03 16:01:40 -05:00
David Young
af1e100f49 For portability, use the POSIX sh(1) string-comparison operator =
instead of `==`.
2019-10-03 16:01:40 -05:00
Dana Robinson
f2be6da714 Merge pull request #1983 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:small_develop_tweaks to develop
* commit '638d31a78a9ea5db438d30e78f8cbaa1146b7f87':
  Fixed the java assert issue with H5O cache corking calls.
2019-10-03 15:34:15 -05:00
Dana Robinson
638d31a78a Fixed the java assert issue with H5O cache corking calls. 2019-10-03 12:12:23 -07:00
Allen Byrne
35bc2d4592 Merge pull request #1980 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '4394f0776b3e695b9ab383421824e4533da821a8':
  More whitespace changes
  Whitespace cleanup
2019-10-03 12:54:48 -05:00
Allen Byrne
4394f0776b More whitespace changes 2019-10-03 12:10:24 -05:00
Allen Byrne
8e24fe2bc1 Whitespace cleanup 2019-10-03 11:41:25 -05:00
David Young
09bb031cf1 Refactor a bit, remove dead code, move some helper functions to the top
of the file, remove unused variables.
2019-10-02 17:27:24 -05:00
David Young
4311b2ef9d Fix some comments where "read" was written instead of "write." NFCI. 2019-10-02 16:01:27 -05:00
David Young
b1b98cfafe F ix off-by-one bug affecting metadata-read retries: retries == tries - 1. 2019-10-02 15:48:50 -05:00
Allen Byrne
574cc772d5 Merge pull request #1973 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'bc6115931877c6f6d63977f2c03c5e2dbffe3e56':
  HDFFV-10919 merge synching
  HDFFV-10408,10918 Add note
2019-10-02 15:38:39 -05:00
Allen Byrne
bc61159318 HDFFV-10919 merge synching 2019-10-02 15:13:37 -05:00
Allen Byrne
98720d6511 HDFFV-10408,10918 Add note 2019-10-02 13:08:35 -05:00
Allen Byrne
db86b6d397 Merge pull request #1968 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '643d298823255a684862f4c6eb85ac5afde4b796':
  HDFFV-10918 add tests for h5repack ext storage
2019-10-02 12:45:29 -05:00
Allen Byrne
643d298823 HDFFV-10918 add tests for h5repack ext storage 2019-10-01 16:38:48 -05:00
Allen Byrne
f4a8792292 Merge pull request #1966 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '09e6dcbfbb50d359177c9ee72e662287eb04d9c7':
  Add new toolchain file
2019-10-01 11:48:51 -05:00
Vailin Choi
5c9c07b149 Merge pull request #1959 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/iteration_error_in_test_versionbounds to develop
* commit '9ea386b6a660bd29225e96a246439db0c7f73da2':
  Fixed the iteration error in test_versionbounds() in test/dtypes.c.
2019-10-01 10:33:35 -05:00
Allen Byrne
09e6dcbfbb Add new toolchain file 2019-10-01 10:09:16 -05:00
Allen Byrne
69e31596ff Merge pull request #1963 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'bbe81a2155bfa42545579761c4f064353d6f68de':
  fix for statement declare of type
2019-09-30 15:14:02 -05:00
Allen Byrne
bbe81a2155 fix for statement declare of type 2019-09-30 14:50:18 -05:00
David Young
5025be74ea Use int64_t instead of uint64_t to avoid some warnings about sign
conversion.
2019-09-30 14:48:57 -05:00
David Young
20dd9b1372 Initialize data and odata to NULL like the exit sequences
expect.  Free `odata`.
2019-09-30 14:28:13 -05:00
David Young
38f3ece57a Add a test for single-page metadata (SPMDE) writes. Mention in a
comment to myself that I need to reduce code duplication with the MPMDE
test.

In vfd_read_each_equals(), print the correct expected value when there
is a discrepancy.

No functional change intended: correct a comment in
vfd_read_each_equals.  Fix indentation in the test_raw_data_handling()
header comment.
2019-09-30 14:07:15 -05:00
Jake Smith
35dc4b56d0 Merge pull request #1958 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:develop to develop
* commit 'cab37f63144fd24d1ff39359e3d47a2c16198633':
  Move function-scope macro definition to file-scope.
  Refactor external file addition loop to static function.
  fix declaring variable in for statement
2019-09-30 14:00:05 -05:00
Jacob Smith
cab37f6314 Move function-scope macro definition to file-scope. 2019-09-30 13:57:09 -05:00
Allen Byrne
d23453e329 Merge pull request #1960 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f6d4ce609b16601f3f4733266bb413a2bd765bc1':
  Add clang toolchain
2019-09-30 13:35:29 -05:00
Vailin Choi
9ea386b6a6 Fixed the iteration error in test_versionbounds() in test/dtypes.c. 2019-09-30 12:56:49 -05:00
Allen Byrne
f6d4ce609b Add clang toolchain 2019-09-30 12:47:00 -05:00
Jacob Smith
541f50616f Refactor external file addition loop to static function. 2019-09-29 18:52:55 -05:00
Jacob Smith
59aa3afade fix declaring variable in for statement 2019-09-28 16:05:51 -05:00
Larry Knox
4de1fa88c2 Merge pull request #1957 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '3fb711e0ff2516cba7a0cb34f2d8ca38241b06a7':
  Number of arguments requires H5Dopen2.
2019-09-28 14:33:37 -05:00
Larry Knox
3fb711e0ff Number of arguments requires H5Dopen2. 2019-09-28 13:01:30 -05:00
Dana Robinson
279a3f915b Merge pull request #1956 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'a8a55f3c4863b500c4d0e5a2982d3e2b5a05b3cc':
  Corrected missing parallel #ifdefs.
2019-09-27 16:50:00 -05:00
Dana Robinson
a8a55f3c48 Corrected missing parallel #ifdefs. 2019-09-27 14:25:04 -07:00
David Young
de33d5cb3c Rename the metadata test again to reflect how it's checking the page
buffer's treatment of multipage metadata entries (MPMDEs).  Mention why
an H5PB_flush() is not necessary for MPMDEs to reach visibility at the
VFD layer.
2019-09-27 13:34:17 -05:00
David Young
f0596cea65 Don't use FILENAME and FILENAME[0] because that looks like worrisome
macro magic.  Use namebases and namebase, instead.

Extract a bunch of copy-and-paste VFD SWMR setup into a new subroutine,
swmr_fapl_augment().

Make sure that the metadata reads all-0s until it reads all -1s.
Extract a subroutine, vfd_read_each_equals(), that reads and compares a
region with one of its arguments.

Rename from test_basic_metadata_handling() to
test_metadata_delay_basic(), since that gets at what we're testing
better.

Don't perform an H5PB_flush(), it's not necessary for this test because
H5Fvfd_swmr_end_tick() has done essentially the same thing.
2019-09-27 13:09:07 -05:00
David Young
078db93752 Fix a typo: adress -> address. 2019-09-27 12:50:48 -05:00
Vailin Choi
a19de0ec83 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-27 12:39:31 -05:00
Dana Robinson
270a363cdc Merge pull request #1955 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:missing_vol_markup to develop
* commit '4fb64c89fe52a309150ca2d5bb97eb4763e598e9':
  Converted H5O MD cache cork calls to use the VOL.
  Marked up H5Fget/set_mpi_atomicity() to use the VOL.
2019-09-27 12:34:29 -05:00
Dana Robinson
4fb64c89fe Converted H5O MD cache cork calls to use the VOL. 2019-09-26 19:13:35 -07:00
Dana Robinson
fbb0728f54 Marked up H5Fget/set_mpi_atomicity() to use the VOL. 2019-09-26 19:13:13 -07:00
David Young
8b38c2ab1b Skip the metadata accumulator and always perform I/O through the VFD, so
that writes are not delayed.

In H5PB__flush_entry, simplify by eliminating a temporary variable and a
constant.
2019-09-26 17:06:51 -05:00
David Young
b5b9a8907e If a page entry is delayed *until* tick t, and tick t has arrived,
it is eligible to flush *now*, so do that.  Don't wait until tick `t +
1`.
2019-09-26 17:00:05 -05:00
David Young
a6b9394e8c Fix a comment: I don't know what *pbe_ptr was. Refer to page, since
that seems to be the intention.  No functional change intended.
2019-09-26 16:58:38 -05:00
David Young
1b63ff60d2 Rename local variable delay_write_until as until. Reduce
parenthesization in an `if` condition.  Join some lines.  No functional
change intended.
2019-09-26 16:57:22 -05:00
David Young
2fd118ceaf Initialize VFD SWMR configuration block to zeroes. I was hopeful that
this would fix a bug, but I don't think it had any effect.  Still, a
necessary change.
2019-09-26 16:52:41 -05:00
David Young
a68c2c92c3 Oops, straggler from last: rename the nanosecond constants. While I am
here, delete dead code.
2019-09-26 16:49:45 -05:00
David Young
e4f9e45399 SECOND_TO_NANOSECS is the name of a function, not a constant. Rename to
nanosecs_per_second.  Ditto for the tenth-second constant.
2019-09-26 16:48:13 -05:00
David Young
35c049d6a4 Write test data from a different buffer than we read into, since I
anticipate comparing the written buffer with the read buffer.

Don't initialize variables prematurely so that the compiler has a chance
to warn about variables read before they are written.

Repeatedly flush the page buffer, once each time we end the tick.

Write errors to stdout instead of stderr.
2019-09-26 16:43:01 -05:00
David Young
bddf3ff6a5 In H5PB_flush(), skip a page-buffer entry if its write is delayed. 2019-09-26 16:37:15 -05:00
Vailin Choi
7924eee0e5 (1) Address the feedback from the PR review
(2) Add release notes
2019-09-26 14:10:56 -05:00
Vailin Choi
52fef3c6d2 Merge pull request #21 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10585-investigate-slowness-of-regular
* commit '0ea77179d507bd2c29f3b9b357a0c35d4077b29c': (39 commits)
  Fix the errors when updating the versions in the new 1.13 develop branch.
  add missing version to list
  Add new versioned filename to list
  Update N_FSINFO_VERSION_BOUNDS to H5F_LIBVER_NBOUND.
  Remove file script
  Update versioning to next major version
  Update develop branch version to 1.13.0 after creation of hdf5_1_12 branch.
  Merge Binh-Minh's changes for code improvement to chunk_info.c (PR #1942) to develop branch.
  Update to current external file population.
  Revert else-if to single line.
  Fix missing option and incorrect close
  Revert "Moved NDEBUG guards to H5EA_DEBUG in H5EA package."
  Revert "Fix for H5EA debug package when built in release mode."
  Change print calls to HD-wrapped. Minor formatting tweaks (inc. regressions and in-file style-matching).
  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.
  Remove obsolete symbol
  small syntax changes
  Renamed get/set_time() calls in the tools library to avoid name clash when building static parallel HDF5 w/ static linking to OpenMPI.
  Change unused variable to generic form
  Whitespace cleanup
  ...
2019-09-26 13:41:56 -05:00
Vailin Choi
0ea77179d5 Merge pull request #1954 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/ver_bounds_114 to develop
* commit '50ba969a61f8f90212c97aa6e11674fe19fb89f4':
  Fix the errors when updating the versions in the new 1.13 develop branch.
2019-09-26 13:32:42 -05:00
Vailin Choi
50ba969a61 Fix the errors when updating the versions in the new 1.13 develop branch. 2019-09-26 12:35:11 -05:00
Allen Byrne
a38bfab696 Merge pull request #1953 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'e6b029e77e799292eb1ee074b24a224f4613a3b2':
  add missing version to list
2019-09-26 11:52:04 -05:00
Allen Byrne
e6b029e77e add missing version to list 2019-09-26 10:48:37 -05:00
Allen Byrne
7b09c325cb Merge pull request #1951 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'a08b3adecea1034cf0a20a6ff35b9980fb3d8cb8':
  Add new versioned filename to list
2019-09-26 08:59:51 -05:00
Allen Byrne
a08b3adece Add new versioned filename to list 2019-09-26 08:43:41 -05:00
Larry Knox
9c88755922 Merge pull request #1948 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'd931415bb96aae645832898c2f9eee0d02fe69b4':
  Update N_FSINFO_VERSION_BOUNDS to H5F_LIBVER_NBOUND.
2019-09-25 18:07:40 -05:00
Larry Knox
d931415bb9 Update N_FSINFO_VERSION_BOUNDS to H5F_LIBVER_NBOUND. 2019-09-25 17:56:39 -05:00
Larry Knox
a563949da4 Merge pull request #1947 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'd08db4f8550ee023f2303f3064308c1fa9854552':
  Remove file script
  Update versioning to next major version
2019-09-25 17:36:24 -05:00
Allen Byrne
d08db4f855 Remove file script 2019-09-25 17:35:52 -05:00
Allen Byrne
b2f52d0b07 Update versioning to next major version 2019-09-25 17:28:17 -05:00
Allen Byrne
46f81a33dd Merge pull request #1944 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'b04e1ad058fd98fc0b303586dd5f6f19aa645ed0':
  Update develop branch version to 1.13.0 after creation of hdf5_1_12 branch.
2019-09-25 16:23:52 -05:00
Larry Knox
b04e1ad058 Update develop branch version to 1.13.0 after creation of hdf5_1_12
branch.
2019-09-25 16:21:23 -05:00
David Young
4d12df1d21 Commit to the clock_gettime() versions of VFD SWMR and delete the
gettimeofday() alternate.  Perform nanoseconds arithmetic using uint64_t
instead of long to avoid unwanted overflows on 32-bit systems like
my i386 (!) development box.
2019-09-25 15:34:16 -05:00
Larry Knox
6632780f41 Merge pull request #1943 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '2a4bc8c63e842d5e7551e6e75a9ca95c0c2d2886':
  Merge Binh-Minh's changes for code improvement to chunk_info.c (PR #1942) to develop branch.
2019-09-25 15:10:37 -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
David Young
06806a2765 Add to the page buffer a local printf-like debug function that I can
turn on and off.  Use it here and there.
2019-09-25 11:02:40 -05:00
Jake Smith
f77d8f04fd Merge pull request #1756 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:bugfix/repack_external_storage to develop
* commit '9a388325ebaec339f67ddd210ca31ddcc3ede973':
  Update to current external file population.
  Revert else-if to single line.
  Change print calls to HD-wrapped. Minor formatting tweaks (inc. regressions and in-file style-matching).
  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.
  Refactoring.
  Add copyright/disclaimer to repack gentest. Minor formatting tweaks.
  Minor formatting adjustments.
  Undo some formatting modifications. Update MANIFEST.
  Add forgotten files to include from h5repack testfiles for tests.
  Fix failing automated reporting. Add 8-bit big-endian testfile.
  First pass at repack consolidating external storage if layout given. Checks out manually, tests still complain.
  Formatting changes, mostly.
  Add initial failing test for h5repack copying external data into new file.
  Modify code comments for clarity. Some minor reformatting.
  Some minor reformatting. Replace tabs with spaces.
  Add test that uses the family member FAPL setting.
  refactor h5repack_main.c -- remove some redundancy, formatting
  Fit help message to 80 character width and clarify some details.
2019-09-24 16:43:30 -05:00
Jacob Smith
9a388325eb Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~jake.smith/hdf5 into bugfix/repack_external_storage 2019-09-24 16:40:02 -05:00
Allen Byrne
9c73ed788a Merge pull request #1940 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '8a2a500fef227e4f813f0059b365869268354048':
  Fix missing option and incorrect close
2019-09-24 16:12:51 -05:00
Jacob Smith
4ecc50bc13 Update to current external file population. 2019-09-24 15:29:56 -05:00
Jacob Smith
1f7d556ccd Revert else-if to single line. 2019-09-24 15:22:38 -05:00
Allen Byrne
8a2a500fef Fix missing option and incorrect close 2019-09-24 14:49:37 -05:00
David Young
bd0c625e38 Clean up excessive casting and parenthesization. No functional change
intended.
2019-09-24 12:18:40 -05:00
Dana Robinson
6b60b95dbb Merge pull request #1939 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '6eb506eff76b5455f8aac8889c6809aca2d8be52':
  Revert "Moved NDEBUG guards to H5EA_DEBUG in H5EA package."
  Revert "Fix for H5EA debug package when built in release mode."
2019-09-24 10:42:32 -05:00
Dana Robinson
6eb506eff7 Revert "Moved NDEBUG guards to H5EA_DEBUG in H5EA package."
This reverts commit 431123503d.
2019-09-24 05:20:30 -05:00
Dana Robinson
40b2eae5e9 Revert "Fix for H5EA debug package when built in release mode."
This reverts commit 911b1ca67f.
2019-09-24 05:19:44 -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
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
David Young
de2edbb238 Add a basic metadata test for VFD SWMR page buffering. Currently the
test fails....

Make some comments more true to reality and fix a couple of typos.
2019-09-23 14:37:53 -05:00
David Young
a8ebf7c541 Tell the compiler that h5_testing() is a printf-like function. 2019-09-23 14:36:13 -05:00
David Young
d4ecff8319 Fix some incorrect format strings. 2019-09-23 14:35:46 -05:00
Larry Knox
7997eb8c84 Merge pull request #1937 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'cf9eff93e05c9e68d82ebb1fc1e02319e428af35':
  Remove obsolete symbol
  small syntax changes
2019-09-23 12:39:01 -05:00
David Young
0880c57d13 Straggler from last commit: make TESTING() take printf-like varargs
arguments.
2019-09-23 10:34:01 -05:00
David Young
b474650645 Don't calloc() the VFD SWMR configuration, just use a local variable.
Combine the VFD SWMR and non-VFD SWMR raw-data test into one
routine that takes a bool parameter to switch on VFD SMWR.

Update my description of the to-be-written metadata test for VFD SWMR.
2019-09-23 10:30:14 -05:00
David Young
57cfb035ad Delete end-of-block comments, they're uninformative and they make the page
busy.
2019-09-20 14:08:52 -05:00
David Young
89d3461a00 Revise a warning puts() to be more hopeful about VFD SWMR and
multi/split compatibility.
2019-09-20 14:08:52 -05:00
Allen Byrne
cf9eff93e0 Remove obsolete symbol 2019-09-20 09:30:36 -05:00
Allen Byrne
0c49a77c19 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '93e8bbd9f47d6a2eace95f2ed3b2dd4b6336940a':
  Renamed get/set_time() calls in the tools library to avoid name clash when building static parallel HDF5 w/ static linking to OpenMPI.
2019-09-19 16:57:51 -05:00
Dana Robinson
93e8bbd9f4 Merge pull request #1936 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit 'a6930a2bcfd37ea3610baafb608faec883286315':
  Renamed get/set_time() calls in the tools library to avoid name clash when building static parallel HDF5 w/ static linking to OpenMPI.
2019-09-19 16:42:46 -05:00
Allen Byrne
aa8c7b31d7 small syntax changes 2019-09-19 16:32:40 -05:00
Dana Robinson
a6930a2bcf Renamed get/set_time() calls in the tools library to avoid name
clash when building static parallel HDF5 w/ static linking to OpenMPI.
2019-09-19 13:50:49 -07:00
Allen Byrne
80b371f32e Merge pull request #1926 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '8cddc96f73e8f90f67792405f5142b419e9061d7':
  Change unused variable to generic form
  Whitespace cleanup
  Add missing HD prefix
  HDFFV-10740 - skip copying dirs in for loops
  Correct HDF5 options to tristate values.
  HDFFV-10905 fix test scripts for no zlib
  HDFFV-10903 - fix VFD constants in JNI
2019-09-19 14:15:54 -05:00
Allen Byrne
8cddc96f73 Change unused variable to generic form 2019-09-19 13:42:46 -05:00
Vailin Choi
c7b9d5acc6 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-19 13:40:02 -05:00
David Young
752fb97ef3 Don't set up raw-data pages for delayed writes. This prevents
an assertion from firing:

"entry_ptr->delay_write_until == 0" failed: file "../../../vchoi_fork/src/H5PB.c", line 4093, function "H5PB__write_raw"

In a comment, mention a change that has to be made to accommodate parallel
mode.
2019-09-19 12:08:55 -05:00
Vailin Choi
e2be2824f9 Merge pull request #20 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10585-investigate-slowness-of-regular
* commit '4d4a88a9f3775d1c6be820208a2699ae38d586b4': (29 commits)
  Fix for H5EA debug package when built in release mode.
  Moved NDEBUG guards to H5EA_DEBUG in H5EA package.
  Added MPICH_SKIP_MPICXX and OMPI_SKIP_CXX to H5public.h to avoid inadvertant linking to the deprecated MPI C++ wrappers. Fixes HDFFV-10893.
  Added a release note for HDFFV-10892 (fcntl lock bug).
  Fix segfault after H5VL_loc_params_t fix merge
  HDFFV-10901 add missing config options
  HDFFV-10854 add release note for windows
  Fix get home dir for windows
  Use variable for test output
  Allow tests to dump output if not comparing
  revert as CHECK will first check for exception
  Clear exception for getting JNI string to clear the exception
  Correct Windows check
  revert windows change
  Windows ssl headers are not in system loacation
  Add include dirs and default lib for windows
  Add policy to use <package>_ROOT
  Add statement for label if code unimplemented
  Update Windows require for CURL to CMake 3.13
  Fix unused var
  ...
2019-09-19 12:05:08 -05:00
David Young
71499c852b Unse TEST_ERROR instead of the return statement I copied & pasted, oops.
Use a (more) accurate name for the VFD SWMR test routine.
Mention that VFD SWMR isn't expected to work with multi/split VFDs,
yet.
2019-09-19 11:39:13 -05:00
Allen Byrne
ddf23c80fc Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '4d4a88a9f3775d1c6be820208a2699ae38d586b4':
  Fix for H5EA debug package when built in release mode.
2019-09-19 08:48:07 -05:00
Dana Robinson
4d4a88a9f3 Merge pull request #1932 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '911b1ca67fdf7c2f3a32dd42c591e4e9b2fa1950':
  Fix for H5EA debug package when built in release mode.
2019-09-18 16:28:09 -05:00
Dana Robinson
911b1ca67f Fix for H5EA debug package when built in release mode. 2019-09-18 13:25:02 -07:00
Allen Byrne
6f34503a5a Whitespace cleanup 2019-09-18 12:11:12 -05:00
Allen Byrne
4775b6a3d9 Add missing HD prefix 2019-09-18 11:15:58 -05:00
Allen Byrne
624d5d9a8e HDFFV-10740 - skip copying dirs in for loops 2019-09-18 11:04:09 -05:00
Allen Byrne
671649f6f2 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '57f1a2124c65283fc48c4ca700392e1682d0e754':
  Moved NDEBUG guards to H5EA_DEBUG in H5EA package.
2019-09-18 08:46:11 -05:00
Dana Robinson
57f1a2124c Merge pull request #1930 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '431123503d387bce30b1f6db7dc4ad3a33bc51bb':
  Moved NDEBUG guards to H5EA_DEBUG in H5EA package.
2019-09-17 20:17:14 -05:00
Dana Robinson
431123503d Moved NDEBUG guards to H5EA_DEBUG in H5EA package. 2019-09-17 16:53:18 -07:00
Allen Byrne
8e686c8211 Correct HDF5 options to tristate values. 2019-09-17 15:43:27 -05:00
Allen Byrne
564d710e93 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'ab52a0effa605ad6d75cb77cf708bba795cba641':
  Added MPICH_SKIP_MPICXX and OMPI_SKIP_CXX to H5public.h to avoid inadvertant linking to the deprecated MPI C++ wrappers. Fixes HDFFV-10893.
2019-09-17 14:43:36 -05:00
Allen Byrne
3790ba38a1 HDFFV-10905 fix test scripts for no zlib 2019-09-17 14:38:26 -05:00
Dana Robinson
ab52a0effa Merge pull request #1927 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit 'f5a84c9856888446e329dd36bff842e5a2db708c':
  Added MPICH_SKIP_MPICXX and OMPI_SKIP_CXX to H5public.h to avoid inadvertant linking to the deprecated MPI C++ wrappers. Fixes HDFFV-10893.
2019-09-17 14:07:00 -05:00
Dana Robinson
f5a84c9856 Added MPICH_SKIP_MPICXX and OMPI_SKIP_CXX to H5public.h to avoid inadvertant
linking to the deprecated MPI C++ wrappers. Fixes HDFFV-10893.
2019-09-17 10:52:16 -07:00
David Young
9cb455ca87 Add the zygote of VFD SWMR-mode page-buffer tests. 2019-09-17 11:26:18 -05:00
David Young
d001d0ec27 Use calloc instead of malloc so that the VFD SWMR configuration
is initialized to default values.
2019-09-17 11:00:10 -05:00
Allen Byrne
adce9e7f4e HDFFV-10903 - fix VFD constants in JNI 2019-09-17 10:30:04 -05:00
Allen Byrne
f2760f6117 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '046e6e8770212dc020279aba1d7a5c9aa5ec5913':
  Added a release note for HDFFV-10892 (fcntl lock bug).
  Fix segfault after H5VL_loc_params_t fix merge
2019-09-17 09:24:36 -05:00
Dana Robinson
046e6e8770 Merge pull request #1924 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '387d2e671c597a51b4166667a16e740a8e1449fa':
  Added a release note for HDFFV-10892 (fcntl lock bug).
2019-09-16 18:18:02 -05:00
Jordan Henderson
1215cec501 Merge pull request #1923 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit 'db1022ef5dad4ee450ca092b8b471040f405bbcf':
  Fix segfault after H5VL_loc_params_t fix merge
2019-09-16 17:39:04 -05:00
Dana Robinson
387d2e671c Added a release note for HDFFV-10892 (fcntl lock bug). 2019-09-16 15:17:31 -07:00
David Young
73e07e2573 Make whitespace consistent: no leading tabs! 2019-09-16 16:57:35 -05:00
David Young
f16d86d3e7 Update function documentation. NFCI. 2019-09-16 16:31:04 -05:00
Jordan Henderson
db1022ef5d Fix segfault after H5VL_loc_params_t fix merge 2019-09-16 15:35:09 -05:00
Allen Byrne
70284ba85e Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'c1c522f6ce8f6d7e44e6ea99860b19228f46952a':
  Fix issue in H5Lcreate_hard and H5Olink where entire H5VL_loc_params_t structure was passed via varargs
2019-09-16 11:38:48 -05:00
Allen Byrne
c1c522f6ce Merge pull request #1922 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b477f9bcc7bb83d7c06e1d09f428030f51d71897':
  HDFFV-10901 add missing config options
2019-09-16 11:38:30 -05:00
Jordan Henderson
72e8387bc9 Merge pull request #1887 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '0de0965c61823186ac61c0d6876d4d77578e5bcc':
  Fix issue in H5Lcreate_hard and H5Olink where entire H5VL_loc_params_t structure was passed via varargs
2019-09-16 11:34:00 -05:00
Allen Byrne
b477f9bcc7 HDFFV-10901 add missing config options 2019-09-13 11:34:00 -05:00
Allen Byrne
cafab483ff Merge pull request #1920 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '05f49d5ffdbd4cf9e967d60a3a0efd0ca7f2c820': (22 commits)
  HDFFV-10854 add release note for windows
  Fix get home dir for windows
  Use variable for test output
  Allow tests to dump output if not comparing
  revert as CHECK will first check for exception
  Clear exception for getting JNI string to clear the exception
  Correct Windows check
  revert windows change
  Windows ssl headers are not in system loacation
  Add include dirs and default lib for windows
  Add policy to use <package>_ROOT
  Add statement for label if code unimplemented
  Update Windows require for CURL to CMake 3.13
  Fix unused var
  Add updated find module for earlier CMake versions
  Correct label and var names
  Add back missing java implementation
  use h5test.h
  add test library
  special windows override
  ...
2019-09-13 11:33:00 -05:00
Allen Byrne
05f49d5ffd HDFFV-10854 add release note for windows 2019-09-12 15:13:42 -05:00
Allen Byrne
50287cb9d2 Fix get home dir for windows 2019-09-12 14:22:43 -05:00
David Young
2cb57cb926 Enable h5ls to use VFD SWMR. 2019-09-12 14:17:33 -05:00
David Young
1f4dd5692d Use h5_retry_init/_next to retry loading the SWMR shadow file. 2019-09-12 14:16:49 -05:00
David Young
0a81436fab Convert several warnings about const to non-const conversion at H5Tcopy()
invocations to one warning in the H5Tcopy() implementation.
2019-09-12 13:52:38 -05:00
David Young
faf3336f52 Quiet compiler warnings about signedness by changing a signed
integer to an unsigned one.
2019-09-12 13:51:39 -05:00
David Young
93352e65ea Ignore vim swap files and ctags files. 2019-09-12 13:48:52 -05:00
Allen Byrne
e37b474374 Use variable for test output 2019-09-11 14:09:25 -05:00
Allen Byrne
24f863dfba Allow tests to dump output if not comparing 2019-09-11 12:51:31 -05:00
David Young
70152bbd6c Replace a missing curly brace. 2019-09-10 16:38:27 -05:00
David Young
9e2d4344de Merge the latest h5_retry_t code from my sleepy branch. 2019-09-10 15:27:38 -05:00
Allen Byrne
e20331651e revert as CHECK will first check for exception 2019-09-10 14:19:29 -05:00
Allen Byrne
afb07f9b39 Clear exception for getting JNI string to clear the exception 2019-09-10 13:47:24 -05:00
Vailin Choi
cf0fb665ac Merge pull request #19 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10585-investigate-slowness-of-regular
* commit '2456a36f46a15ca44840cb64c7aac213f0ca8bf8': (53 commits)
  Fixed some exit calls.
  Reworked the previously refactorred code.
  Improvement of test code
  Fix CMake build of test needing compression libs
  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.
  Add comment to add tests later to verify conflicting values for MPI-specific properties on multiple opens.
  Updated comments
  Updated based on reviews and refactored test code
  Move ext_path field in H5F_t to H5F_shared_t. Remove unused routine H5F_set_coll_md_read().
  Move coll_md_read and coll_md_write fields in H5F_t to H5F_shared_t.
  Fix namespace usage
  Fix EXISTS test syntax
  Update settings
  Add 32-bit cross-compile toolchain
  Code cleanup and refactor
  Re-ordered items w.r.t. date.
  Whitespace and HD prefix changes
  Fixed typo
  Added notes about HDFFV-10677 and HDFFV-10661
  ...
2019-09-10 13:27:01 -05:00
Dana Robinson
2456a36f46 Merge pull request #1919 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '78fda912952d977ec6b157d344834112c363dd26':
  Fixed some exit calls.
2019-09-10 11:54:38 -05:00
Dana Robinson
78fda91295 Fixed some exit calls. 2019-09-06 18:06:26 -07:00
Allen Byrne
6eb6e0db8d Correct Windows check 2019-09-06 15:24:52 -05:00
Allen Byrne
0d964c2f88 revert windows change 2019-09-06 11:01:25 -05:00
Allen Byrne
acdeee8c6a Windows ssl headers are not in system loacation 2019-09-06 10:17:40 -05:00
Allen Byrne
7b2b2a73a1 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5b9f3660d7419fde023e3f277fb8f7d742fa255e':
  Reworked the previously refactorred code.
  Improvement of test code
2019-09-06 09:36:05 -05:00
Allen Byrne
677f8e6f31 Add include dirs and default lib for windows 2019-09-05 17:25:27 -05:00
Allen Byrne
bad125a071 Add policy to use <package>_ROOT 2019-09-05 16:54:24 -05:00
Allen Byrne
3e816bd089 Add statement for label if code unimplemented 2019-09-05 15:49:57 -05:00
Binh-Minh Ribler
5b9f3660d7 Merge pull request #1918 in HDFFV/hdf5 from ~BMRIBLER/hdf5-bmr:develop to develop
Revised tests.

* commit '716125887d3954239d280890b4cbb13288f5eeaa':
  Reworked the previously refactorred code.
  Improvement of test code
2019-09-05 15:47:37 -05:00
Allen Byrne
9857dc553f Update Windows require for CURL to CMake 3.13 2019-09-05 15:41:07 -05:00
Allen Byrne
60cc470a35 Fix unused var 2019-09-05 15:21:02 -05:00
Allen Byrne
ff4cb06d42 Add updated find module for earlier CMake versions 2019-09-05 14:58:07 -05:00
Allen Byrne
3467de59f8 Correct label and var names 2019-09-05 14:57:35 -05:00
Allen Byrne
dcab85c83b Add back missing java implementation 2019-09-05 14:35:33 -05: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
Allen Byrne
e3e9cf04b0 use h5test.h 2019-09-05 11:44:32 -05:00
Allen Byrne
d5de03225f add test library 2019-09-05 11:43:00 -05:00
Allen Byrne
a88f98ae82 special windows override 2019-09-05 09:50:42 -05:00
Allen Byrne
1ca7384532 Correct name and add mingw to 32bit toolchain 2019-09-05 09:45:25 -05:00
Allen Byrne
f651cb4747 Fix build for tools library test 2019-09-05 09:35:54 -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
b1dab421de Merge pull request #1917 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '781843da4b90d6d22f8a27b6abaad441631ab3d1':
  Fix CMake build of test needing compression libs
2019-09-03 12:59:05 -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
daecf8f06d Changed H5VL_NATIVE_DATASET_GET_CHUNK_INFO_BY_COOR to
H5VL_NATIVE_DATASET_GET_CHUNK_INFO_BY_COORD per a review comment.
2019-09-03 08:03:28 -05:00
Vailin Choi
ec90f31106 Merge pull request #1914 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/shared_file_pointer to develop
* commit '62750441cdfbf17f7fa5db3bbf1320c1dc5be838':
  Add comment to add tests later to verify conflicting values for MPI-specific properties on multiple opens.
  Move ext_path field in H5F_t to H5F_shared_t. Remove unused routine H5F_set_coll_md_read().
  Move coll_md_read and coll_md_write fields in H5F_t to H5F_shared_t.
2019-09-02 21:27:19 -05:00
Vailin Choi
62750441cd Add comment to add tests later to verify conflicting values for MPI-specific properties on multiple opens. 2019-09-02 12:59:48 -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
Vailin Choi
eef0cf2694 Move ext_path field in H5F_t to H5F_shared_t.
Remove unused routine H5F_set_coll_md_read().
2019-08-31 01:24:38 -05:00
Vailin Choi
fe3c4567f5 Move coll_md_read and coll_md_write fields in H5F_t to H5F_shared_t. 2019-08-30 23:06:04 -05:00
Allen Byrne
373df11c46 Merge pull request #1911 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'e6c11af8704c3ac923dd6afcefaf20c568157770':
  Fix namespace usage
  Fix EXISTS test syntax
  Update settings
  Add 32-bit cross-compile toolchain
2019-08-30 09:25:16 -05:00
Allen Byrne
e6c11af870 Fix namespace usage 2019-08-29 16:22:21 -05:00
Allen Byrne
0b6f5e88cd Fix EXISTS test syntax 2019-08-29 14:43:35 -05:00
Allen Byrne
ed4cbbcc9b Update settings 2019-08-29 13:18:35 -05:00
Allen Byrne
fa540a3af8 Add 32-bit cross-compile toolchain 2019-08-29 10:36:12 -05:00
Binh-Minh Ribler
a633e33334 Code cleanup and refactor 2019-08-29 00:53:40 -05:00
Binh-Minh Ribler
3adadb92e2 Re-ordered items w.r.t. date. 2019-08-28 18:06:51 -05:00
Allen Byrne
37532a3688 Merge pull request #1904 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '1efd23ff02b9bc1a3d303d53395245d1366588be':
  Whitespace and HD prefix changes
  fix get gethostname for windows
  OESS-29 Fix HD prefix in perform and enable test compile
  HDFFV-10876 h5dump OPAQUE size should be optional
2019-08-28 15:18:02 -05:00
David Young
508cfab552 Tand the he VFD SWMR test script used | tee to redirect test programs'
output, then it tested $? for an error exit.  $? told the error status of
`tee`, though, not the test programs!  So no test failures were counted, even
when some tests clearly failed.  I changed the test script to use a shell
subroutine, `catch_out_err_and_rc`, to catch test programs' output and result
code.
2019-08-28 13:21:26 -05:00
David Young
e178ab0e11 Consolidate VFD SWMR variable declarations in a new header file,
H5FDvfd_swmr_private.h.

Perform tick processing in FUNC_ENTER_API_NOCLEAR, where it was missing.

Track the number of times the HDF5 library has been entered/exited through its
public API.  Only perform tick processing on the first entry and last exit.
This stops us from performing tick processing in API calls invoked by
application callbacks.  Performing tick processing in nested API calls led to
crashes.

Note well: FUNC_LEAVE_API now performs tick processing even on an error exit!
Previously, it did not.  I'm not sure if the change is ok.
2019-08-28 12:58:08 -05:00
Allen Byrne
1efd23ff02 Whitespace and HD prefix changes 2019-08-28 11:11:32 -05:00
Binh-Minh Ribler
8cc3c58f9d Fixed typo 2019-08-28 10:36:40 -05:00
Binh-Minh Ribler
6858ee6495 Added notes about HDFFV-10677 and HDFFV-10661 2019-08-28 10:33:31 -05:00
Allen Byrne
43ff3fdc33 fix get gethostname for windows 2019-08-28 10:19:03 -05:00
Binh-Minh Ribler
7857a59bf0 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5-bmr into develop 2019-08-28 10:14:10 -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
a6df73c723 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'fb8296371cf45654a9252ed01b635519205da3de':
  Minor tweaks to new H5P MPI code based on code review feedback.
  Fixed a bug in the cache image code that was introduced by the HD changes.
  Added H5Pset/get_mpi_params calls and unified them with the MPI-I/O VFD info in H5FDmpio.c.
2019-08-27 16:56:20 -05:00
Allen Byrne
09d13b3c13 OESS-29 Fix HD prefix in perform and enable test compile 2019-08-27 16:49:10 -05:00
Dana Robinson
fb8296371c Merge pull request #1896 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5Pset_fapl_mpi to develop
* commit '937616872cf228f838fd1eb2853ce6110f3da10b':
  Minor tweaks to new H5P MPI code based on code review feedback.
  Fixed a bug in the cache image code that was introduced by the HD changes.
  Added H5Pset/get_mpi_params calls and unified them with the MPI-I/O VFD info in H5FDmpio.c.
2019-08-27 16:17:50 -05:00
Dana Robinson
937616872c Minor tweaks to new H5P MPI code based on code review feedback. 2019-08-27 14:00:49 -07:00
Dana Robinson
477bd6cd77 Merge branch 'develop_minor_pr' into H5Pset_fapl_mpi 2019-08-27 13:28:55 -07:00
Dana Robinson
7dfe176924 Fixed a bug in the cache image code that was introduced by the HD
changes.
2019-08-27 13:26:22 -07:00
Allen Byrne
369d17c05c HDFFV-10876 h5dump OPAQUE size should be optional 2019-08-27 15:10:37 -05:00
Dana Robinson
1b95221105 Merge pull request #1903 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '9a4f86997ad160bcc8a3f9eefdbd92d4a63e14c6':
  Fixed typo from HD changes
2019-08-27 14:26:34 -05:00
Dana Robinson
9a4f86997a Fixed typo from HD changes 2019-08-27 12:20:12 -07:00
Dana Robinson
89928e7c21 Merge branch 'develop' into H5Pset_fapl_mpi 2019-08-27 12:19:03 -07:00
Dana Robinson
91a34039ba Merge pull request #1902 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:fcntl_lock_bug to develop
* commit 'd42de626b604b75963fd593a145fd9c9b9e20602':
  Fixed a bug where we incorrectly pass a lock struct to fcntl for file locking instead of a pointer.
2019-08-27 14:10:30 -05:00
Allen Byrne
506a5069a8 Merge pull request #1899 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '392340062b7c130a02368aee79bc34ba9868038a':
  Add HD prefix
2019-08-27 10:26:38 -05:00
Allen Byrne
392340062b Add HD prefix 2019-08-27 09:21:08 -05:00
Dana Robinson
d42de626b6 Fixed a bug where we incorrectly pass a lock struct to fcntl
for file locking instead of a pointer.
2019-08-27 07:03:51 -07:00
Allen Byrne
9689c6cf0a Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'ddf04a9a727252f40197c48da541212dff646046':
  Add a 'closing' flag on the shared file struct, and switch several of the "internal" data structures to use it.
  Fixed the assertion failure for HDFFV-10873.
2019-08-27 08:43:19 -05:00
Allen Byrne
ddf04a9a72 Merge pull request #1893 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ba974c031deb709b6d4241da95485b48d747afdd':
  OESS-29 Update HD prefix mostly
2019-08-27 08:43:03 -05:00
Dana Robinson
68cd4eea0e Merge branch 'develop' into H5Pset_fapl_mpi 2019-08-27 02:42:18 -07:00
Quincey Koziol
6e8c48182f Merge pull request #1897 in HDFFV/hdf5 from ~KOZIOL/hdf5:refactor_file to develop
* commit '3090ac81506094ee510ae89c31749b5c1632aa34':
  Add a 'closing' flag on the shared file struct, and switch several of the "internal" data structures to use it.
2019-08-26 17:25:17 -05:00
Quincey Koziol
3090ac8150 Add a 'closing' flag on the shared file struct, and switch several of the
"internal" data structures to use it.
2019-08-26 14:38:58 -05:00
Dana Robinson
3bcbce5538 Added H5Pset/get_mpi_params calls and unified them with the MPI-I/O
VFD info in H5FDmpio.c.
2019-08-26 10:26:31 -07:00
Vailin Choi
a367340a17 Merge pull request #1892 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10873-assertion-v-oh--nmesgs-failed to develop
* commit '021919206df7764f951037ae76ccae006b2eea99':
  Fixed the assertion failure for HDFFV-10873.
2019-08-26 12:02:31 -05:00
Allen Byrne
ba974c031d OESS-29 Update HD prefix mostly 2019-08-24 14:07:33 -05:00
Vailin Choi
021919206d Fixed the assertion failure for HDFFV-10873. 2019-08-23 15:06:19 -05:00
Quincey Koziol
884ad149e2 Merge pull request #1889 in HDFFV/hdf5 from ~KOZIOL/hdf5:shared_file_ptr to develop
* commit 'f42c7cc0d85cc5b232afd621711fdbd64f6e19d9':
  Fix major error codes
  Switch shared file struct name from 'H5F_file_t' to 'H5F_shared_t', to match naming convention for shared structs in rest of library data structures.
  Small tidy up.
  Progress toward movig H5MF* API to use shared file pointers instead of top file pointers.
  Progress on moving the H5MF* interface to using shared file pointers instead of top file pointers.
  Begin converting the H5MF interface to use shared file pointers instead of top file pointers.
  Progress toward moving the dataset routines to using the 'shared' file pointer instead of the 'top' file pointer.
  Begin converting dataset code to use shared file pointer instead of top file pointer.
  Finish converting H5PB_* routines to use shared file pointer, instead of top file pointer.
  First pass of converting H5PB_* routines to use shared file pointers.
  Rest of changes for 'top' file pointer to 'shared' file pointer for H5F__accum routines.
  Partial H5F__accum_* routines.
2019-08-23 10:21:08 -05:00
Quincey Koziol
f42c7cc0d8 Fix major error codes 2019-08-22 17:06:00 -05:00
dyoung
1f728439dd In the error message, provide specific information that will help the
developer fix the error.
2019-08-22 14:57:33 -05:00
dyoung
61109c76b2 Quiet warnings, especially signed/unsigned casts. 2019-08-22 14:10:11 -05:00
Quincey Koziol
c36d2eeae7 Switch shared file struct name from 'H5F_file_t' to 'H5F_shared_t', to match
naming convention for shared structs in rest of library data structures.
2019-08-22 13:28:20 -05:00
Quincey Koziol
5d6f27b32b Merge branch 'develop' into shared_file_ptr 2019-08-21 15:36:17 -05:00
Quincey Koziol
0b85fa6004 Small tidy up. 2019-08-21 15:34:43 -05:00
Jordan Henderson
0de0965c61 Fix issue in H5Lcreate_hard and H5Olink where entire H5VL_loc_params_t structure was passed via varargs 2019-08-21 11:56:50 -05:00
Quincey Koziol
d3545afbc5 Progress toward movig H5MF* API to use shared file pointers instead of top
file pointers.
2019-08-20 21:55:16 -05:00
Quincey Koziol
901c42640f Progress on moving the H5MF* interface to using shared file pointers instead of
top file pointers.
2019-08-20 21:32:13 -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
Quincey Koziol
2ef7eb51b9 Progress toward moving the dataset routines to using the 'shared' file pointer
instead of the 'top' file pointer.
2019-08-20 20:38:10 -05:00
Dana Robinson
f0272e4945 Merge pull request #1886 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit 'e747237a9c03e551eef017cf4a0de5d67ca4fd71':
  Removed unnecessary H5S_FRIEND and dead code.
2019-08-20 19:55:41 -05:00
Quincey Koziol
67d7d28c03 Begin converting dataset code to use shared file pointer instead of top file
pointer.
2019-08-20 18:21:53 -05:00
Quincey Koziol
25f982abbd Finish converting H5PB_* routines to use shared file pointer, instead of top
file pointer.
2019-08-20 17:26:10 -05:00
Dana Robinson
e747237a9c Removed unnecessary H5S_FRIEND and dead code. 2019-08-20 13:16:20 -07:00
Dana Robinson
c5ba214097 Merge pull request #1884 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:new_vfd_build_cleanup to develop
* commit '3ee329cb463538cceffef722101fb28e37fbddcb':
  Untangle #ifdef mess in ROS3 code.
2019-08-20 11:22:29 -05:00
Dana Robinson
3ee329cb46 Merge branch 'develop' into new_vfd_build_cleanup 2019-08-19 18:16:30 -07:00
Dana Robinson
8c40dab59e Untangle #ifdef mess in ROS3 code. 2019-08-19 18:02:47 -07:00
Quincey Koziol
f285c76ef2 First pass of converting H5PB_* routines to use shared file pointers. 2019-08-19 18:48:06 -05: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
Larry Knox
a63c20cdd0 Merge pull request #1883 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '92f103cfd4b19b61a0ddf6e62e1692d2b3eeb4d9':
  Add H5_DLL to all s3comms function prototypes to stop Windows unresolved external symbols errors.  HDFFV-10889.
2019-08-19 16:05:18 -05:00
Allen Byrne
8b6f3bc7e6 Merge pull request #1882 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '935f27c1b803faf981131ff936619aecd9f76e38':
  HDFFV-10887 Implement requested functions
2019-08-19 12:46:56 -05:00
Larry Knox
92f103cfd4 Add H5_DLL to all s3comms function prototypes to stop Windows unresolved
external symbols errors.  HDFFV-10889.
2019-08-19 12:03:44 -05:00
Allen Byrne
935f27c1b8 HDFFV-10887 Implement requested functions 2019-08-19 11:58:52 -05:00
Allen Byrne
06e5cbd541 Merge pull request #1880 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '9081fb266cc15198e0c75a77f23f2b252c6ee79f':
  Add missing HD prefix
  This test cannot use HD prefix macro with printf of fprintf
  Update HD prefix and reconcile hl/cpp test
  Add HD prefix to tests
2019-08-19 09:04:05 -05:00
Vailin Choi
798c580fc3 Merge pull request #18 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10585-investigate-slowness-of-regular
* commit 'dcf084aff42d3abafaa82b356493a2d1585afb85': (25 commits)
  Changes based on PR feedback.
  Correct name of folder
  Mostly whitespace in testpar, addl changes for tmp dir
  Whitespace cleanup
  Added public H5Sselect_adjust_u and H5Shyper_adjust_s calls.
  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.
  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.
  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.
  Fix H5F_get_file_id and H5F__get_file_id to take app_ref parameter
  HDFFV-10879 fix test varname
  Fix for HDFFV-10813 H5Fset_metadata_read_retry_info() test fails on jelly with PGI/19.
  Added map API build status to libhdf5.settings.
  Updated h5trav.c to emit output that doesn't require ddl changes for map support.
  HDFFV-10879 set default API version
  Fixed Map API CMake option
  Renamed H5Mdelete_key to H5Mdelete and H5Mset to H5Mput.
  Remove old code
  Correct error test spelling and use
  Added ifdef for intel compilers, __GNUC__ has to be defined for header files which use it to work with intel compilers. This gives a warning for intel compiler about fallthrough, so added a check not to include fallthrough if using intel compilers.
  ...
2019-08-18 21:36:06 -05:00
Allen Byrne
9081fb266c Add missing HD prefix 2019-08-18 11:33:45 -05:00
Allen Byrne
2bce24576e This test cannot use HD prefix macro with printf of fprintf 2019-08-17 13:33:41 -05:00
Allen Byrne
228ef0684e Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'dcf084aff42d3abafaa82b356493a2d1585afb85':
  Changes based on PR feedback.
  Fix for HDFFV-10813 H5Fset_metadata_read_retry_info() test fails on jelly with PGI/19.
2019-08-17 13:25:26 -05:00
Allen Byrne
96bf97f534 Update HD prefix and reconcile hl/cpp test 2019-08-16 13:23:29 -05:00
Vailin Choi
dcf084aff4 Merge pull request #1865 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10813-swmr-test-fails-on-jelly-with to develop
* commit '538f743c145fbbfa7b1119693efd2ff61b34efae':
  Changes based on PR feedback.
  Fix for HDFFV-10813 H5Fset_metadata_read_retry_info() test fails on jelly with PGI/19.
2019-08-16 11:52:42 -05:00
Vailin Choi
538f743c14 Changes based on PR feedback. 2019-08-15 17:51:15 -05:00
Allen Byrne
64e6665b54 Add HD prefix to tests 2019-08-15 16:46:15 -05:00
Vailin Choi
8d7ff1048b Merge pull request #17 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10813-swmr-test-fails-on-jelly-with
* commit '3a504899eef1a66031c6f52623c24bb4e51ca51e':
  Correct name of folder
  Mostly whitespace in testpar, addl changes for tmp dir
  Whitespace cleanup
  Added public H5Sselect_adjust_u and H5Shyper_adjust_s calls.
  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.
  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.
  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.
  Fix H5F_get_file_id and H5F__get_file_id to take app_ref parameter
  HDFFV-10879 fix test varname
2019-08-15 16:34:01 -05:00
Allen Byrne
3a504899ee Merge pull request #1875 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '8ef09e5ce9f191c2a7af301f1aec9254f4458a50':
  Correct name of folder
  Mostly whitespace in testpar, addl changes for tmp dir
  Whitespace cleanup
2019-08-15 12:08:16 -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
Allen Byrne
f5a250e77c Whitespace cleanup 2019-08-15 09:03:03 -05:00
Dana Robinson
6b8d369a0c Merge pull request #1873 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5Pset_fapl_mpi to develop
* commit 'bd8da502cf5b763433e3c628a4043a4264529cec':
  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 19:34:56 -05:00
Dana Robinson
300372ce33 Merge pull request #1874 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:h5s_api_for_daos to develop
* commit 'c490fefbc3199d45fa4d3af09dd567671a244e8d':
  Added public H5Sselect_adjust_u and H5Shyper_adjust_s calls.
2019-08-14 19:33:19 -05:00
Jerome Soumagne
2348341198 Merge pull request #1869 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:topic_file_get_id to develop
* commit '7f5a5020c8ec882e6b7eceab878470003e2a8b63':
  Fix H5F_get_file_id and H5F__get_file_id to take app_ref parameter
2019-08-14 19:15:17 -05:00
Dana Robinson
c490fefbc3 Added public H5Sselect_adjust_u and H5Shyper_adjust_s calls. 2019-08-14 17:09:11 -07: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
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
Jacob Smith
2e5cd3d2b2 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:36:45 -05:00
Allen Byrne
05edbabbb5 Merge pull request #1866 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '2102be3259c14a1e4d94e8526894a16fd389f59d':
  HDFFV-10879 fix test varname
2019-08-14 15:29:41 -05:00
Songyu Lu
0b868668ba Changed the directory name left out from the previous commit. 2019-08-14 15:22:06 -05:00
Songyu Lu
b234263bbf Changed the name of the temporary directory from 'tmp' to a special name to avoid possible conflicts. 2019-08-14 15:08:46 -05:00
Jerome Soumagne
7f5a5020c8 Fix H5F_get_file_id and H5F__get_file_id to take app_ref parameter
Fix app_ref_count from being incremented when private routines are used
2019-08-14 14:46:39 -05:00
Allen Byrne
2102be3259 HDFFV-10879 fix test varname 2019-08-14 13:50:25 -05:00
Vailin Choi
10bea9ac46 Fix for HDFFV-10813 H5Fset_metadata_read_retry_info() test fails on jelly with PGI/19. 2019-08-14 12:43:18 -05:00
Vailin Choi
674a945cc7 Merge pull request #16 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10813-swmr-test-fails-on-jelly-with
* commit '2b72832d97496290f74ccaffcda41c3e596f8f49':
  Added map API build status to libhdf5.settings.
2019-08-14 11:25:16 -05:00
Dana Robinson
2b72832d97 Merge pull request #1863 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:map_api_merge to develop
* commit '7555bc95d91aa99344cdc3a66d47eb44decad4ac':
  Added map API build status to libhdf5.settings.
2019-08-14 09:35:55 -05:00
Dana Robinson
7555bc95d9 Added map API build status to libhdf5.settings. 2019-08-13 23:07:48 -07:00
Allen Byrne
a5d37a2419 Merge pull request #1862 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'e42120c308b619e58f412e167f4449fd003f8ca9':
  HDFFV-10879 set default API version
  Remove old code
  Correct error test spelling and use
2019-08-13 13:27:35 -05:00
Allen Byrne
e42120c308 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'aeb145428f5e6bc51742fff031b0cf8cf6fbefbb':
  Updated h5trav.c to emit output that doesn't require ddl changes for map support.
  Fixed Map API CMake option
  Renamed H5Mdelete_key to H5Mdelete and H5Mset to H5Mput.
  Added ifdef for intel compilers, __GNUC__ has to be defined for header files which use it to work with intel compilers. This gives a warning for intel compiler about fallthrough, so added a check not to include fallthrough if using intel compilers.
  Added the map (H5M) API
2019-08-13 13:15:55 -05:00
Dana Robinson
aeb145428f Merge pull request #1860 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:map_api_merge to develop
* commit 'd95745235a468b17f697843adb3d0e54bd919893':
  Updated h5trav.c to emit output that doesn't require ddl changes for map support.
  Fixed Map API CMake option
  Renamed H5Mdelete_key to H5Mdelete and H5Mset to H5Mput.
  Added the map (H5M) API
2019-08-13 12:57:19 -05:00
Dana Robinson
d95745235a Updated h5trav.c to emit output that doesn't require ddl changes for map
support.
2019-08-13 10:55:34 -07:00
Allen Byrne
7b8ffecc20 HDFFV-10879 set default API version 2019-08-13 11:04:13 -05:00
Dana Robinson
dd2133f56e Fixed Map API CMake option 2019-08-13 08:53:09 -07:00
Dana Robinson
5024051e35 Renamed H5Mdelete_key to H5Mdelete and H5Mset to H5Mput. 2019-08-13 08:46:56 -07:00
Scot Breitenfeld
60b62b10f1 Merge pull request #1861 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'df7ce9a5c933315af34dd402cfb2ca394003b56b':
  Added ifdef for intel compilers, __GNUC__ has to be defined for header files which use it to work with intel compilers. This gives a warning for intel compiler about fallthrough, so added a check not to include fallthrough if using intel compilers.
2019-08-13 10:36:55 -05:00
Allen Byrne
ac4f82fcd4 Remove old code 2019-08-13 10:26:43 -05:00
Allen Byrne
a7281b117c Correct error test spelling and use 2019-08-13 10:25:05 -05:00
M. Scot Breitenfeld
df7ce9a5c9 Added ifdef for intel compilers, __GNUC__ has to be defined for header files which use it to work with intel compilers. This gives a warning for intel compiler about fallthrough, so added a check not to include fallthrough if using intel compilers. 2019-08-13 10:10:23 -05:00
Dana Robinson
5b6bd7c922 Added the map (H5M) API 2019-08-13 01:36:42 -07:00
Allen Byrne
e874070dbb Merge pull request #1856 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'c476f020769d8f78581ef399c59e3d4e6e202b2f':
  HDFFV-10879 fix reference file
  HDFFV-10879 correct API version set command
2019-08-12 15:58:48 -05:00
Allen Byrne
c476f02076 HDFFV-10879 fix reference file 2019-08-12 15:38:15 -05:00
Allen Byrne
b28636464e HDFFV-10879 correct API version set command 2019-08-12 15:19:11 -05:00
Allen Byrne
3af5cce895 Merge pull request #1853 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'd172582ca9573d685a4c3a9a6399113014da4b21':
  Use a STRING option for API version
  Fix API version option
2019-08-12 14:20:01 -05:00
Allen Byrne
d172582ca9 Use a STRING option for API version 2019-08-12 12:45:29 -05:00
Allen Byrne
2d6bb8b95c Fix API version option 2019-08-12 11:24:36 -05:00
Allen Byrne
e96815ebd8 Merge pull request #1844 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '07af403991ae8950d1f930f5a6db2c7124ae8f91':
  Add option to explicitly disable extra tests
2019-08-09 11:00:47 -05:00
Scot Breitenfeld
318dfdaba1 Merge pull request #1847 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'c56509b490d6834340dedcd3120893028ccb6e8c':
  Added gcc conditional for __attribute__((fallthrough)), removes 34 warnings on theta (10% of warnings).
2019-08-09 08:32:58 -05:00
Dana Robinson
6f4f4adaa2 Merge pull request #1848 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '4900f8823497c63e9f9464dcb6459ebdcbfdac8d':
  Fixed an issue with older version of gfortran.
2019-08-08 23:02:07 -05:00
Dana Robinson
4900f88234 Fixed an issue with older version of gfortran. 2019-08-08 18:46:59 -07:00
M. Scot Breitenfeld
c56509b490 Added gcc conditional for __attribute__((fallthrough)), removes 34 warnings on theta (10% of warnings). 2019-08-08 16:29:57 -05:00
Allen Byrne
07af403991 Add option to explicitly disable extra tests 2019-08-07 15:18:30 -05:00
Larry Knox
0ce619b92d Merge pull request #1843 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'c3c044cc003d6a4039635e638e1cd1c2487be177':
  Escape { and } in regex as required by sh in updated cori.nersc.gov. Tested change on jam, jelly, emu, ostrich and osx1011test.
2019-08-07 14:55:45 -05:00
Allen Byrne
92d79a5840 Merge pull request #1839 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '83b23a5a42c2124c1c5933d0565be1bbefd1c30d':
  Use prefix variable
  Cleanup HD prefix
  Merge reconciliation and VFD test fixes
2019-08-07 13:55:02 -05:00
Larry Knox
c3c044cc00 Escape { and } in regex as required by sh in updated cori.nersc.gov.
Tested change on jam, jelly, emu, ostrich and osx1011test.
2019-08-07 11:51:06 -05:00
Allen Byrne
83b23a5a42 Use prefix variable 2019-08-06 16:23:15 -05:00
Allen Byrne
9f12d83975 Cleanup HD prefix 2019-08-05 16:57:27 -05:00
Allen Byrne
1ef856f8b5 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5fe1216a4e6af8feef0551f7bece8a0e193310a9':
  Fix return type for H5Sselect_intersect_block().
  Updated H5TRACE macro.
  Add H5Sselect_shape_same and H5Sselect_intersect_block API routines, along with tests and minor cleanups and refactorings.
2019-08-05 06:44:11 -05:00
Quincey Koziol
5fe1216a4e Merge pull request #1819 in HDFFV/hdf5 from ~KOZIOL/hdf5:develop to develop
* commit '905d40aa6f6eb603c5507e7967130760e3a2e43c':
  Fix return type for H5Sselect_intersect_block().
  Updated H5TRACE macro.
  Add H5Sselect_shape_same and H5Sselect_intersect_block API routines, along with tests and minor cleanups and refactorings.
2019-08-04 18:38:36 -05:00
Allen Byrne
c60ceb8c08 Merge reconciliation and VFD test fixes 2019-08-04 15:19:51 -05:00
Dana Robinson
ab1ce69900 Merge pull request #1838 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '4cd461168ef6dbd799792b1893c41dccebae59f9':
  Fixed warning typo
2019-08-04 11:22:08 -05:00
Dana Robinson
4cd461168e Fixed warning typo 2019-08-04 09:12:43 -07:00
Allen Byrne
a1c9d22ca9 Merge pull request #1837 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '0147a6c713c784f5df9189fc7334c65f54958434':
  Fix VFD tests and repack
2019-08-04 08:35:15 -05:00
Allen Byrne
0147a6c713 Fix VFD tests and repack 2019-08-03 17:28:50 -05:00
Dana Robinson
20d43f3dba Merge pull request #1836 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '2b1231ddd89dd2f1b59ec9ca1e4e124d7e76f1b5':
  Moved -Wimplicit-procedure gfortran warning to version 4.5 warnings instead of default.
2019-08-03 15:14:34 -05:00
Dana Robinson
2b1231ddd8 Moved -Wimplicit-procedure gfortran warning to version 4.5 warnings
instead of default.
2019-08-03 11:17:53 -07:00
Larry Knox
b7e196e338 Merge pull request #1831 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'c234479258038be93e059a6964bf19332ef162f8':
  Update junit.sh.in to copy lib files to $prefix/lib. Correct checking for s3 and hdfs options.
2019-08-02 10:04:23 -05:00
Larry Knox
c234479258 Update junit.sh.in to copy lib files to $prefix/lib.
Correct checking for s3 and hdfs options.
2019-08-02 09:58:48 -05:00
Scot Breitenfeld
bc1e6c5097 Merge pull request #1829 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '4cb865fc5938a303c197aedf46f90021e2f4b3d6':
  enabled commented-out code
2019-08-01 15:01:26 -05:00
M. Scot Breitenfeld
4cb865fc59 enabled commented-out code 2019-08-01 11:37:13 -05:00
Allen Byrne
dfb6d9a996 Merge pull request #1827 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'ff8d8a9edb3b8012fa02d2b9fa3c823fee7575fa':
  Fix conflicting types for reset_raw_data_files() parameter in external_common.c changed from int to hbool_t. Change 0 and 1 to FALSE and TRUE in calls to reset_raw_data_files().
2019-08-01 10:24:09 -05:00
Larry Knox
ff8d8a9edb Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2019-08-01 10:22:28 -05:00
Larry Knox
0c374d65c6 Fix conflicting types for reset_raw_data_files() parameter in external_common.c changed from int to hbool_t.
Change 0 and 1 to FALSE and TRUE in calls to reset_raw_data_files().
2019-08-01 10:18:45 -05:00
Dana Robinson
bb8904a75e Merge pull request #1826 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '4227b8948d7091205b4f8dc1271d7dcae01bb0fb':
  Reverts the removal of config/conclude_fc.am while keeping the changes to config/gnu-fflags.
  Fixed a couple of typos.
2019-08-01 09:40:01 -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
Larry Knox
95910889d7 Merge pull request #1824 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '8120ba8bc1fab68a999995677a3cd1af2bc1da67':
  Fix missing export tag
2019-07-31 22:49:26 -05:00
Dana Robinson
438935557e Fixed a couple of typos. 2019-07-31 22:16:50 -05:00
Allen Byrne
8120ba8bc1 Fix missing export tag 2019-07-31 16:50:45 -05:00
Allen Byrne
9046a4ea95 Merge pull request #1823 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '519dfe549a4b8ffb4bd5d4c72a3f5fb61b80143f':
  Mostly whitespace cleanup and consistent test format
2019-07-31 15:57:18 -05:00
Allen Byrne
519dfe549a Mostly whitespace cleanup and consistent test format 2019-07-31 15:06:45 -05:00
Dana Robinson
ea4f76d664 Merge pull request #1821 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '0ee5526c2c95dd77ee61b917b16adfcacbd3a540':
  Fixed typo in optimization.
2019-07-31 12:53:00 -05:00
Dana Robinson
0ee5526c2c Fixed typo in optimization. 2019-07-31 09:08:16 -07:00
Quincey Koziol
905d40aa6f Fix return type for H5Sselect_intersect_block(). 2019-07-31 09:34:01 -05:00
Allen Byrne
556c43a51d Merge pull request #1810 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '983daec12d7d17605ae660b0f1c5636d99f443f2':
  Merge cleanup mostly whitespace
  Update libvers usage
  Correct generator and add HD prefix
  HDFFV-10529 add note
  HDFFV-10529 Update CMake tests to use test fixtures
2019-07-31 09:27:56 -05:00
Allen Byrne
983daec12d Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '363217073750d07e0eeb0aac2b404a799fda9f7a':
  Update COPYING file. Remove hdfs from list of vfds for check-vfd testing as it is read-only.
  Fixed the MANIFEST
2019-07-31 09:20:55 -05:00
Larry Knox
3632170737 Merge pull request #1820 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'ab6679315c5027576c3a80d0ea3b67fd2fa58ff0':
  Update COPYING file. Remove hdfs from list of vfds for check-vfd testing as it is read-only.
2019-07-30 16:59:25 -05:00
Larry Knox
ab6679315c Update COPYING file.
Remove hdfs from list of vfds for check-vfd testing as it is read-only.
2019-07-30 16:37:57 -05:00
Quincey Koziol
41537eeb3c Updated H5TRACE macro. 2019-07-30 16:08:22 -05:00
Quincey Koziol
00fe4ccf30 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~koziol/hdf5 into develop 2019-07-30 15:35:45 -05:00
Quincey Koziol
605889fde8 Add H5Sselect_shape_same and H5Sselect_intersect_block API routines, along
with tests and minor cleanups and refactorings.
2019-07-30 15:34:53 -05:00
Allen Byrne
44e2ddac97 Merge cleanup mostly whitespace 2019-07-30 12:39:20 -05:00
Dana Robinson
c21ba9c26e Merge pull request #1818 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '99a6a5a16e84512dfc57ba2eb7c3e09ecef94b1c':
  Fixed the MANIFEST
2019-07-30 09:57:46 -05:00
Dana Robinson
99a6a5a16e Fixed the MANIFEST 2019-07-30 07:29:37 -07:00
Allen Byrne
4df595c22d Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'd169391529f253a9903b8e6cacf38c59ceefab07':
  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:24:15 -05: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
Allen Byrne
517cadac26 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'f97e11e7635a0cd8728d4604ca5dceb3925ba44c':
  Update comment and check for strtoumax.
  Modify CMakeLists.txt file for renamed h5tools_test_utils files.
  Add HD to string functions. Switched strtoul to strtoumax in H5FDs3comms.c. Removed unused functions and variables in s3 and hdfs TestH5Pfapl*.java. Update Copyright headers.
  Squashed commit of the following:
2019-07-29 16:10:45 -05:00
Jacob Smith
7d3e170763 Refactoring. 2019-07-29 14:58:39 -05:00
Allen Byrne
da2ec6163d Update libvers usage 2019-07-28 14:41:52 -05:00
Larry Knox
f97e11e763 Merge pull request #1812 in HDFFV/hdf5 from ~HDF-PRIVATE/hdf5_vfd:develop to develop
* commit '8aa9043837ea217280098b4b32da8d98ac18f58b':
  Update comment and check for strtoumax.
  Modify CMakeLists.txt file for renamed h5tools_test_utils files.
  Add HD to string functions. Switched strtoul to strtoumax in H5FDs3comms.c. Removed unused functions and variables in s3 and hdfs TestH5Pfapl*.java. Update Copyright headers.
  Squashed commit of the following:
2019-07-26 16:57:07 -05:00
Larry Knox
8aa9043837 Update comment and check for strtoumax. 2019-07-26 16:36:45 -05:00
Allen Byrne
a7d74160d0 Correct generator and add HD prefix 2019-07-26 16:18:39 -05:00
Larry Knox
e852c8deb8 Modify CMakeLists.txt file for renamed h5tools_test_utils files. 2019-07-26 12:58:56 -05:00
Larry Knox
094f14ef38 Add HD to string functions.
Switched strtoul to strtoumax in H5FDs3comms.c.
Removed unused functions and variables in s3 and hdfs TestH5Pfapl*.java.
Update Copyright headers.
2019-07-26 11:56:03 -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
Allen Byrne
f723e0e7f1 HDFFV-10529 add note 2019-07-23 16:28:54 -05:00
Allen Byrne
6a932198aa HDFFV-10529 Update CMake tests to use test fixtures 2019-07-23 16:24:56 -05:00
Allen Byrne
d3fdcd8a68 Merge pull request #1807 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'e19b0302cc38d1850ada7a00431511343cddc8a6': (31 commits)
  HDFFV-10845 update note
  Correct format of drive check
  Use generator expr to get correct name
  HDFFV-10845 Allow mingw to find functionality
  HDFFV-10845 fix comment syntax
  HDFFV-10845 Windows drive can only goto Z
  HDFFV-10845 make flags private
  Correct java load library name access
  Correct syntax
  Fix typo
  Correct OUTPUT_NAME usage
  CMake generator expr cannot be used in get_property cmd
  HDFFV-1045 gcc static must be link flags
  HDFFV-10845 quote multiple strings in cmake link command
  HDFFV-10845 update mingw cmake changes
  Add missing target root path, check other export macro
  HDFFV-10845 skip test if CMake command doesn't support ignore EOL
  HDFFV-10845 copy files with windows EOL
  HDFFV-10845 separate test used by copy windows files
  HDFFV-10845 mingw needs special windows reference files
  ...
2019-07-23 16:21:47 -05:00
Allen Byrne
e19b0302cc HDFFV-10845 update note 2019-07-23 16:21:07 -05:00
Jacob Smith
ded30348ae Add copyright/disclaimer to repack gentest.
Minor formatting tweaks.
2019-07-22 17:34:01 -05:00
Allen Byrne
b9332d6a13 Correct format of drive check 2019-07-22 17:13:56 -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
Jacob Smith
7ff3a63d5f Minor formatting adjustments. 2019-07-22 16:55:37 -05:00
Allen Byrne
fbc06ff9b8 Use generator expr to get correct name 2019-07-22 16:23:38 -05:00
Allen Byrne
64733980e5 HDFFV-10845 Allow mingw to find functionality 2019-07-22 14:23:05 -05:00
Allen Byrne
9877da0a6f HDFFV-10845 fix comment syntax 2019-07-21 16:46:47 -05:00
Allen Byrne
1932752177 HDFFV-10845 Windows drive can only goto Z 2019-07-21 14:19:23 -05:00
Dana Robinson
7d291d059d Parallel Fortran tests now use the MPI module instead of including
mpif.h.
2019-07-19 02:48:00 -05:00
Dana Robinson
5a3147b660 First stab at gfortran versions. Tested on gfortran 7-9 so far. 2019-07-18 23:40:52 -07:00
Dana Robinson
6ef69f058d Merge branch 'develop' into gnu-flags-work 2019-07-18 21:26:47 -07:00
Allen Byrne
367f7ed0e3 HDFFV-10845 make flags private 2019-07-18 16:27:06 -05:00
Allen Byrne
4d3f52ac97 Correct java load library name access 2019-07-18 13:03:07 -05:00
Allen Byrne
5654ba57f1 Correct syntax 2019-07-18 12:55:02 -05:00
Allen Byrne
5984530f3f Fix typo 2019-07-18 12:07:32 -05:00
Allen Byrne
179d0b5af0 Correct OUTPUT_NAME usage 2019-07-18 12:00:19 -05:00
Allen Byrne
5b97d67d43 CMake generator expr cannot be used in get_property cmd 2019-07-18 11:37:34 -05:00
Allen Byrne
bdfb553c4c HDFFV-1045 gcc static must be link flags 2019-07-18 10:45:42 -05:00
Allen Byrne
17474a232f HDFFV-10845 quote multiple strings in cmake link command 2019-07-18 09:21:00 -05:00
Dana Robinson
0f2c1b8126 Moved the -std=f2008 option to gfortran 9 for now. 2019-07-18 01:48:16 -05:00
Allen Byrne
0a9180c074 HDFFV-10845 update mingw cmake changes 2019-07-17 16:08:43 -05:00
Allen Byrne
ac8a1f02ab Add missing target root path, check other export macro 2019-07-17 11:58:05 -05:00
Allen Byrne
741ef0aaef HDFFV-10845 skip test if CMake command doesn't support ignore EOL 2019-07-17 11:58:05 -05:00
Allen Byrne
3ea746014a HDFFV-10845 copy files with windows EOL 2019-07-17 11:58:05 -05:00
Allen Byrne
95d3b41af0 HDFFV-10845 separate test used by copy windows files 2019-07-17 11:58:04 -05:00
Allen Byrne
0eb050d481 HDFFV-10845 mingw needs special windows reference files 2019-07-17 11:58:04 -05:00
Allen Byrne
f724e86727 HDFFV-10845 use of TARGETFILE disables auto emulator 2019-07-17 11:58:04 -05:00
Allen Byrne
ac5680ce8d HDFFV-10845 add_custom_command requires emulator 2019-07-17 11:58:04 -05:00
Allen Byrne
5b258e186b Correct install syntax 2019-07-17 11:58:03 -05:00
Allen Byrne
0efee3ddba Must include from system 2019-07-17 11:58:03 -05:00
Allen Byrne
6b775a9d45 HDFFV-10845 defines already set 2019-07-17 11:58:03 -05:00
Allen Byrne
7ba562a820 HDFFV-10845 fix configure check and PATHs 2019-07-17 11:58:03 -05:00
Allen Byrne
d586a457b2 HDFFV-10845 C_FLAGS need set correctly for win32 vs mingw 2019-07-17 11:58:02 -05:00
Allen Byrne
7a9c852c2c HDFFV-8631, HDFFV-10595, HDFFV-10845 2019-07-17 11:58:02 -05:00
Allen Byrne
7174b5c135 HDFFV-8631 mingw is different platform 2019-07-17 11:58:02 -05:00
Allen Byrne
9c04e50889 HDFFV-10845 add release note. 2019-07-17 11:58:02 -05:00
Allen Byrne
7bb020fcec HDFFV-10845 add support for mingw toolchain 2019-07-17 11:56:48 -05:00
Allen Byrne
6add0919d1 Merge pull request #1805 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '6e4f2798e883a88de7126739307722f6da39dd98':
  HDFFV-10424 add optional variable to avoid PDB installs
2019-07-17 11:00:36 -05:00
Allen Byrne
6e4f2798e8 HDFFV-10424 add optional variable to avoid PDB installs 2019-07-17 10:42:58 -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
Jerome Soumagne
bdd54d0147 Merge pull request #1804 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:topic_prop_check to develop
* commit '6c84a83eeaa187c92d445f8ef8565a4337498cd6':
  H5P: Fix wrong value comparison in assert
2019-07-16 16:46:47 -05:00
Jerome Soumagne
6c84a83eea H5P: Fix wrong value comparison in assert
Move compile assert of H5P_plist_type to H5P__init_package()
2019-07-16 14:22:36 -05:00
Dana Robinson
ebc274a673 Merge pull request #1803 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:lets_retire_jam to develop
* commit 'd7144b2fa40b1be59e6250313c5e5f1a2bd8fb25':
  Restored warnings for older gcc so jam can continue to creak along.
2019-07-16 11:07:48 -05:00
Dana Robinson
d7144b2fa4 Restored warnings for older gcc so jam can continue to creak along. 2019-07-16 03:49:50 -05:00
Dana Robinson
6816d5b2e7 Merge pull request #1797 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:gnu-flags-work to develop
* commit 'd5031a55192ac6b8ca81a0e5315cb4739af98896':
  Removed support for gcc 4.3 and earlier.
  Fix errant quotes
  * Fixed a bug in the gcc warning parsing * Changed version parsing from == gcc 4.x to < to handle ancient compilers.
  Reworked the config/gnu-flags file to be more organized and robust.
  Converted duplicated flags code to a set of if statements.
2019-07-15 11:09:11 -05:00
Dana Robinson
d5031a5519 Removed support for gcc 4.3 and earlier. 2019-07-14 10:46:03 -07:00
Dana Robinson
9a221fd979 Merge branch 'develop' into gnu-flags-work 2019-07-13 13:09:28 -07:00
Allen Byrne
b087e6d3a8 Merge pull request #1800 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '6333fb8711adc3af930e186dad3b8b756e41a863':
  Fix packaging issue
2019-07-12 10:36:39 -05:00
Dana Robinson
5314213f1e Merge pull request #1801 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '3566fff6261d0bb8e360d3842e99919d2eb4ba73':
  Reverted snprintf to sprintf in the multi VFD since the former causes problems on Windows.
2019-07-11 23:17:08 -05:00
Dana Robinson
3566fff626 Reverted snprintf to sprintf in the multi VFD since
the former causes problems on Windows.
2019-07-11 16:08:35 -07:00
Allen Byrne
6333fb8711 Fix packaging issue 2019-07-11 16:24:47 -05:00
Allen Byrne
0784987c85 Merge pull request #1799 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '9655485f6af87e8ee221c824f649fa013fad4542':
  non-windows test must be skipped on windows
2019-07-11 12:08:27 -05:00
Allen Byrne
9655485f6a non-windows test must be skipped on windows 2019-07-11 10:20:04 -05:00
Allen Byrne
c7099da319 Merge pull request #1798 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '33e9b4526ec7b5d910bda879ac92dc992672057b':
  Use H5DOpen2 in hl/test/test_dset_append.c.
2019-07-11 09:59:14 -05:00
Larry Knox
33e9b4526e Use H5DOpen2 in hl/test/test_dset_append.c. 2019-07-11 08:31:02 -05:00
Dana Robinson
3fa1cc4700 Fix errant quotes 2019-07-10 13:40:09 -07:00
Dana Robinson
40b63bffb7 * Fixed a bug in the gcc warning parsing
* Changed version parsing from == gcc 4.x to < to handle ancient
compilers.
2019-07-10 13:05:50 -07:00
Dana Robinson
924d4c01a8 Reworked the config/gnu-flags file to be more organized and robust. 2019-07-10 10:49:55 -07:00
Dana Robinson
59f94cd8f8 Merge branch 'develop' into gnu-flags-work 2019-07-10 10:12:07 -07:00
Dana Robinson
3e33d61c4e Merge pull request #1793 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '097d6037af8dd8d8e5364ae0a731b9843cd4aef8':
  Cleaned up test_dset_append and enabled the bug1/2 tests.
2019-07-10 11:37:49 -05:00
Dana Robinson
3f3397cc9d Merge pull request #1796 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:dt_fixes to develop
* commit 'c582df7538e71fd80915ef922b3edb530a66f70f':
  Revert path processing to fix daily test errors.
2019-07-10 11:35:56 -05:00
Dana Robinson
c582df7538 Revert path processing to fix daily test errors. 2019-07-10 09:22:32 -07:00
Allen Byrne
ceeb761e2b Merge pull request #1794 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ede618741953c9ff70f9a0f3a0d22e7c92043437':
  Fix note text and cmake module include
  Undo commit
  Remove tab characters
  HDFFV-10581 add missed change and release note.
2019-07-10 11:21:03 -05:00
Dana Robinson
52f0622bfe Converted duplicated flags code to a set of if statements. 2019-07-10 09:09:59 -07:00
Allen Byrne
ede6187419 Fix note text and cmake module include 2019-07-10 10:32:43 -05:00
Allen Byrne
2f88d439c6 Undo commit 2019-07-10 09:46:10 -05:00
Allen Byrne
2015fa59fe Remove tab characters 2019-07-10 09:43:15 -05:00
Allen Byrne
f6700f7c83 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '22d78bdfa4d560a0b8a2dbb547574bfe61bf64f0':
  Updates to warnhist script, along with a few cleanups, and add some comments to warning cleanups that are a bit obscure.
  Cleaned up code that genericizes warning output, and add "-u" option to leave unique types in warnings (i.e. don't genericize output).  Also fixed the '-S' option to work correctly.
  Added GCC9 flags to CMake build
  Add support for GCC9, update warnhist script, and clean up warnings.
2019-07-10 09:12:22 -05:00
Dana Robinson
097d6037af Cleaned up test_dset_append and enabled the bug1/2 tests. 2019-07-10 04:50:57 -07:00
Quincey Koziol
22d78bdfa4 Merge pull request #1788 in HDFFV/hdf5 from ~KOZIOL/hdf5:feature/update_gcc_flags to develop
* commit '73df02f13c2b1e0b256cdbff1c7c584e84548df4':
  Updates to warnhist script, along with a few cleanups, and add some comments to warning cleanups that are a bit obscure.
  Cleaned up code that genericizes warning output, and add "-u" option to leave unique types in warnings (i.e. don't genericize output).  Also fixed the '-S' option to work correctly.
  Added GCC9 flags to CMake build
  Add support for GCC9, update warnhist script, and clean up warnings.
2019-07-09 22:21:33 -05:00
Quincey Koziol
73df02f13c Merge branch 'develop' into feature/update_gcc_flags 2019-07-09 22:17:22 -05:00
Quincey Koziol
db7c43d375 Updates to warnhist script, along with a few cleanups, and add some comments
to warning cleanups that are a bit obscure.
2019-07-09 22:15:36 -05:00
Allen Byrne
eb0d1e4e8e HDFFV-10581 add missed change and release note. 2019-07-09 16:30:27 -05:00
Allen Byrne
c33f2cbf18 Merge pull request #1791 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '88ab4b144bcf8454be9eff8800706c0abb404de1':
  fix var name
  Fix compile error with ifdef H5_HAVE_GETHOSTNAME
  perf program can only be built on unix platforms
  Declaration needed for parallel standalone
  Correct test use of library name
  Change how name is retrieved
  Move before null check
  HDFFV-10581 remove special name checking
  HDFFV-10581 fix locations for static pdb files
2019-07-09 15:35:51 -05:00
Allen Byrne
88ab4b144b fix var name 2019-07-09 12:07:41 -05:00
Allen Byrne
f241ff8ad9 Fix compile error with ifdef H5_HAVE_GETHOSTNAME 2019-07-08 15:50:14 -05:00
Allen Byrne
c424877351 perf program can only be built on unix platforms 2019-07-08 15:37:58 -05:00
Allen Byrne
c88caec5ae Declaration needed for parallel standalone 2019-07-08 15:33:31 -05:00
Allen Byrne
8583d608ef Correct test use of library name 2019-07-08 15:10:12 -05:00
Allen Byrne
8eadaf3408 Change how name is retrieved 2019-07-08 13:59:35 -05:00
Allen Byrne
1878e68558 Move before null check 2019-07-08 13:52:05 -05:00
Allen Byrne
3dd7137430 HDFFV-10581 remove special name checking 2019-07-08 13:46:25 -05:00
Allen Byrne
ae0c16d1f2 HDFFV-10581 fix locations for static pdb files 2019-07-08 12:21:11 -05:00
mainzer
f85986fa9f Merge branch 'feature/vfd_swmr' of https://bitbucket.hdfgroup.org/scm/~vchoi/my_hdf5_fork into feature/vfd_swmr
updated to permit a push.  Should be no changes in VFD SWMR proper.
2019-07-06 18:19:13 -05:00
mainzer
a5b7099215 Tidied up comments and removed some stats code that is un-reachable. 2019-07-06 18:13:36 -05:00
Quincey Koziol
78e13fe8b0 Merge branch 'develop' into feature/update_gcc_flags 2019-07-05 13:33:13 -05:00
Quincey Koziol
43aa32ff4f Cleaned up code that genericizes warning output, and add "-u" option to
leave unique types in warnings (i.e. don't genericize output).  Also fixed
the '-S' option to work correctly.
2019-07-05 13:31:38 -05:00
Allen Byrne
de217a6499 Merge pull request #1789 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '2b2876ac57a1901537d7c2732eac81f7434d332d':
  perf test is parallel only
  Add missing test
2019-07-05 08:41:19 -05:00
Quincey Koziol
6725c21138 Merge branch 'develop' into feature/update_gcc_flags 2019-07-03 17:09:30 -05:00
Allen Byrne
2b2876ac57 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '7b9f24603f980a73d43194c66a01a62aee16b2e8':
  Fixed Build HDF Tests name in CMake's libhdf5 settings
  Fixed libhdf5 settings file for both autotools & CMake
2019-07-03 15:31:40 -05:00
Allen Byrne
1c7420d1e3 perf test is parallel only 2019-07-03 15:30:41 -05:00
Dhvanil Popat
7b9f24603f Merge pull request #1790 in HDFFV/hdf5 from ~DPOPAT/hdf5:develop to develop
Fixed libhdf5 settings file to be consistent for autotools & CMake

* commit '5e86326e0a731505095013aaf2a766bfa6cc1dda':
  Fixed Build HDF Tests name in CMake's libhdf5 settings
  Fixed libhdf5 settings file for both autotools & CMake
2019-07-03 14:27:46 -05:00
Dhvanil Popat
5e86326e0a Fixed Build HDF Tests name in CMake's libhdf5 settings 2019-07-03 14:21:45 -05:00
Allen Byrne
ce92a64716 Add missing test 2019-07-03 10:15:07 -05:00
Quincey Koziol
7509c2c4fc Added GCC9 flags to CMake build 2019-07-02 23:49:35 -05:00
Quincey Koziol
3b594992d6 Add support for GCC9, update warnhist script, and clean up warnings. 2019-07-02 23:43:45 -05:00
Dana Robinson
d0bc570c2c Merge pull request #1787 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit 'f250815151df8da8a93c0ff781a3cf134f1c6cbd':
  Cleaned up misc warnings.
2019-07-02 09:26:55 -05:00
Dana Robinson
f250815151 Cleaned up misc warnings. 2019-06-29 02:38:14 -07:00
Quincey Koziol
f97ea92fe5 Merge pull request #1784 in HDFFV/hdf5 from ~KOZIOL/hdf5:feature/update_gcc_flags to develop
* commit '6ced6457c3048bd10bf6f470b329b4810d9be826':
  Move the -Wformat-nonliteral warning to the developer flags.  Fix bugs I introduced in the last commit.
  Updated configure & CMake compiler flags for GCC 8.x, along with corresponding changes to warnhist script (and some extra improvements for condensing C++ and Java warnings), and fixed a bunch of warnings.
2019-06-28 19:30:41 -05:00
Quincey Koziol
6ced6457c3 Move the -Wformat-nonliteral warning to the developer flags. Fix bugs
I introduced in the last commit.
2019-06-28 19:26:47 -05:00
Quincey Koziol
2042c775f0 Merge branch 'develop' into feature/update_gcc_flags 2019-06-28 16:13:36 -05:00
Allen Byrne
13d951d372 Merge pull request #1779 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '0405935654e2c3a8e414da6f66a46ab0ef7ef9ec':
  Remove unused code
2019-06-28 10:10:55 -05:00
Dana Robinson
a7cd160234 Merge pull request #1781 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit 'f83d034105e2c72210dd41723044acca37a6d735':
  Refactored some fsinfo code from H5Fsuper.c to H5Ofsinfo.c.
2019-06-28 10:04:07 -05:00
Dana Robinson
8f0aacce8f Merge pull request #1782 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:warning_fixes to develop
* commit '1c4101c6a77dd9223483dd9e3f7bec0f9e92f435':
  Fixed various warnings in testhdf5 files.
  Warning fixes: * fix for static/const flipped in H5Dint.c * Removed missing done target in H5Rint.c * Fixed misleading indentation in h5format_convert.c
2019-06-28 10:03:45 -05:00
Vailin Choi
b6268dbb1b Merge pull request #1757 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/new_shutdown_fsm to develop
* commit 'c69b1025f58ec8467be1e056214510c70ed00867':
  (1) Add/remove comments. (2) A temporary fix to address the test/objcopy.c: test_copy_group_deep() test failure with the family driver.  The test failure occurs with these configurations in objcopy.c: --with shared src messages (CONFIG_SHARE_SRC) --without shared dst messages (CONFIG_SHARE_DST) --with latest format for source file (CONFIG_SRC_NEW_FORMAT) --without dense attributes (CONFIG_DENSE) --with latest format for destination file (CONFIG_DST_NEW_FORMAT) The temporary fix is in src/H5MFaggr.c (see comments above #ifdef REPLACE/#endif).
  Checkin for new shutting down free-space manager.
2019-06-28 09:54:52 -05:00
Quincey Koziol
d5130bb573 Updated configure & CMake compiler flags for GCC 8.x, along with corresponding
changes to warnhist script (and some extra improvements for condensing C++
and Java warnings), and fixed a bunch of warnings.
2019-06-28 09:10:43 -05:00
Dana Robinson
1c4101c6a7 Fixed various warnings in testhdf5 files. 2019-06-28 00:17:33 -07:00
Dana Robinson
de2440ae5f Warning fixes:
* fix for static/const flipped in H5Dint.c
* Removed missing done target in H5Rint.c
* Fixed misleading indentation in h5format_convert.c
2019-06-27 22:38:20 -07:00
Dana Robinson
f83d034105 Refactored some fsinfo code from H5Fsuper.c to H5Ofsinfo.c. 2019-06-27 16:30:19 -07:00
Vailin Choi
c69b1025f5 (1) Add/remove comments.
(2) A temporary fix to address the test/objcopy.c: test_copy_group_deep() test failure with
the family driver.  The test failure occurs with these configurations in objcopy.c:
--with shared src messages (CONFIG_SHARE_SRC)
--without shared dst messages (CONFIG_SHARE_DST)
--with latest format for source file (CONFIG_SRC_NEW_FORMAT)
--without dense attributes (CONFIG_DENSE)
--with latest format for destination file (CONFIG_DST_NEW_FORMAT)
The temporary fix is in src/H5MFaggr.c (see comments above #ifdef REPLACE/#endif).
2019-06-27 16:04:48 -05:00
Vailin Choi
565e3d7951 Merge pull request #12 in ~VCHOI/my_third_fork from develop to bugfix/new_shutdown_fsm
* commit '2c69584fb124c20e1dd06c31f2baf240b50b381c':
  Fixed missing return value checks in VDS tests.
2019-06-27 15:52:36 -05:00
Allen Byrne
0405935654 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '2c69584fb124c20e1dd06c31f2baf240b50b381c':
  Fixed missing return value checks in VDS tests.
2019-06-27 12:39:12 -05:00
Dana Robinson
2c69584fb1 Merge pull request #1778 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '569d051df5b295041a7f6cb73d6220f4999a8633':
  Fixed missing return value checks in VDS tests.
2019-06-27 12:31:34 -05:00
Allen Byrne
e7dd793f42 Remove unused code 2019-06-27 08:00:31 -05:00
Dana Robinson
569d051df5 Fixed missing return value checks in VDS tests. 2019-06-26 21:55:11 -07:00
Vailin Choi
db61d2940a Merge branch 'bugfix/new_shutdown_fsm' of https://bitbucket.hdfgroup.org/scm/~vchoi/my_third_fork into bugfix/new_shutdown_fsm 2019-06-26 15:49:12 -05:00
Vailin Choi
9cafc8d4de Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~vchoi/my_third_fork into bugfix/new_shutdown_fsm 2019-06-26 15:47:54 -05:00
Vailin Choi
439ea92d7e Merge pull request #1772 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10808-h5pset_file_space_strategy-succeeds to develop
* commit '3768566139df18928aa29ece0eff3010b224633b':
  Add release notes.
  Correct hid_t error value to H5I_INVALID_HID in tests related to libver_bounds.
  Fix for HDFFV-10808 H5Pset_file_space_strategy succeeds when using H5Pset_libver_bounds v18,v18. Fails file creation when non-default free-space info is set in fcpl and the library version high bound is less than v110 because free-space info message is introduced in library release v110.
2019-06-26 10:47:31 -05:00
Dana Robinson
786e8e5a88 Merge pull request #1775 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '8ac60adaa2af21b57185c145d70a12d16a0b7409':
  Banish enum increment warnings
2019-06-26 10:12:46 -05:00
Dana Robinson
8ac60adaa2 Banish enum increment warnings 2019-06-25 23:19:09 -07:00
Dana Robinson
a3cfb08a10 Merge pull request #1774 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:trefer_memory_bug to develop
* commit 'b40a6f75aaf3d40c6ea5f9cc8beb74ae8aaaba96':
  Fixed a memory issue in trefer.c.
2019-06-25 14:51:30 -05:00
Vailin Choi
3768566139 Add release notes. 2019-06-25 14:47:53 -05:00
Dana Robinson
b40a6f75aa Fixed a memory issue in trefer.c. 2019-06-25 12:08:33 -07:00
Vailin Choi
71de5b8088 Correct hid_t error value to H5I_INVALID_HID in tests related to libver_bounds. 2019-06-25 11:47:33 -05:00
Dhvanil Popat
18f65dcee9 Fixed libhdf5 settings file for both autotools & CMake 2019-06-25 07:32:32 +00:00
Vailin Choi
d33eac91a7 Merge branch 'bugfix/HDFFV-10808-h5pset_file_space_strategy-succeeds' of https://bitbucket.hdfgroup.org/scm/~vchoi/my_third_fork into bugfix/HDFFV-10808-h5pset_file_space_strategy-succeeds 2019-06-24 18:09:52 -05:00
Vailin Choi
d9653606d8 Fix for HDFFV-10808 H5Pset_file_space_strategy succeeds when using H5Pset_libver_bounds v18,v18.
Fails file creation when non-default free-space info is set in fcpl and the library version
high bound is less than v110 because free-space info message is introduced in library release v110.
2019-06-24 18:08:23 -05:00
Vailin Choi
5256fbde26 Merge pull request #10 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10808-h5pset_file_space_strategy-succeeds
* commit '1d8f7bf297100ec11204442708a7f670a89f3f02':
  Updated the Java attribute test so that attribute access property lists are created and used correctly.
  Add test cleanup
  Need to shift off two arguments
  HDFFV-9407 add autotools test
  Move pragma statements outside of routines, to make older compilers happy.
  HDFFV-9407 Add test
2019-06-24 17:41:28 -05:00
Dana Robinson
1d8f7bf297 Merge pull request #1771 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5A_java_test_fix to develop
* commit 'f4015bed9e7ee43468240e734232f9114b749d4f':
  Updated the Java attribute test so that attribute access property lists are created and used correctly.
2019-06-24 17:31:56 -05:00
Allen Byrne
c89696e965 Merge pull request #1768 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f6ddfd7dda8aa95b33ae89b87c70493d5c644dbe':
  Add test cleanup
  Need to shift off two arguments
  HDFFV-9407 add autotools test
  HDFFV-9407 Add test
2019-06-24 16:56:33 -05:00
Dana Robinson
f4015bed9e Updated the Java attribute test so that attribute access
property lists are created and used correctly.
2019-06-24 14:33:54 -07:00
Vailin Choi
7db3060e76 Merge pull request #9 in ~VCHOI/my_third_fork from develop to bugfix/new_shutdown_fsm
* commit 'e35effff7da40fa8b0dda273be9bbdfa9c8c3624':
  Move pragma statements outside of routines, to make older compilers happy.
2019-06-24 16:29:40 -05:00
Allen Byrne
f6ddfd7dda Add test cleanup 2019-06-24 16:10:20 -05:00
Allen Byrne
cf3de59f84 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'e35effff7da40fa8b0dda273be9bbdfa9c8c3624':
  Move pragma statements outside of routines, to make older compilers happy.
  Updated H5Tcopy() to get the dataset's datatype through the VOL when that is passed in as the object ID.
2019-06-24 15:55:47 -05:00
Allen Byrne
1891324419 Need to shift off two arguments 2019-06-24 15:45:38 -05:00
Quincey Koziol
e35effff7d Merge pull request #1770 in HDFFV/hdf5 from ~KOZIOL/hdf5:develop to develop
* commit 'cb92adccf61d712ee8c4fcac04c1b297c05ab941':
  Move pragma statements outside of routines, to make older compilers happy.
2019-06-24 15:31:27 -05:00
Vailin Choi
7485981bca Merge pull request #8 in ~VCHOI/my_third_fork from develop to bugfix/new_shutdown_fsm
* commit '35fd0ec8ceffe96cee352187154da15c967fb990':
  Updated H5Tcopy() to get the dataset's datatype through the VOL when that is passed in as the object ID.
  Fix fortran test and test library linking
  Update GCC 6 & 7 flags for CMake builds
  Move -Wnormalized down into GCC 6.x flags
  Put the memcpy overlap check back into H5MM.
  Fixed the heap overflow in t_filters_parallel
  Fixed some low-hanging fruit from -fsanitize in t_filters_parallel.
  Add lib dir for testing plugins
  Add support for GCC 7.x warnings, update warnhist script to account for them, clean up warnings.
  Add H5_HLDLL prefix for windows link
  HDFFV-10805 cleanup examples and test code
  Fix minor typo in H5S_select_iter_release
  Add missing fortran mods
  HDFFV-10805 Fix test of library libinfo
  Cleanup possible CMake target conflicts
  Correct CMake issues
2019-06-24 15:04:38 -05:00
Allen Byrne
ee07744966 HDFFV-9407 add autotools test 2019-06-24 15:04:07 -05:00
Vailin Choi
3c9b147707 Merge pull request #7 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10808-h5pset_file_space_strategy-succeeds
* commit '35fd0ec8ceffe96cee352187154da15c967fb990':
  Updated H5Tcopy() to get the dataset's datatype through the VOL when that is passed in as the object ID.
  Fix fortran test and test library linking
  Update GCC 6 & 7 flags for CMake builds
  Move -Wnormalized down into GCC 6.x flags
  Put the memcpy overlap check back into H5MM.
  Fixed the heap overflow in t_filters_parallel
  Fixed some low-hanging fruit from -fsanitize in t_filters_parallel.
  Add lib dir for testing plugins
  Add support for GCC 7.x warnings, update warnhist script to account for them, clean up warnings.
  Add H5_HLDLL prefix for windows link
  HDFFV-10805 cleanup examples and test code
  Add missing fortran mods
  HDFFV-10805 Fix test of library libinfo
  Cleanup possible CMake target conflicts
  Correct CMake issues
2019-06-24 14:59:15 -05:00
Quincey Koziol
cb92adccf6 Move pragma statements outside of routines, to make older compilers happy. 2019-06-24 14:39:51 -05:00
Dana Robinson
35fd0ec8ce Merge pull request #1767 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5Tcopy_dset_vol_fix to develop
* commit '8b00d921d7313cd21947992ab4a007d593c49207':
  Updated H5Tcopy() to get the dataset's datatype through the VOL when that is passed in as the object ID.
2019-06-24 10:55:39 -05:00
Allen Byrne
a03d35dc22 HDFFV-9407 Add test 2019-06-24 07:28:39 -05:00
Allen Byrne
4e06d523d5 Merge pull request #1765 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '21e147da71ef226b712ec4d087af95aad9691dec':
  Fix fortran test and test library linking
2019-06-24 07:26:30 -05:00
Dana Robinson
8b00d921d7 Updated H5Tcopy() to get the dataset's datatype through the VOL when
that is passed in as the object ID.
2019-06-23 22:34:08 -07:00
Allen Byrne
21e147da71 Fix fortran test and test library linking 2019-06-23 13:52:30 -05:00
Quincey Koziol
60dee604cd Merge pull request #1764 in HDFFV/hdf5 from ~KOZIOL/hdf5:feature/update_gcc_flags to develop
Updated CMake bulids, too.

* commit '17ae90917856e4cbab5a2f1c597197ee98802fc7':
  Update GCC 6 & 7 flags for CMake builds
  Move -Wnormalized down into GCC 6.x flags
  Add support for GCC 7.x warnings, update warnhist script to account for them, clean up warnings.
2019-06-22 19:37:18 -05:00
Quincey Koziol
17ae909178 Update GCC 6 & 7 flags for CMake builds 2019-06-22 19:34:47 -05:00
Quincey Koziol
4e3a0c505c Move -Wnormalized down into GCC 6.x flags 2019-06-22 11:41:33 -05:00
Quincey Koziol
128853b58a Merge branch 'develop' into feature/update_gcc_flags 2019-06-22 11:39:25 -05:00
Allen Byrne
df4ec243d4 Merge pull request #1759 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '468b130be3b77fe07b29709cd3fa854422fefa9c':
  Add lib dir for testing plugins
2019-06-22 10:06:58 -05:00
Dana Robinson
2d1017e381 Merge pull request #1763 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:memcpy_buffer_overlap_check to develop
* commit '5a6afeffd44c3ba51ce0e0fa11053c83e0807685':
  Put the memcpy overlap check back into H5MM.
2019-06-21 20:45:11 -05:00
Dana Robinson
5a6afeffd4 Put the memcpy overlap check back into H5MM. 2019-06-21 17:31:56 -07:00
Dana Robinson
7ef0e3f941 Merge pull request #1761 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:t_filters_parallel_bugs to develop
* commit '5aa8bc154dd9fcfdf6c7cbbe0611cb200f0a420e':
  Fixed the heap overflow in t_filters_parallel
2019-06-21 16:56:53 -05:00
Quincey Koziol
3dcc89625c Merge branch 'develop' into feature/update_gcc_flags 2019-06-21 16:56:11 -05:00
Dana Robinson
5aa8bc154d Fixed the heap overflow in t_filters_parallel 2019-06-21 14:13:16 -07:00
Dana Robinson
8eabdd28af Merge pull request #1760 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:t_filters_parallel_bugs to develop
* commit 'b4bd49ffdd5e313cd840698709f44f05ea323104':
  Fixed some low-hanging fruit from -fsanitize in t_filters_parallel.
2019-06-21 15:48:53 -05:00
Dana Robinson
b4bd49ffdd Fixed some low-hanging fruit from -fsanitize in t_filters_parallel. 2019-06-21 13:18:09 -07:00
Allen Byrne
468b130be3 Add lib dir for testing plugins 2019-06-21 13:46:46 -05:00
Jacob Smith
9103fd5953 Undo some formatting modifications.
Update MANIFEST.
2019-06-21 12:05:54 -05:00
Quincey Koziol
1ccbdfee58 Add support for GCC 7.x warnings, update warnhist script to account for them,
clean up warnings.
2019-06-21 10:05:34 -05:00
Allen Byrne
5fc5d947f0 Merge pull request #1749 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'c24f11070aea56331110628d7645332534e4f227':
  Add H5_HLDLL prefix for windows link
  HDFFV-10805 cleanup examples and test code
  Add missing fortran mods
  HDFFV-10805 Fix test of library libinfo
  Cleanup possible CMake target conflicts
  Correct CMake issues
2019-06-20 17:02:49 -05:00
Vailin Choi
61b2dddc25 Checkin for new shutting down free-space manager. 2019-06-20 16:14:33 -05:00
Jacob Smith
27d5742b39 Merge branch 'develop' into bugfix/repack_external_storage 2019-06-20 12:37:27 -05:00
Jacob Smith
63fc460c13 Add forgotten files to include from h5repack testfiles for tests. 2019-06-20 12:30:20 -05:00
Allen Byrne
c24f11070a Add H5_HLDLL prefix for windows link 2019-06-20 08:54:49 -05:00
Allen Byrne
1e31a86dab Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '2e973f7e12301975f9d8dfdd5534682525554e77':
  Fix minor typo in H5S_select_iter_release
  Fix memory leak in objcopy test after H5Aread of vlen data
2019-06-20 06:55:29 -05:00
Allen Byrne
b106b883cc HDFFV-10805 cleanup examples and test code 2019-06-20 06:31:01 -05:00
Jordan Henderson
2e973f7e12 Merge pull request #1754 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '6c62678939b66400247dbbf4f9d0c32381a956d1':
  Fix minor typo in H5S_select_iter_release
2019-06-19 18:54:33 -05:00
Jordan Henderson
6c62678939 Fix minor typo in H5S_select_iter_release 2019-06-19 18:06:05 -05:00
Jacob Smith
2ba7b8f5e0 Fix failing automated reporting.
Add 8-bit big-endian testfile.
2019-06-19 17:15:05 -05:00
Vailin Choi
246b40f8f8 Merge pull request #6 in ~VCHOI/my_third_fork from develop to bugfix/new_shutdown_fsm
* commit 'ca1ee7fae118c8d4137b1b5efe57660d2e0ff9b1': (64 commits)
  Fix memory leak in objcopy test after H5Aread of vlen data
  HDFFV-10616 add h5fc script
  Fixed a problem in the ohdr test where hard-coded strings passed to H5Awrite() triggered -fsanitize failures.
  Yanked qsort assert
  Switched to HGOTO_DONE() in the links code.
  Updated the HDqsort() macro to ensure we don't pass NULL buffers to qsort(3) in the future.
  Fixed a bug in the links code where iterating over an empty group would pass a NULL pointer to qsort(3), which is undefined behavior.
  Reset the other convenience pointer because why no
  Fixed a memory bug where a pointer is used after it's been freed.
  fixed pass_through vol
  HDFFV-10805 Add option to only build shared targets
  Fixed a warning in H5CX.c concerning incorrect use of freeing VOL connector info.
  Add H5S_SEL_ITER_SHARE_WITH_DATASPACE selection iterator creation flag, to share dataspace's selection with iterator (and with caution about not modifying or closing the dataspace while the iterator is open).
  Added a warning summary script for gcc to bin
  Fix misc. typos, etc. from code review
  Fixed problem with H5Fdelete "test" and split VFD.
  New hyperslab selection routines and new public selection iterator routines.
  Added the creation and use of an attribute access property list to testhdf5.
  Update MANIFEST for move of h5cc.in and h5redeploy.in to bin directory.
  Added missing DELETE enum value.
  ...
2019-06-19 16:43:23 -05:00
Jerome Soumagne
ca1ee7fae1 Merge pull request #1753 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:topic_fix_objcopy_leak to develop
* commit '552cc1b4a4d1757d64f1b930135e0320a10ce8ce':
  Fix memory leak in objcopy test after H5Aread of vlen data
2019-06-19 16:24:56 -05:00
Allen Byrne
aa9a979fbb Add missing fortran mods 2019-06-19 15:42:35 -05:00
Allen Byrne
72116376b1 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'cc267767af89bf95807afc4e7b25d82638ef4892':
  HDFFV-10616 add h5fc script
2019-06-19 14:05:10 -05:00
Allen Byrne
cc267767af Merge pull request #1751 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '9397d67d91eb628b3b9096501cdab0a33335564c':
  HDFFV-10616 add h5fc script
2019-06-19 14:03:44 -05:00
Jerome Soumagne
552cc1b4a4 Fix memory leak in objcopy test after H5Aread of vlen data 2019-06-19 14:03:21 -05:00
Allen Byrne
08df37027c HDFFV-10805 Fix test of library libinfo 2019-06-19 13:59:49 -05:00
Allen Byrne
11f83e55ec Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b9ec6a6400a556b1250c249e158c4fffafccd550':
  fixed pass_through vol
2019-06-19 13:55:34 -05:00
Allen Byrne
9397d67d91 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b9ec6a6400a556b1250c249e158c4fffafccd550':
  fixed pass_through vol
2019-06-19 13:55:27 -05:00
Scot Breitenfeld
b9ec6a6400 Merge pull request #1746 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'a67c578e4b9275fa12b427b6e13021536838a448':
  fixed pass_through vol
2019-06-19 13:52:21 -05:00
Allen Byrne
5c865bd106 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '4d20db43bea4bc4588b20abebef5b0d043dcf31d':
  Fixed a problem in the ohdr test where hard-coded strings passed to H5Awrite() triggered -fsanitize failures.
2019-06-19 11:51:17 -05:00
Allen Byrne
d1b4eda28a HDFFV-10616 add h5fc script 2019-06-19 10:42:37 -05:00
Allen Byrne
562cd7f3ab Cleanup possible CMake target conflicts 2019-06-19 10:35:55 -05:00
Dana Robinson
4d20db43be Merge pull request #1750 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:ohdr_test_memory_issue to develop
* commit '6a1e9a1fbe9606d0dd3452092cab17794e131e64':
  Fixed a problem in the ohdr test where hard-coded strings passed to H5Awrite() triggered -fsanitize failures.
2019-06-19 10:23:04 -05:00
Allen Byrne
2051ee9118 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'c6e21cede788790b39af4a46a8bc15e49e382346':
  Yanked qsort assert
  Switched to HGOTO_DONE() in the links code.
  Updated the HDqsort() macro to ensure we don't pass NULL buffers to qsort(3) in the future.
  Fixed a bug in the links code where iterating over an empty group would pass a NULL pointer to qsort(3), which is undefined behavior.
2019-06-19 10:06:52 -05:00
Dana Robinson
6a1e9a1fbe Fixed a problem in the ohdr test where hard-coded strings passed
to H5Awrite() triggered -fsanitize failures.
2019-06-18 17:28:37 -07:00
Dana Robinson
c6e21cede7 Merge pull request #1748 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:links_iterate_zero_bug to develop
* commit '0a75da70a61d41a0bf20a5c617f3eb678ed0b103':
  Yanked qsort assert
  Switched to HGOTO_DONE() in the links code.
  Updated the HDqsort() macro to ensure we don't pass NULL buffers to qsort(3) in the future.
  Fixed a bug in the links code where iterating over an empty group would pass a NULL pointer to qsort(3), which is undefined behavior.
2019-06-18 17:36:42 -05:00
Allen Byrne
b3b6dcb44a Correct CMake issues 2019-06-18 17:10:46 -05:00
Allen Byrne
8973ba46c6 Merge pull request #1745 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '6cd728796dee1cbc5b1fdf28900b23b7a6870b67':
  HDFFV-10805 Add option to only build shared targets
2019-06-18 16:32:06 -05:00
Dana Robinson
0a75da70a6 Yanked qsort assert 2019-06-18 12:52:42 -07:00
Dana Robinson
b8c24388ec Switched to HGOTO_DONE() in the links code. 2019-06-18 12:27:51 -07:00
Dana Robinson
ea966597d5 Updated the HDqsort() macro to ensure we don't pass NULL buffers to
qsort(3) in the future.
2019-06-18 12:23:06 -07:00
Dana Robinson
d767e6a067 Fixed a bug in the links code where iterating over an empty group would
pass a NULL pointer to qsort(3), which is undefined behavior.

Fixes HDFFV-10829
2019-06-18 11:42:53 -07:00
Allen Byrne
6cd728796d Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '10535e0376d88e218cab782322bfc06f35835f31':
  Reset the other convenience pointer because why no
  Fixed a memory bug where a pointer is used after it's been freed.
2019-06-18 13:42:03 -05:00
Dana Robinson
10535e0376 Merge pull request #1747 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vds_memory_bug to develop
* commit '8d67b440f7d94f1b191ce154a41685bcaa90fd12':
  Reset the other convenience pointer because why no
  Fixed a memory bug where a pointer is used after it's been freed.
2019-06-18 12:52:27 -05:00
Dana Robinson
8d67b440f7 Reset the other convenience pointer because why no 2019-06-18 10:24:58 -07:00
Allen Byrne
d118a47a92 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '712a2a13d8add828d053135a172abb2e819d59ad':
  Fixed a warning in H5CX.c concerning incorrect use of freeing VOL connector info.
  Add H5S_SEL_ITER_SHARE_WITH_DATASPACE selection iterator creation flag, to share dataspace's selection with iterator (and with caution about not modifying or closing the dataspace while the iterator is open).
  Fix misc. typos, etc. from code review
  New hyperslab selection routines and new public selection iterator routines.
2019-06-18 12:12:24 -05:00
Dana Robinson
daaa56de3e Fixed a memory bug where a pointer is used after it's been freed.
This is going to need a release note when it's moved to 1.10.
2019-06-18 09:59:36 -07:00
M. Scot Breitenfeld
a67c578e4b fixed pass_through vol 2019-06-18 11:39:21 -05:00
Dana Robinson
712a2a13d8 Merge pull request #1744 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5CX_warning to develop
* commit '579793a7acebcb22d1adc2421a6c1b99618f3ee9':
  Fixed a warning in H5CX.c concerning incorrect use of freeing VOL connector info.
2019-06-18 10:32:52 -05:00
Quincey Koziol
1802d4cb14 Merge pull request #1740 in HDFFV/hdf5 from merge_hyperslab_04 to develop
* commit 'd20139399750246f55c902940987e0048a40c268':
  Add H5S_SEL_ITER_SHARE_WITH_DATASPACE selection iterator creation flag, to share dataspace's selection with iterator (and with caution about not modifying or closing the dataspace while the iterator is open).
  Fix misc. typos, etc. from code review
  New hyperslab selection routines and new public selection iterator routines.
2019-06-18 09:39:00 -05:00
Quincey Koziol
d201393997 Merge branch 'develop' into merge_hyperslab_04 2019-06-18 09:24:14 -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
579793a7ac Fixed a warning in H5CX.c concerning incorrect use of freeing
VOL connector info.
2019-06-17 20:09:45 -07:00
Quincey Koziol
49f14964c3 Add H5S_SEL_ITER_SHARE_WITH_DATASPACE selection iterator creation flag, to
share dataspace's selection with iterator (and with caution about not modifying
or closing the dataspace while the iterator is open).
2019-06-17 18:19:05 -05:00
Dana Robinson
f73a190d2c Merge pull request #1743 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:warnhist to develop
* commit '72dd01b76bf0f521b95fc3ed10b5c305f7445fc6':
  Added a warning summary script for gcc to bin
2019-06-17 15:57:46 -05:00
Dana Robinson
72dd01b76b Added a warning summary script for gcc to bin 2019-06-17 13:35:08 -07:00
Quincey Koziol
73331f73dd Fix misc. typos, etc. from code review 2019-06-17 10:45:36 -05:00
Quincey Koziol
0656cd47d9 Merge branch 'develop' into merge_hyperslab_04 2019-06-17 10:35:36 -05: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
Dana Robinson
cbc95dee3c Merge pull request #1741 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'dbad1589008e2ef9e713c712ca5ffbf7c97159d0':
  Fixed problem with H5Fdelete "test" and split VFD.
2019-06-16 11:40:57 -05:00
Dana Robinson
dbad158900 Fixed problem with H5Fdelete "test" and split VFD. 2019-06-15 21:00:48 -07:00
Quincey Koziol
0525ee122f New hyperslab selection routines and new public selection iterator routines. 2019-06-15 21:25:28 -05:00
Dana Robinson
462b924eca Merge pull request #1739 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:aapl_test to develop
* commit 'ad168f5a7a08f6afd9ee506ce7c884fff994002a':
  Added the creation and use of an attribute access property list to testhdf5.
2019-06-15 17:25:01 -05:00
Dana Robinson
ad168f5a7a Added the creation and use of an attribute access property list to
testhdf5.
2019-06-15 12:44:36 -07: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
Dana Robinson
c9d41341d6 Merge pull request #1713 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_dev_headers to develop
* commit '9ef56483f6447b60cf7568e2022aa5d8f193427c':
  Added missing DELETE enum value.
  Split VOL connector routines into separate headers: * H5VLconnector.h for terminal connector things * H5VLconnector_passthru.h for passthrough connector things
2019-06-15 14:18:04 -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
9ef56483f6 Merge branch 'develop' into vol_dev_headers 2019-06-14 14:18:06 -07:00
Larry Knox
d5a262c424 Merge pull request #1736 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '04dc4ef436b087cfc45030b9183386598d1b4bae':
  Moved h5cc.in and h5redeploy.in from tools/misc to bin directory.  They should always be built and installed whether tools are enabled or disabled.  Also added Makefile.am to bin to build h5redeploy and to install and uninstall them.  h5cc is created from h5cc.in by configure.
2019-06-14 15:20:45 -05:00
Dana Robinson
a2890b5d09 Added missing DELETE enum value. 2019-06-14 13:00:17 -07:00
Dana Robinson
278dc38530 Merge branch 'develop' into vol_dev_headers 2019-06-14 12:48:57 -07:00
Scot Breitenfeld
7b97bcf972 Merge pull request #1737 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'a0f9e97769e1aa4890b1481182f55b8373d431fa':
  fixed linked library for testing
2019-06-14 14:43:09 -05:00
M. Scot Breitenfeld
a0f9e97769 fixed linked library for testing 2019-06-14 14:30:48 -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
57d5c207d9 Merge pull request #1734 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '79916da3036f94a368ba8b29cb18c507e9939e16':
  added missing MOD dependency
  added missing MOD dependency
2019-06-14 13:13:31 -05:00
Vailin Choi
dfdc27b04b Fix release notes based on feedback from pull request. 2019-06-14 12:33:07 -05:00
M. Scot Breitenfeld
79916da303 added missing MOD dependency 2019-06-14 12:08:59 -05:00
Larry Knox
04dc4ef436 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2019-06-14 11:14:36 -05:00
Larry Knox
3dfc80a28a Moved h5cc.in and h5redeploy.in from tools/misc to bin directory. They
should always be built and installed whether tools are enabled or
disabled.  Also added Makefile.am to bin to build h5redeploy and
to install and uninstall them.  h5cc is created from h5cc.in by
configure.
2019-06-14 10:47:09 -05:00
M. Scot Breitenfeld
704c83217d Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-06-14 09:39:26 -05:00
M. Scot Breitenfeld
0f947f953d added missing MOD dependency 2019-06-14 09:39:18 -05:00
Dana Robinson
650f9e616d Merge pull request #1727 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5Fdelete_vol_only to develop
* commit 'bb5e7822f447b8a175e807e2e7bad5e0192394e5':
  Fixed an error string typo
  Added H5Fdelete call and VOL support (but no VFD/native implementation).
2019-06-13 16:58:58 -05:00
Scot Breitenfeld
054059a30c Merge pull request #1733 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'd754a86c2412747be587633fb7e7180570b3f82a':
  updated static vol_connector build
  updated static vol_connector build
  fixed dependencies
  fixed invalid pointer
  removed unregistering native vol
  fix for cycle dependency
2019-06-13 16:24:54 -05:00
M. Scot Breitenfeld
d754a86c24 updated static vol_connector build 2019-06-13 16:23:55 -05:00
M. Scot Breitenfeld
022a3f97b1 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-06-13 15:48:01 -05:00
M. Scot Breitenfeld
b08685f503 updated static vol_connector build 2019-06-13 15:47:55 -05:00
M. Scot Breitenfeld
d1b43964b3 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-06-13 10:41:39 -05:00
M. Scot Breitenfeld
92bebb782e fixed dependencies 2019-06-13 10:41:31 -05:00
M. Scot Breitenfeld
e5d1da0224 fixed invalid pointer 2019-06-13 10:31:14 -05:00
M. Scot Breitenfeld
c348d7d606 removed unregistering native vol 2019-06-13 09:56:50 -05:00
M. Scot Breitenfeld
46a62130fa fix for cycle dependency 2019-06-13 09:23:12 -05: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
Larry Knox
7e929a9bec Merge pull request #1728 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:bugfix/HDFFV-9976-add-configuration-or-make-options to develop
* commit '6e1dc507240fba447c79827897b099e91b9dd5c1':
  Add release note for enable-tools and enable-tests options.
  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.
  Add options to enable or disable building tools and tests.  The default is enabled for each.
2019-06-12 15:09:51 -05:00
Larry Knox
6e1dc50724 Add release note for enable-tools and enable-tests options. 2019-06-12 14:13:48 -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
M. Scot Breitenfeld
0742c15fca makefile clean-up 2019-06-12 09:21:59 -05:00
Dana Robinson
bb5e7822f4 Fixed an error string typo 2019-06-11 14:39:39 -07:00
Dana Robinson
436250369a Merge pull request #1725 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:h5dump_memory_bug to develop
* commit '0cf52525d5b45cc7cf6f89267da76b46ffa75f90':
  H5A__free() was renamed to H5A__shared_free() and now requires attr->shared to not be NULL.
  Fixed a memory issue where unfreed shared attribute dataspace memory tripped an assert in our memory sanity checks.
  Fixed a memory issue where unfreed shared attribute dataspace memory tripped an assert in our memory sanity checks.
2019-06-11 16:37:13 -05:00
Dana Robinson
0cf52525d5 H5A__free() was renamed to H5A__shared_free() and now requires
attr->shared to not be NULL.
2019-06-11 14:14:13 -07:00
M. Scot Breitenfeld
893641990a move the vol_info to an optional parameter 2019-06-11 14:28:10 -05:00
Dana Robinson
3fd4f270fd Merge branch 'h5dump_memory_bug' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into h5dump_memory_bug 2019-06-11 11:03:04 -07:00
Dana Robinson
c4ee9ef7c0 Fixed a memory issue where unfreed shared attribute dataspace memory
tripped an assert in our memory sanity checks.

Fixes HDFFV-10774.
2019-06-11 10:59:41 -07:00
Dana Robinson
2bd041f878 Added H5Fdelete call and VOL support (but no VFD/native implementation). 2019-06-11 09:04:23 -07:00
Dana Robinson
5098894ffd Fixed a memory issue where unfreed shared attribute dataspace memory
tripped an assert in our memory sanity checks.

Fixes HDFFV-10774.
2019-06-11 04:09:27 -07:00
Dana Robinson
48b0ff7724 Merge pull request #1721 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:release_fixes to develop
* commit 'a668acfc6cb541cc6afa63f964af3d808d058883':
  Minor tweaks to the VOL function comments to bring them in line with the RM.
2019-06-06 14:37:07 -05:00
Dana Robinson
a668acfc6c Minor tweaks to the VOL function comments to bring them in line with the
RM.
2019-06-06 11:06:04 -07:00
Larry Knox
54a07f556c Add options to enable or disable building tools and tests. The default
is enabled for each.
2019-06-05 23:20:01 -05:00
Larry Knox
f6b15437dd Merge pull request #1720 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '931abe94244c94e106835250e2f723f634a61c8c':
  Move set (MAX_PROC_COUNT 8) back to HPC options files.
  Move check for MPI defined to enable parallel from options scripts in HPC to config/cmake/HDF5options.cmake.
2019-06-05 17:19:19 -05:00
Larry Knox
931abe9424 Move set (MAX_PROC_COUNT 8) back to HPC options files. 2019-06-05 16:44:10 -05:00
Larry Knox
c64bfbd8a0 Move check for MPI defined to enable parallel from options scripts in HPC to config/cmake/HDF5options.cmake. 2019-06-05 16:35:04 -05:00
Allen Byrne
d3a6a9ed8f Merge pull request #1715 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '1ecce0e9bbc07cb3eb6f6bc1fca9d42c9e9c8176':
  Fix minor issues
  Update macro
  Java formatting of args
2019-06-05 15:06:53 -05:00
Dana Robinson
b31a53bfcb Merge pull request #1719 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vipl to develop
* commit 'a18727bc77c90a9925cabbde8d8ec46c757c6254':
  Added a VOL initialization property list type.
2019-06-05 15:04:06 -05:00
Dana Robinson
cb82b6c222 Merge pull request #1718 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:release_fixes to develop
* commit '9557087c0ed7811301610155654bf58d6583e38c':
  Minor warning fixes: * Fixed an error return value in H5Aint.c (NULL --> FAIL) * Added H5VL_FILE_GET_FILENO to H5trace.c
2019-06-05 11:26:12 -05:00
Dana Robinson
a18727bc77 Added a VOL initialization property list type. 2019-06-05 04:34:36 -07:00
Dana Robinson
9557087c0e Minor warning fixes:
* Fixed an error return value in H5Aint.c (NULL --> FAIL)
* Added H5VL_FILE_GET_FILENO to H5trace.c
2019-06-05 04:32:08 -07:00
Vailin Choi
82f656aed0 Merge pull request #5 in ~VCHOI/my_third_fork from develop to bugfix/new_shutdown_fsm
* commit '66699f2c7d889e725ced0fba579621ef97726b41': (49 commits)
  Minor fixes/improvements for VDS performance improvement (HDFFV-10693).
  Refactor H5S__hyper_project_intersection to operate directly on span trees, improving performance and removing the conditionn that the extents be equal.
  Refactor H5S__hyper_project_intersection to operate directly on span trees, improving performance and removing the conditionn that the extents be equal.
  Added code that disallows unregistering the native VOL connector.
  Rename H5VL_ID_GET_NAME to H5VL_OBJECT_GET_NAME
  Correct message command syntax
  Assign NULL to func_name/file_name/desc error entry pointers when clearing error stack
  Avoid clearing error stack when calling H5Eget_msg()
  Reorder lines in HDF5config.cmake so that additions to end of $HPC-HDF5options scripts will take precedence.
  updated -E option
  remove -M option
  added -M HPC to ctest command
  fixed missing paralle test
  Adding cross-compilation for theta (ANL) and qsub (COBALT) batch controls.
  Add note about CMake and spaces in paths
  Putting ctest command in variable CMD did not work for skipping failing tests.
  Code improvement Description:     Fixed potential division by zero occurrences and changed an assert to     if statement. Platforms tested:     Linux/64 (jelly)     Linux/64 (platypus)     Darwin (osx1011test)
  Combine "collective group and dataset write" and "independent group and dataset read" tests into one test.  The second test is dependent on the file created by the first test, and will not pass when run by itself.
  Add final list of single testphdf5 tests
  Pull a test from default testphdf5
  ...
2019-06-04 15:44:08 -05:00
Neil Fortner
66699f2c7d Merge pull request #1717 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
Complete rework of H5S__hyper_project_intersection. Addresses VDS performance issues raised in HDFFV-10693.

* commit 'd3e242eba1ba98726ed64b14e75f6adee724bea7':
  Minor fixes/improvements for VDS performance improvement (HDFFV-10693).
  Refactor H5S__hyper_project_intersection to operate directly on span trees, improving performance and removing the conditionn that the extents be equal.
  Refactor H5S__hyper_project_intersection to operate directly on span trees, improving performance and removing the conditionn that the extents be equal.
2019-06-04 11:06:23 -05:00
Binh-Minh Ribler
c9ae1cf557 Merge pull request #1693 in HDFFV/hdf5 from ~BMRIBLER/hdf5-bmr:develop to develop
* commit '8a57a683391eed79aca80a7325ef152bb76ad0a6':
  Code improvement Description:     Fixed potential division by zero occurrences and changed an assert to     if statement. Platforms tested:     Linux/64 (jelly)     Linux/64 (platypus)     Darwin (osx1011test)
2019-06-03 13:16:02 -05:00
Neil Fortner
d3e242eba1 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~nfortne2/hdf5_naf into develop 2019-06-03 12:48:02 -05:00
Neil Fortner
45daa3d168 Minor fixes/improvements for VDS performance improvement (HDFFV-10693). 2019-06-03 12:42:22 -05:00
Allen Byrne
1ecce0e9bb Fix minor issues 2019-06-03 10:45:20 -05:00
Neil Fortner
988d6d0844 Refactor H5S__hyper_project_intersection to operate directly on span trees, improving performance and removing the conditionn that the extents be equal. 2019-05-31 19:32:35 -05:00
Neil Fortner
35a8a549f6 Refactor H5S__hyper_project_intersection to operate directly on span
trees, improving performance and removing the conditionn that the
extents be equal.
2019-05-31 19:26:56 -05:00
Jacob Smith
ad2a7f4789 First pass at repack consolidating external storage if layout given.
Checks out manually, tests still complain.
2019-05-31 17:24:26 -05:00
Allen Byrne
94d3aa7166 Update macro 2019-05-31 12:33:50 -05:00
Allen Byrne
748da4d3e2 Java formatting of args 2019-05-30 15:56:02 -05:00
Jacob Smith
cb6029196a Formatting changes, mostly. 2019-05-30 15:46:39 -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
Jacob Smith
449d6807d5 Modify code comments for clarity.
Some minor reformatting.
2019-05-28 14:31:42 -05:00
Jacob Smith
132efb2b69 Some minor reformatting.
Replace tabs with spaces.
2019-05-24 16:59:14 -05:00
Jacob Smith
eb93107f9f Add test that uses the family member FAPL setting. 2019-05-24 16:58:31 -05:00
Jacob Smith
ea8c99cc56 refactor h5repack_main.c -- remove some redundancy, formatting 2019-05-24 16:57:47 -05:00
Dana Robinson
4af633d1c4 Merge pull request #1714 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5VLunregister_native to develop
* commit '0afb76228e16e63d72a7dbacdbb894d34fe29722':
  Added code that disallows unregistering the native VOL connector.
2019-05-24 16:04:47 -05:00
Dana Robinson
0afb76228e Added code that disallows unregistering the native VOL connector. 2019-05-24 13:39:45 -07: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
Jerome Soumagne
e1879a23ae Merge pull request #1706 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:topic_getloc to develop
* commit '982ed75720d7dece10623868cda22c46908baebe':
  Rename H5VL_ID_GET_NAME to H5VL_OBJECT_GET_NAME
2019-05-23 13:51:56 -05:00
Jerome Soumagne
982ed75720 Rename H5VL_ID_GET_NAME to H5VL_OBJECT_GET_NAME
Implement native H5VL_OBJECT_GET_NAME by addr
2019-05-23 13:48:04 -05:00
M. Scot Breitenfeld
2c79243111 added H5Pset_vol 2019-05-22 14:09:17 -05:00
Jordan Henderson
f37a17a6ce Merge pull request #1709 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '802b2927254b1de163589b1e4eaced47ee81ad07':
  Assign NULL to func_name/file_name/desc error entry pointers when clearing error stack
  Avoid clearing error stack when calling H5Eget_msg()
2019-05-21 09:51:36 -05:00
Allen Byrne
2717a0da8b Merge pull request #1710 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '0b086c3db2c6cd376b7bffb3236df1ef158ae80d':
  Correct message command syntax
  Add note about CMake and spaces in paths
2019-05-19 10:59:14 -05:00
Allen Byrne
0b086c3db2 Correct message command syntax 2019-05-17 15:14:20 -05:00
Jordan Henderson
802b292725 Assign NULL to func_name/file_name/desc error entry pointers when clearing error stack 2019-05-17 10:49:27 -05:00
Jordan Henderson
04f171d0cb Avoid clearing error stack when calling H5Eget_msg() 2019-05-17 10:48:04 -05:00
M. Scot Breitenfeld
4673a34825 added vol connector 2019-05-16 16:22:05 -05:00
M. Scot Breitenfeld
5e3dfa8bbe added test for vol_connector 2019-05-16 15:33:16 -05:00
M. Scot Breitenfeld
1f505e5ab2 removed H5VL constants 2019-05-16 15:20:32 -05:00
M. Scot Breitenfeld
32c4900e89 removed VOLL NULL connector and replaced it with native VOL 2019-05-16 15:05:12 -05:00
Allen Byrne
03da97d792 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '6eaef5ebd61b8019f66f51d3fe74ec3c1b1d4f0f':
  Reorder lines in HDF5config.cmake so that additions to end of $HPC-HDF5options scripts will take precedence.
  updated -E option
  remove -M option
  added -M HPC to ctest command
  fixed missing paralle test
  Adding cross-compilation for theta (ANL) and qsub (COBALT) batch controls.
2019-05-14 14:55:12 -05:00
Allen Byrne
6eaef5ebd6 Merge pull request #1705 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '9406278103a7b72d3eacea9fbeaadbf34bf7e43a':
  Reorder lines in HDF5config.cmake so that additions to end of $HPC-HDF5options scripts will take precedence.
2019-05-14 14:51:21 -05:00
Jacob Smith
d1ed626845 Fit help message to 80 character width and clarify some details. 2019-05-14 13:53:28 -05:00
Larry Knox
9406278103 Reorder lines in HDF5config.cmake so that additions to end of $HPC-HDF5options scripts will take precedence. 2019-05-14 13:52:25 -05:00
Scot Breitenfeld
ef20b65be7 Merge pull request #1703 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '6546c764d3d39028d2ec61da236cc69b44414127':
  updated -E option
  remove -M option
2019-05-10 16:07:27 -05:00
M. Scot Breitenfeld
6546c764d3 updated -E option 2019-05-10 16:07:12 -05:00
M. Scot Breitenfeld
b4b83f6733 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-05-10 15:51:27 -05:00
M. Scot Breitenfeld
44fdc3bf96 remove -M option 2019-05-10 15:45:47 -05:00
Scot Breitenfeld
5c5f6d9942 Merge pull request #1701 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '19d2cea9aec648eb3c609dee4d2dc9baa101c967':
  added -M HPC to ctest command
2019-05-10 14:41:23 -05:00
M. Scot Breitenfeld
19d2cea9ae added -M HPC to ctest command 2019-05-10 14:34:56 -05:00
Scot Breitenfeld
c23118aff1 Merge pull request #1700 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'd786bedd18e6d521e240aa78bb633b66f8f975c8':
  fixed missing paralle test
2019-05-10 12:15:59 -05:00
M. Scot Breitenfeld
d786bedd18 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-05-10 12:13:31 -05:00
M. Scot Breitenfeld
aaacc50f64 fixed missing paralle test 2019-05-10 12:13:25 -05:00
Scot Breitenfeld
5b4fecaa39 Merge pull request #1699 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'cf6f2f039d8e1c98bdd9690357e2b4670f23ae4e':
  Adding cross-compilation for theta (ANL) and qsub (COBALT) batch controls.
2019-05-10 09:01:50 -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
Allen Byrne
7fdc2f7e20 Add note about CMake and spaces in paths 2019-05-07 10:03:20 -05:00
Larry Knox
68e34f7be1 Merge pull request #1695 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'df35529e3d0529e9df11806d267ef8c4779b79e3':
  Putting ctest command in variable CMD did not work for skipping failing tests.
2019-05-06 17:01:07 -05:00
Larry Knox
df35529e3d Putting ctest command in variable CMD did not work for skipping failing
tests.
2019-05-06 16:38:38 -05:00
Binh-Minh Ribler
8a57a68339 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5-bmr into develop 2019-05-05 00:43:37 -05:00
Binh-Minh Ribler
bdf882ae39 Code improvement
Description:
    Fixed potential division by zero occurrences and changed an assert to
    if statement.
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1011test)
2019-05-05 00:41:19 -05:00
Scot Breitenfeld
e0ff0e8dd5 Merge pull request #1692 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '8a4f679fda20577c4528977d0ee9a7e4c5bee055':
  Combine "collective group and dataset write" and "independent group and dataset read" tests into one test.  The second test is dependent on the file created by the first test, and will not pass when run by itself.
2019-05-03 17:09:11 -05:00
Larry Knox
8a4f679fda Combine "collective group and dataset write" and "independent group and
dataset read" tests into one test.  The second test is dependent on the
file created by the first test, and will not pass when run by itself.
2019-05-03 16:08:22 -05:00
Scot Breitenfeld
d3a51964ae Merge pull request #1691 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '813d8fd597b030a248db6316dd98f738c0c61ea8':
  Add final list of single testphdf5 tests
2019-05-02 16:24:46 -05:00
Allen Byrne
813d8fd597 Add final list of single testphdf5 tests 2019-05-02 16:20:15 -05:00
hdftest
c389149d66 Merge pull request #1689 in HDFFV/hdf5 from ~HDFTEST/hdf5_hft:develop to develop
* commit 'ff596e9d356713a35dc35d9b5ba0439ed5ca29ac':
  Snapshot version 1.11 release 5.     Update version to 1.11.6.
2019-05-02 16:18:35 -05:00
Scot Breitenfeld
d7c6a99b7b Merge pull request #1690 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b6bebb245b043fae546390c00288a069da785868':
  Pull a test from default testphdf5
2019-05-02 12:23:58 -05:00
Allen Byrne
b6bebb245b Pull a test from default testphdf5 2019-05-02 12:07:37 -05:00
hdftest
ff596e9d35 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~hdftest/hdf5_hft into develop 2019-05-02 10:43:30 -05:00
hdftest
1cec61a775 Snapshot version 1.11 release 5.
Update version to 1.11.6.
2019-05-02 10:42:53 -05:00
Scot Breitenfeld
6991bf332a Merge pull request #1688 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'c643cc05316e11471c4bef30cd09b9d4437f85fd':
  Pull out another failing test
2019-05-02 10:33:49 -05:00
Allen Byrne
c643cc0531 Pull out another failing test 2019-05-02 10:27:49 -05:00
Allen Byrne
2f406b8955 Merge pull request #1687 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ee35fb8a7fe3804e4146c54020b6e2272ab251e3':
  Change default for HPC
  Correct var usage syntax
2019-05-01 16:42:50 -05:00
Allen Byrne
ee35fb8a7f Change default for HPC 2019-05-01 16:23:08 -05:00
Allen Byrne
c030a7123d Correct var usage syntax 2019-05-01 14:46:27 -05:00
Scot Breitenfeld
c30a24bb16 Merge pull request #1686 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '854223e3fcf5e90ad5fae25ff05deb4276ce001b':
  Add missing default
  Correct varname
  Separate out MPI tests that fail on MPI version
2019-05-01 14:33:21 -05:00
Allen Byrne
854223e3fc Add missing default 2019-05-01 14:09:06 -05:00
Allen Byrne
725f75baa7 Correct varname 2019-05-01 13:24:02 -05:00
Allen Byrne
e0de04d355 Separate out MPI tests that fail on MPI version 2019-05-01 12:31:55 -05:00
Allen Byrne
bbf07128b5 Merge pull request #1685 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '87e491da88d49134e20418733f64a3307b5cd74c':
  HDFFV-10776 missing compiler flags
2019-05-01 09:32:53 -05:00
Allen Byrne
87e491da88 HDFFV-10776 missing compiler flags 2019-04-30 16:42:08 -05:00
Allen Byrne
610f7626ae Merge pull request #1683 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '0a73ce19a4e7f57fe1bb06ca5be8d4697fe079aa':
  Fix Java JUnit-TestH5P failure on 32-bit arch
2019-04-30 15:38:30 -05:00
Jordan Henderson
0a73ce19a4 Fix Java JUnit-TestH5P failure on 32-bit arch 2019-04-30 15:32:37 -05:00
Quincey Koziol
206276d6f4 Merge pull request #1605 in HDFFV/hdf5 from merge_hyperslab_update_01 to develop
* commit '08b009cc4ab2a8d8d289697d6d4688c0e5c53c6e':
  Clean up if-else chain.
  Remove thread-local copy of hyperslab operation generation value.
  Core changes to selection code from the hyperslab_updates branch.
2019-04-29 21:33:17 -05:00
Dana Robinson
803339a432 Merge pull request #1681 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:is_accessible_test_love to develop
* commit '0c896fcdf9ebde870ead2dcee9a82e135554c28d':
  Missed an env check before strcmp.
2019-04-29 17:54:12 -05:00
Quincey Koziol
08b009cc4a Merge remote-tracking branch 'origin/develop' into merge_hyperslab_update_01 2019-04-29 17:51:55 -05:00
Dana Robinson
0c896fcdf9 Missed an env check before strcmp. 2019-04-29 14:50:13 -07:00
Binh-Minh Ribler
3d904f8141 Merge pull request #1667 in HDFFV/hdf5 from ~BMRIBLER/hdf5-bmr:develop to develop
* commit '3bc708078c6da432e68d7c8cda695ad7b794c860':
  Added more info to the function headers.
  Added new C++ wrappers - HDFFV-10622
2019-04-27 23:14:36 -05:00
Quincey Koziol
1a4b236aad Merge pull request #1676 in HDFFV/hdf5 from ~KOZIOL/hdf5:refactor_obj_create_params to develop
* commit '53ffbf4bf89350b5d6b90c11585f39af94209754':
  Cast enum to int, for strict varargs handling.
  Refactor group creation parameters to take them out of the group creation property list and pass them as normal function parameters.
  Warning cleanup
  Refactor link creation parameters from being passing as properties in the link creation property list to vararg function parameters.
  Minor cleanups
  Refactor attribute creation parameters to move parameters out of creation property list and into function parameters.
  A few minor cleanups
  Refactor dataset creation parameters out of the dataset creation property list and pass them as regular function parameters.
2019-04-26 17:45:34 -05:00
Dana Robinson
5c234fb5fd Merge pull request #1677 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:is_accessible_test_love to develop
* commit 'e66bf948a7acba0ddc76239f6d02f17c8b10eb0f':
  Fix for split VFD and file cleanup when testing H5Fis_hdf5 and H5Fis_accessible in tfile.c.
  Improvements to the H5Fis_accessible() and H5Fis_hdf5() tests in tfile.c. * General code tidying. * Expanded tests to work with multi-file VFDs.
2019-04-26 15:59:34 -05:00
Dana Robinson
e66bf948a7 Fix for split VFD and file cleanup when testing H5Fis_hdf5
and H5Fis_accessible in tfile.c.
2019-04-26 12:10:54 -07:00
Allen Byrne
61e171cad3 Merge pull request #1678 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'e2eaac93386feadef194962cb258e660038d39f1':
  ESE-97 add vol_plugin test to CMake builds
2019-04-26 10:01:00 -05:00
Quincey Koziol
53ffbf4bf8 Cast enum to int, for strict varargs handling. 2019-04-25 12:57:23 -05:00
Ray Lu
5b0e8ab4bb Merge pull request #1679 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10760-skipping-external_env-and-vds_env to develop
* commit '2c9025dcb96e5445ce878fa9e1d05fca738ae328':
  HDFFV-10760 Skipping external_env.c and vds_env.c for CMake to do VOL check and VFD check.  Temporarily skipping external_env.c and vds_env.c for VFD check and VOL check in CMake following the example of links_env. Leave them for future work.
2019-04-25 12:52:07 -05:00
Songyu Lu
2c9025dcb9 HDFFV-10760 Skipping external_env.c and vds_env.c for CMake to do VOL check and VFD check. Temporarily skipping external_env.c and vds_env.c for VFD check and VOL check in CMake following the example of links_env. Leave them for future work. 2019-04-25 11:55:45 -05:00
Allen Byrne
e2eaac9338 ESE-97 add vol_plugin test to CMake builds 2019-04-25 10:44:06 -05:00
Dana Robinson
568c3624de Improvements to the H5Fis_accessible() and H5Fis_hdf5() tests
in tfile.c.
* General code tidying.
* Expanded tests to work with multi-file VFDs.
2019-04-25 01:07:42 -07:00
Quincey Koziol
6d912bf0b5 Refactor group creation parameters to take them out of the group creation
property list and pass them as normal function parameters.
2019-04-25 01:12:46 -05:00
Quincey Koziol
ff0b56fa38 Warning cleanup 2019-04-25 01:12:28 -05:00
Quincey Koziol
b8bb6aec7e Refactor link creation parameters from being passing as properties in the
link creation property list to vararg function parameters.
2019-04-25 00:53:58 -05:00
Quincey Koziol
07c3a39bf5 Minor cleanups 2019-04-25 00:53:16 -05:00
Quincey Koziol
9fadb39656 Refactor attribute creation parameters to move parameters out of creation
property list and into function parameters.
2019-04-24 23:33:56 -05:00
Quincey Koziol
59635ab747 A few minor cleanups 2019-04-24 23:22:28 -05:00
Quincey Koziol
0ca6b1305f Refactor dataset creation parameters out of the dataset creation property
list and pass them as regular function parameters.
2019-04-24 22:31:36 -05:00
M. Scot Breitenfeld
1d6641ee3a added connector_name test 2019-04-24 15:17:10 -05:00
M. Scot Breitenfeld
fc769f425f added missing files 2019-04-24 13:59:26 -05:00
M. Scot Breitenfeld
7dd53873f7 Merge branch 'develop' into H10621 2019-04-24 12:57:30 -05:00
Ray Lu
4fbe80acc2 Merge pull request #1672 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10658-performance-drop-between-1.8-fix4 to develop
* commit '562e8ec915c18f14390558399186aba7e3ead9c1':
  Changing file names and directory names to avoid possible conflict during parallel 'make check'.
2019-04-23 21:22:59 -05:00
Jordan Henderson
1adec082f2 Merge pull request #1670 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '4a4c0bc3972cde177c0a6e2a191b1fa187846c08':
  Fix issue with H5Iiterate always stopping with an error after the first iteration
2019-04-23 20:10:37 -05:00
Songyu Lu
562e8ec915 Changing file names and directory names to avoid possible conflict during parallel 'make check'. 2019-04-23 16:40:02 -05:00
Jordan Henderson
4a4c0bc397 Fix issue with H5Iiterate always stopping with an error after the first iteration 2019-04-23 14:12:58 -05:00
Quincey Koziol
544a36e75e Merge pull request #1666 in HDFFV/hdf5 from ~KOZIOL/hdf5:unwrap_vol_callback to develop
* commit '62198c2436ac3787afb49fa990d1ba8204264dba':
  Add an 'unwrap' VOL callback, so that connectors can unwrap an underlying object without closing it.  (Especially needed for pass-through connectors)
2019-04-23 11:06:04 -05:00
Binh-Minh Ribler
3bc708078c Added more info to the function headers. 2019-04-22 18:50:33 -05:00
Ray Lu
11dff70dc1 Merge pull request #1668 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10658-performance-drop-between-1.8-fix3 to develop
* commit '2c47094d4004c916d16667a23efe018db2c0558d':
  Changing file names to avoid possible conflicts during parallel test.
2019-04-22 11:45:06 -05:00
Songyu Lu
2c47094d40 Changing file names to avoid possible conflicts during parallel test. 2019-04-22 10:23:38 -05:00
Binh-Minh Ribler
c3d7708e53 Added new C++ wrappers - HDFFV-10622
Description:
    Added wrappers for H5Pset/get_create_intermediate_group:
        // Specifies in property list whether to create missing
        // intermediate groups
        void setCreateIntermediateGroup(bool crt_intmd_group) const;

        // Determines whether property is set to enable creating missing
        // intermediate groups
        bool getCreateIntermediateGroup() const;
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1011test)
2019-04-21 23:18:36 -05:00
Quincey Koziol
62198c2436 Add an 'unwrap' VOL callback, so that connectors can unwrap an underlying
object without closing it.  (Especially needed for pass-through connectors)
2019-04-21 14:45:54 -05:00
Ray Lu
500f6cccbd Merge pull request #1665 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10658-performance-drop-between-1.8-fix2 to develop
* commit 'f42b6ace1899bd1e720bbdf4873e6f6e61bee39b':
  Changing output file names to avoid possible conflict during parallel build and test, especially on jelly.
2019-04-19 14:01:34 -05:00
Songyu Lu
f42b6ace18 Changing output file names to avoid possible conflict during parallel build and test, especially on jelly. 2019-04-19 12:55:39 -05:00
Ray Lu
73dda77dc7 Merge pull request #1663 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10658-performance-drop-between-1.8_fix to develop
* commit 'cd9e9a1b5a20617f885ca6dc686625abb8a79a58':
  Minor fix: marking an internal function of the test for export.
2019-04-18 14:50:29 -05:00
Songyu Lu
cd9e9a1b5a Minor fix: marking an internal function of the test for export. 2019-04-18 14:23:24 -05:00
Vailin Choi
11c8c98352 Merge pull request #1654 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10579-h5arename-function-fails-when to develop
* commit '53a5c3be903ce7c24d02a6bd3a8d9b07a3f82404':
  Change the checking to H5I_INVALID_HID in test_attr_dense_rename().
  Fix for HDFFV-10579 H5Arename fails when creation order of attributes is tracked. The attribute needs to be removed from the creation order index v2 B-tree before re-inserting the renamed attribute via H5A__dense_insert().
2019-04-18 13:15:14 -05:00
Allen Byrne
80ec7cfd6a Merge pull request #1662 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'cc5f91d1d2b1373fae57afc4e79a530b19343949':
  Fix CMake errors
2019-04-18 11:44:50 -05:00
Allen Byrne
cc5f91d1d2 Fix CMake errors 2019-04-18 11:35:11 -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
b5ef82a178 Moving the handling of null prefix into H5_combine_path. 2019-04-17 17:42:01 -05:00
Songyu Lu
fc47e2e07a Changing the prefix of external file and VDS from empty string to null for performance improvement. 2019-04-17 16:53:40 -05:00
Songyu Lu
b90b5be59b Improving the condition checking of empty string. 2019-04-17 12:35:44 -05:00
Quincey Koziol
90efe04bee Merge pull request #1659 in HDFFV/hdf5 from ~KOZIOL/hdf5:vds_set_extent_fix to develop
* commit '659e212e119b4920d2bd41b397cfb0e958817eba':
  Correct set extent operation on VDS to iterate over # of used sub-datasets instead of # of allocated sub-datasets.
2019-04-17 12:31:30 -05:00
Songyu Lu
1c6bce2f9b Replacing string operation strdup with assignment for empty string. 2019-04-17 11:16:51 -05:00
Quincey Koziol
659e212e11 Correct set extent operation on VDS to iterate over # of used sub-datasets
instead of # of allocated sub-datasets.
2019-04-16 18:07:29 -05:00
Vailin Choi
53a5c3be90 Change the checking to H5I_INVALID_HID in test_attr_dense_rename(). 2019-04-16 11:47:13 -05:00
Allen Byrne
1bcad080c1 Merge pull request #1658 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '2420ea11ad510121cc7553378a6bfa6fd8fdcd05':
  Remove conflict symbols
  HDFFV-10741 - remove SKIP_ERRSTK_TESTS option
2019-04-15 15:13:48 -05:00
Allen Byrne
2420ea11ad Remove conflict symbols 2019-04-15 15:03:01 -05:00
Allen Byrne
68bddef35d HDFFV-10741 - remove SKIP_ERRSTK_TESTS option 2019-04-15 14:46:23 -05:00
Larry Knox
4d224f4f19 Merge pull request #1657 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '901c65eb2b102cbe431b82a6f72510b2f417ae6a':
  Fix merge conflicts
2019-04-15 14:36:51 -05:00
Allen Byrne
901c65eb2b Fix merge conflicts 2019-04-15 14:35:30 -05:00
Allen Byrne
685c4e08ae Merge pull request #1656 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '4c9efd70b0e6616fa2551a5a3a9b51bac0e54a1c':
  Fix fortran omission
  Fix java for new H5Fget_info function
2019-04-15 14:31:23 -05:00
Allen Byrne
4c9efd70b0 Fix fortran omission 2019-04-15 14:27:02 -05:00
Dana Robinson
5d3d1da927 Merge pull request #1652 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:check_passthrough_vol to develop
* commit '9ee3d472113fc3e66ef34e40a0990ed07a2824bc':
  Renamed the HDF5_TEST_VOL option to HDF5_TEST_PASSTHROUGH_VOL.
  Renamed the autotools check-vol target to check-passthrough-vol.
2019-04-15 13:43:16 -05:00
Allen Byrne
6bf109d1ae Fix java for new H5Fget_info function 2019-04-15 11:19:29 -05:00
Songyu Lu
6fdf7008c1 Adding back links_env.out which I accidentally removed in my previous commit. 2019-04-15 09:39:57 -05:00
Songyu Lu
bd137d2c59 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~songyulu/hdf5_ray into HDFFV-10658-performance-drop-from-1-8 2019-04-15 09:28:12 -05:00
Quincey Koziol
5696c02a3c Merge pull request #1653 in HDFFV/hdf5 from ~KOZIOL/hdf5:get_fileno to develop
* commit 'd7e1464058515d07b838741f65a77977224814de':
  Add C++, Java, and FORTRAN wrappers and tests for H5Fget_fileno
  Add trace macro.
  Add H5Fget_fileno() API routine.
2019-04-13 23:06:38 -05:00
Quincey Koziol
d7e1464058 Add C++, Java, and FORTRAN wrappers and tests for H5Fget_fileno 2019-04-13 22:58:16 -05:00
Quincey Koziol
4918d443bb Add trace macro. 2019-04-12 18:21:35 -05:00
Vailin Choi
4e05249f98 Fix for HDFFV-10579 H5Arename fails when creation order of attributes is tracked.
The attribute needs to be removed from the creation order index v2 B-tree before
re-inserting the renamed attribute via H5A__dense_insert().
2019-04-12 14:51:37 -05:00
Vailin Choi
66184e567c Merge pull request #3 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10579-h5arename-function-fails-when
* commit '52276f3713eec584044bc72d4724507848cfeba0':
  Modifications based on PR feedback: (1) Add H5Sdeprec.c to src/CMakeLists.txt (2) Add test for H5Sencode1.
  Modification for num_elem based on PR feedback.
  HDFFV-10365: Changes as described in the RFC: H5Sencode/H5Sdecode Format Change. This also addresses HDFFV-10255: H5Sencode/decode performance issue.
2019-04-12 13:52:32 -05:00
Quincey Koziol
2eac0fccbc Add H5Fget_fileno() API routine. 2019-04-11 22:22:21 -05:00
Songyu Lu
02cc5ba678 Merge branch 'HDFFV-10658-performance-drop-from-1-8' of https://bitbucket.hdfgroup.org/scm/~songyulu/hdf5_ray into HDFFV-10658-performance-drop-from-1-8 2019-04-11 17:32:00 -05:00
songyulu
0243449188 Taking out two unnecessary diff output files. 2019-04-11 17:23:04 -05:00
Songyu Lu
d6ada6ff1f Taking out unnecessary diff files for output. 2019-04-11 16:50:06 -05:00
Songyu Lu
6e8bd1280a Adding some comments. 2019-04-11 16:10:54 -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
c3c3c1e142 Adding the standard output files for the external_env.c and vds_env.c tests. 2019-04-11 12:59:07 -05:00
Dana Robinson
ff51724bdb Renamed the autotools check-vol target to check-passthrough-vol. 2019-04-11 10:46:22 -07:00
Songyu Lu
a58c01aac1 Small correction for my previous commit. 2019-04-11 10:19:45 -05:00
Songyu Lu
c0e05f0747 Forgot to add external_common.c and external_common.h. 2019-04-10 16:48:42 -05:00
Songyu Lu
417cd9da87 Updated CMake for the splitting of external.c and vds.c. 2019-04-10 16:02:28 -05:00
Songyu Lu
bf6479fcee Minor fix: removal of unnecessary enum values. 2019-04-10 11:22:24 -05:00
Songyu Lu
06002f8c22 Minor fixes: updating the test vds_env.c according to the set up of vds.c. 2019-04-10 10:21:38 -05: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
04d07d967a Left out this file in previous commit. 2019-04-09 17:40:24 -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
52276f3713 Merge pull request #1645 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10365-h5sencode-decode-bug-when-num to develop
* commit '3ccc98e256587c43f6ba5a31a2cf9d922f4e1773':
  Modifications based on PR feedback: (1) Add H5Sdeprec.c to src/CMakeLists.txt (2) Add test for H5Sencode1.
  Modification for num_elem based on PR feedback.
  HDFFV-10365: Changes as described in the RFC: H5Sencode/H5Sdecode Format Change. This also addresses HDFFV-10255: H5Sencode/decode performance issue.
2019-04-08 14:11:28 -05:00
Vailin Choi
3ccc98e256 Modifications based on PR feedback:
(1) Add H5Sdeprec.c to src/CMakeLists.txt
(2) Add test for H5Sencode1.
2019-04-08 12:33:45 -05:00
Songyu Lu
d8ff8da46c Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~songyulu/hdf5_ray into HDFFV-10658-performance-drop-from-1-8 2019-04-08 11:17:59 -05:00
Vailin Choi
c57ae99612 Modification for num_elem based on PR feedback. 2019-04-08 11:09:11 -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
Quincey Koziol
92f30fd3d9 Merge remote-tracking branch 'origin/develop' into merge_hyperslab_update_01 2019-04-06 16:20:55 -05:00
Allen Byrne
74677ba5ce Merge pull request #1637 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '2e2301e683f0aadf3541b596416d04bbc7d690c0':
  Update java m4 to latest
2019-04-06 10:33:05 -05:00
Vailin Choi
bd54c3022b Merge pull request #2 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10365-h5sencode-decode-bug-when-num
* commit 'f38fa53fee5e8caf1aa1a5356b48d692eb3a3d59':
  Fix for HDFFV-10271 hyperslab encoding incorrect length.
2019-04-05 22:20:43 -05:00
Vailin Choi
f38fa53fee Merge pull request #1644 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10271-version-2-hyperslab-encoding to develop
* commit '7fe665ebff3e86aaf1eef92199f757a5c0d1fe80':
  Fix for HDFFV-10271 hyperslab encoding incorrect length.
2019-04-05 22:18:00 -05:00
Vailin Choi
ace8e1a64f Merge pull request #1 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10365-h5sencode-decode-bug-when-num
* commit '227b7131d1e4b5edce1c3eecc9a7e7f560363093':
  Move dataspace selection-specific coding to the callbacks as preparation for the H5Sencode changes.
2019-04-05 22:14:05 -05:00
Vailin Choi
227b7131d1 Merge pull request #1642 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/separate_selection_specific to develop
* commit '4142d8b7d4ac48cffcc2b92af4a54352b329865b':
  Move dataspace selection-specific coding to the callbacks as preparation for the H5Sencode changes.
2019-04-05 22:08:24 -05:00
Vailin Choi
7fe665ebff Fix for HDFFV-10271 hyperslab encoding incorrect length. 2019-04-05 11:34:58 -05:00
Allen Byrne
2e2301e683 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '9e934e75fa9a66bdd95fd3656ca0c19f910123c7':
  Set V112 as the latest format and extend the arrays of version bounds.
2019-04-05 10:36:43 -05:00
Quincey Koziol
ef7f3ef177 Merge remote-tracking branch 'origin/develop' into merge_hyperslab_update_01 2019-04-05 10:35:38 -05:00
Vailin Choi
9e934e75fa Merge pull request #1639 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/add_v112_version_bounds to develop
* commit '0073f198978dea0116bd74816b3119dfeb09144b':
  Set V112 as the latest format and extend the arrays of version bounds.
2019-04-05 10:23:05 -05:00
Allen Byrne
eb3db27532 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '87ddba868fdf0e14d004a697e09c12d0ca949b67':
  Setting API context for fapl and libver_bounnds in preparation for the H5Sencode changes.
2019-04-05 09:36:12 -05:00
Vailin Choi
87ddba868f Merge pull request #1640 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/api_context_fapl_libver to develop
* commit 'c50c2696e8b3885e2966b7e027ba219e65ef3646':
  Setting API context for fapl and libver_bounnds in preparation for the H5Sencode changes.
2019-04-04 23:36:15 -05:00
Vailin Choi
4142d8b7d4 Move dataspace selection-specific coding to the callbacks as preparation for the H5Sencode changes. 2019-04-04 23:31:01 -05:00
Vailin Choi
c50c2696e8 Setting API context for fapl and libver_bounnds in preparation for the H5Sencode changes. 2019-04-04 17:25:28 -05:00
Quincey Koziol
dde0a1c93a Merge remote-tracking branch 'origin/develop' into merge_hyperslab_update_01 2019-04-04 16:45:34 -05:00
Vailin Choi
0073f19897 Set V112 as the latest format and extend the arrays of version bounds. 2019-04-04 16:29:37 -05:00
Songyu Lu
5e7cccb5a2 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~songyulu/hdf5_ray into HDFFV-10658-performance-drop-from-1-8 2019-04-04 13:16:27 -05:00
Allen Byrne
73f01f98cd Update java m4 to latest 2019-04-04 12:59:43 -05:00
Songyu Lu
50d9a397ab 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.
2019-04-04 11:03:05 -05:00
Quincey Koziol
aa696a4771 Merge pull request #1598 in HDFFV/hdf5 from env_vol_load to develop
* commit 'fc945999d00fc66f3b6251115f8bc13d4b18814c':
  Specify the default VOL connector to use with an environment variable.
2019-04-03 18:09:27 -05:00
Quincey Koziol
fc945999d0 Merge remote-tracking branch 'origin/develop' into env_vol_load 2019-04-03 17:27:10 -05:00
Allen Byrne
3d99a6a793 Merge pull request #1621 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '5774e451dde6410ab2491acda309c43517a49935':
  Add help info
  Update for namespace
  Add namespace option to dependencies
  Correct examples for packaging
  HDFFV-10741 -  add option to skip tool error stack tests
2019-04-03 16:33:06 -05:00
Allen Byrne
5774e451dd Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '7ff1e967b18bf8ba4583b27866b8c29c462af857':
  Correct namespace handling
2019-04-03 15:12:52 -05:00
Allen Byrne
7ff1e967b1 Merge pull request #1635 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '761070f561801a8eb8704a992764c3ad4716ca7c':
  Correct namespace handling
2019-04-03 15:06:28 -05:00
Allen Byrne
761070f561 Correct namespace handling 2019-04-03 15:02:42 -05:00
Allen Byrne
cb0ff923de Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '844f38c6462f42a9a3a6002de6a4acb0520b8fb7':
  Correct entry
  Snapshot version 1.11 release 4. Update version to 1.11.5.
  Allow option to select NAMESPACE
  Correct examples for packaging
2019-04-03 08:56:57 -05:00
Allen Byrne
844f38c646 Merge pull request #1634 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '9f7d66e0f4dfc4b710f91aad26c38287b159ed9c':
  Correct entry
2019-04-03 08:56:03 -05:00
Allen Byrne
9f7d66e0f4 Correct entry 2019-04-03 08:55:11 -05:00
Allen Byrne
bd2317cc11 Add help info 2019-04-03 08:52:28 -05:00
Allen Byrne
bf7a1c1fcd Merge pull request #1626 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'b968f9273a30124cb53ab0771fee5de437d20967':
  Allow option to select NAMESPACE
2019-04-02 13:37:20 -05:00
Allen Byrne
cab705c8cb Update for namespace 2019-04-02 12:57:02 -05:00
Allen Byrne
8a09caf90a Add namespace option to dependencies 2019-04-02 12:30:16 -05:00
Larry Knox
a61ba73814 Merge pull request #1630 in HDFFV/hdf5 from ~HDFTEST/hdf5_hft:develop to develop
* commit '7a0ac416c9e42a650d99b77feefbb2dc2df9a155':
  Snapshot version 1.11 release 4. Update version to 1.11.5.
2019-04-02 12:20:16 -05:00
hdftest
7a0ac416c9 Snapshot version 1.11 release 4.
Update version to 1.11.5.
2019-04-01 16:11:28 -05:00
Allen Byrne
b968f9273a Allow option to select NAMESPACE 2019-03-28 16:40:45 -05:00
Allen Byrne
c8494e34d1 Merge pull request #1625 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '90a58f2b2f5a612ce7326fbfe3a476e31d148084':
  Correct examples for packaging
2019-03-28 16:37:40 -05:00
Allen Byrne
90a58f2b2f Correct examples for packaging 2019-03-28 16:37:11 -05:00
Allen Byrne
0d6fd55212 Correct examples for packaging 2019-03-28 13:41:31 -05:00
Allen Byrne
6e2e461087 HDFFV-10741 - add option to skip tool error stack tests 2019-03-26 14:00:34 -05:00
Scot Breitenfeld
b530043b7a Merge pull request #1614 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'a1d7a9b8592e8b842b940f43733cc2df5d5d81bb':
  HDFFV-10738 Wrong INTENT for H5LTread_dataset_double_f
2019-03-26 13:30:37 -05:00
M. Scot Breitenfeld
a1d7a9b859 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-03-25 10:02:01 -05:00
M. Scot Breitenfeld
b2423350f4 HDFFV-10738 Wrong INTENT for H5LTread_dataset_double_f
Fixed.

Also fixed INTENT issues for H5DS, H5IM and H5TB when reading or getting.
2019-03-25 10:00:31 -05:00
Binh-Minh Ribler
d818edb110 Merge pull request #1610 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_fixbug:develop to develop
* commit 'fe104cc38ffbdb39d3e04da107d86ebfc7e8b622':
  Test improvement Description     Moved the new tests to a more appropriate test function. Platforms tested:     Linux/64 (jelly)
  Fixed HDFFV-10210 and HDFFV-10587 Description:     - Added parameter validation (HDFFV-10210)     - Added detection of division by zero (HDFFV-10587 - CVE-2018-17438)     - Fixed typos in various tests Platforms tested:     Linux/64 (jelly)     Linux/64 (platypus)     Darwin (osx1011test)
2019-03-23 21:10:30 -05:00
Quincey Koziol
7dce8523c1 Merge remote-tracking branch 'origin/develop' into merge_hyperslab_update_01 2019-03-23 11:50:48 -05:00
Songyu Lu
e09e2fc4ad HDFFV-10658: I left out this file in my previous commit. 2019-03-22 10:03:06 -05:00
Songyu Lu
9622aac313 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-03-22 09:53:15 -05:00
Dana Robinson
02abb65dde Merge pull request #1611 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:tfile_vfd to develop
* commit 'b66df06dbf607741127137ebfda373890cb37649':
  Changes that show the right way to iterate over enums.
  Changes that show the right way to iterate over enums.
  Used the H5_INC_ENUM macro to squash enum value increment warnings.
2019-03-21 13:21:15 -05:00
Dana Robinson
b66df06dbf Merge branch 'tfile_vfd' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into tfile_vfd 2019-03-21 10:19:32 -07:00
Dana Robinson
85e2214d55 Changes that show the right way to iterate over enums. 2019-03-21 10:18:16 -07:00
Dana Robinson
ef8aa13174 Changes that show the right way to iterate over enums. 2019-03-21 10:09:55 -07:00
Binh-Minh Ribler
fe104cc38f Test improvement
Description
    Moved the new tests to a more appropriate test function.
Platforms tested:
    Linux/64 (jelly)
2019-03-21 11:09:17 -05:00
Dana Robinson
97cdcc47e4 Used the H5_INC_ENUM macro to squash enum value increment warnings. 2019-03-21 01:15:09 -07:00
Quincey Koziol
4f8a844a00 Clean up if-else chain. 2019-03-20 17:13:48 -05:00
Quincey Koziol
962fb0ccb8 Merge remote-tracking branch 'origin/develop' into merge_hyperslab_update_01 2019-03-20 17:02:21 -05:00
Allen Byrne
b01b84f245 Merge pull request #1608 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '7a589a0a39bc3b46981f4902e5fc1150c05ecebd':
  Fix CMake error in name
2019-03-20 16:05:30 -05:00
Binh-Minh Ribler
222346f373 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5_bmr_fixbug into develop 2019-03-20 14:07:40 -05:00
Binh-Minh Ribler
7add52ff4f Fixed HDFFV-10210 and HDFFV-10587
Description:
    - Added parameter validation (HDFFV-10210)
    - Added detection of division by zero (HDFFV-10587 - CVE-2018-17438)
    - Fixed typos in various tests
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1011test)
2019-03-20 14:03:48 -05:00
Quincey Koziol
adb0928827 Remove thread-local copy of hyperslab operation generation value. 2019-03-19 16:40:07 -05:00
Quincey Koziol
93b72d60ab Merge remote-tracking branch 'origin/develop' into merge_hyperslab_update_01 2019-03-19 16:20:54 -05:00
Allen Byrne
7a589a0a39 Fix CMake error in name 2019-03-19 14:47:08 -05:00
Dana Robinson
604b67df19 Merge pull request #1607 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '2e867d2a6dd5f330011f20333064aa0c12464d59':
  Commented out memcpy overlap check while we investigate parallel filters issues.
2019-03-18 22:39:30 -05:00
Dana Robinson
2e867d2a6d Commented out memcpy overlap check while we investigate
parallel filters issues.
2019-03-18 19:06:58 -07:00
Dana Robinson
c50b7c4b7e Merge pull request #1606 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '2db272521e2da51663aa65fc9297cd6cf763e641':
  Yanked check for memcpy n > 0
2019-03-17 20:34:15 -05:00
Dana Robinson
2db272521e Yanked check for memcpy n > 0 2019-03-17 16:01:31 -07:00
Quincey Koziol
cda6273737 Merge remote-tracking branch 'origin/develop' into merge_hyperslab_update_01 2019-03-16 23:01:18 -05:00
Dana Robinson
f0d22e54c7 Merge pull request #1604 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '5c80d3d91284bdcd048d9325b1a601d0ddfca8bd':
  - Added H5MMprivate.h #includes where needed - Added casts to quiet H5MM_memcpy warnings - Removed char * casts from HDmemcpy
  Added an H5MM_memcpy call that checks for buffer overlap.
2019-03-16 21:58:38 -05:00
Dana Robinson
5c80d3d912 - Added H5MMprivate.h #includes where needed
- Added casts to quiet H5MM_memcpy warnings
- Removed char * casts from HDmemcpy
2019-03-16 16:02:06 -07:00
Dana Robinson
a98747c0f9 Added an H5MM_memcpy call that checks for buffer overlap. 2019-03-16 08:06:52 -07:00
Quincey Koziol
9d86314f8b Core changes to selection code from the hyperslab_updates branch. 2019-03-15 20:14:41 -05:00
Dana Robinson
d2591ce377 Merge pull request #1602 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:wopen_squash to develop
* commit '0c20c65e2f3abf390ad87c9167daca4cdff2de39':
  Added the HDopen work-around on windows to pio_engine.c
  Adds _wopen support on Windows so that files with UTF-8 names can be opened.
2019-03-15 10:47:02 -05:00
Dana Robinson
0c20c65e2f Added the HDopen work-around on windows to pio_engine.c 2019-03-15 08:45:38 -07:00
Neil Fortner
a0c5d9a1d3 Merge pull request #1594 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
Fix issues with direct chunk operations and the single chunk index.

* commit 'c812a6c9ec5ff440dc405167c54b86fdb18dcfa4':
  Fix issue with direct chunk write not updating the "last chunk" index cache.  Fix issues involving datasets being "no allocated" when they contain cached raw data.
2019-03-15 10:22:12 -05:00
Neil Fortner
c812a6c9ec Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2019-03-15 10:20:25 -05:00
Dana Robinson
750b5c2930 Adds _wopen support on Windows so that files with UTF-8 names
can be opened.

Fixes: HDFFV-2714, HDFFV-3914, HDFFV-3895, HDFFV-8237, HDFFV-10413, HDFFV-10691
2019-03-15 00:41:39 -07:00
Jerome Soumagne
0ea7aa89ff Merge pull request #1601 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:topic_thread_private to develop
* commit 'dc69df49e6a8896606c9e4bd0987613a02f7a25a':
  CMake: fix pthread linking to only be private
2019-03-13 15:25:23 -05:00
Jerome Soumagne
dc69df49e6 CMake: fix pthread linking to only be private 2019-03-13 13:54:35 -05:00
Songyu Lu
594cd93543 HDFFV-10658: setting and getting properties in API context:
1. external file prefix and VDS prefix.
2. the datatype, dataspace, and LCPL of the dataset for VOL connector.
2019-03-13 10:20:30 -05:00
Quincey Koziol
e6b8ebe954 Merge remote-tracking branch 'origin/develop' into env_vol_load 2019-03-12 11:49:03 -05:00
Quincey Koziol
07baf44a86 Merge pull request #1599 in HDFFV/hdf5 from preserve_lib_state to develop
* commit '86598573641dfa27278c9e29df0fa79bd7d8e07f':
  Add API routines to retrieve, restore, reset, and free library state.
2019-03-12 11:48:11 -05:00
Quincey Koziol
8659857364 Add API routines to retrieve, restore, reset, and free library state.
(Primarily for use in the async VOL connector, which has to schedule API
operations for future execution and then restore the state of the library when
the operation actually executes)
2019-03-11 17:29:14 -05:00
M. Scot Breitenfeld
6682f51a11 add tests 2019-03-11 11:34:10 -05:00
M. Scot Breitenfeld
7c927a3590 added more tests 2019-03-11 11:32:49 -05:00
Quincey Koziol
deeb302747 Specify the default VOL connector to use with an environment variable.
This implicitly adds support for changing the VOL connector for command-line
tools or any application linked with the library.

Also, add 'make check-vol' support for all directories, clearing up necessary
issues in testing scripts, etc.
2019-03-09 21:41:38 -06:00
Ray Lu
679b49d43d Merge pull request #1597 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:HDFFV-10705-memory-leak-in-scale-offset-2 to develop
* commit '5f22afff3a05a2c8fc694ddb0c7e1081a660b398':
  Added a note of bug fix for HDFFV-10705.
2019-03-08 14:28:17 -06:00
Songyu Lu
5f22afff3a Added a note of bug fix for HDFFV-10705. 2019-03-08 13:51:27 -06:00
Dana Robinson
a56a97f979 Merge pull request #1595 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'fc3f606d5c30d614b7e6cddaf4d0dafd80987bec':
  Fixed the MANIFEST
2019-03-07 17:47:13 -06: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
Larry Knox
8d2a047c25 Merge pull request #1593 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '775e3740d64ca9a8a31ded673e93815d76387dad':
  Update documents following DHF5 1.10.5 release.
2019-03-07 12:51:27 -06:00
Neil Fortner
faec33960f Fix issue with direct chunk write not updating the "last chunk" index
cache.  Fix issues involving datasets being "no allocated" when they
contain cached raw data.
2019-03-06 16:57:42 -06:00
Quincey Koziol
cdec6ca87f Merge pull request #1592 in HDFFV/hdf5 from dset_ohdr_min_fix to develop
* commit '33db9f56449c974fed6b4a8a19072546bcd31e15':
  Fix typo.
  Move 'minimize dataset object header flag' into API context
2019-03-06 10:18:33 -06:00
Quincey Koziol
33db9f5644 Fix typo. 2019-03-05 17:33:13 -06:00
Larry Knox
775e3740d6 Update documents following DHF5 1.10.5 release. 2019-03-05 17:23:56 -06:00
Quincey Koziol
b8468e6fdb Move 'minimize dataset object header flag' into API context 2019-03-05 10:36:28 -06:00
Ray Lu
5182e73d5e Merge pull request #1588 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:HDFFV-10705-memory-leak-in-scale-offset to develop
* commit 'b23079de3af4bfb7aa0508fb81aacd67a76c2114':
  HDFFV-10705: Fixed memory leak in scale offset filter.
2019-03-01 11:32:14 -06:00
Songyu Lu
b23079de3a HDFFV-10705: Fixed memory leak in scale offset filter. 2019-02-28 14:36:38 -06:00
Allen Byrne
d2dfe6ccbe Merge pull request #1582 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '64f21ec6397d00e45ff4d41e70c5131241be587e':
  Correct CMake examples for a binary install
  Correct varname
2019-02-27 13:34:23 -06:00
Allen Byrne
64f21ec639 Correct CMake examples for a binary install 2019-02-27 11:13:54 -06:00
Allen Byrne
6e77a5800e Correct varname 2019-02-26 10:40:40 -06:00
Quincey Koziol
d0329ea063 Merge pull request #1580 in HDFFV/hdf5 from update_vol_callbacks to develop
* commit 'd6663b95ac7e9e378b24bd721ea4403ca98d4adf':
  Revise "management" VOL callbacks into 'info' and object 'wrap / retrieval' classes.
2019-02-25 10:02:08 -06:00
Quincey Koziol
d6663b95ac Revise "management" VOL callbacks into 'info' and object 'wrap / retrieval'
classes.
2019-02-23 17:02:29 -06:00
Jordan Henderson
7e792d7795 Merge pull request #1571 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '8a4371f69ae07619fa9561431b9ee9df9d5b3e47':
  Minor fix in h5str_sprintf for NULL region references
2019-02-22 08:39:30 -06:00
Jordan Henderson
8a4371f69a Minor fix in h5str_sprintf for NULL region references 2019-02-21 22:39:57 -06:00
Jerome Soumagne
342cad2a3d Merge pull request #1569 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:topic_threadsafe to develop
* commit 'bcf5c400c06bf06820b25c37eceaa97245f15f1f':
  Fix CMake H5_HAVE_THREADSAFE to set value in H5pubconf.h
2019-02-21 18:18:39 -06:00
Jerome Soumagne
bcf5c400c0 Fix CMake H5_HAVE_THREADSAFE to set value in H5pubconf.h
Add REQUIRED to find_package(Threads)

Link against thread library if static and not WIN32 platform
2019-02-21 16:39:37 -06:00
Dana Robinson
065d63b4a4 Merge pull request #1466 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:c_stdlib_posix_call_cleanup to develop
* commit '32ea4e72f1e85e0e7ff6457aae0bd210e56d1cad':
  C and POSIX call cleanup
2019-02-20 15:41:02 -06:00
Dana Robinson
32ea4e72f1 Merge branch 'develop' into c_stdlib_posix_call_cleanup 2019-02-19 14:49:20 -08:00
Allen Byrne
b901552b1c Merge pull request #1559 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6d07eb126e63b025199a5fe68f41a42269b5921b':
  Update standard check
  Fix typo
  HDFFV-10703 Update version match logic
  HDFFV-10703 revert pre-3.11 option
  HDFFV-10703 macro vars need quotes
  HDFFV-10703 Update CMake commands to latest standard
  Use correct variable name
2019-02-18 11:02:42 -06:00
Allen Byrne
6d07eb126e Update standard check 2019-02-17 13:56:54 -06:00
Allen Byrne
a27d1b909d Fix typo 2019-02-17 11:17:19 -06:00
Allen Byrne
67bc117efe Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5ad3891d9b861593ebe25d540bed2d913eb83aba':
  Remove ' ' (typo).
  Code improvement
  Removed an extra "using" statement
  Adding documentation
  More changes to align with incoming selection improvements.
  Added C++ wrapper for H5Ovisit2
  Adding a C++ wrapper
2019-02-17 09:42:00 -06:00
Larry Knox
5ad3891d9b Merge pull request #1558 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'f69e11efa827521231813496a1ca1243dd0e1cba':
  Remove ' ' (typo).
2019-02-16 20:01:26 -06:00
Larry Knox
f69e11efa8 Remove ' ' (typo). 2019-02-16 19:02:44 -06:00
Binh-Minh Ribler
a9283319a9 Merge pull request #1547 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_cpp5:develop to develop
C++ wrapper for H5Ovisit2

* commit '6c212353c45ef84b5c977c6019e4d72263534aea':
  Code improvement
  Removed an extra "using" statement
  Adding documentation
  Added C++ wrapper for H5Ovisit2
  Adding a C++ wrapper
2019-02-16 07:47:46 -06:00
Binh-Minh Ribler
6c212353c4 Code improvement
Description:
    Removed dead code and accidentally leftover code
Platforms tested:
    Linux/64 (jelly) - very minor
2019-02-16 00:47:47 -06:00
Allen Byrne
d16c4f59c2 HDFFV-10703 Update version match logic 2019-02-15 16:40:13 -06:00
Allen Byrne
0116375ed2 HDFFV-10703 revert pre-3.11 option 2019-02-15 16:22:31 -06:00
Allen Byrne
58e6e3e102 HDFFV-10703 macro vars need quotes 2019-02-15 16:04:06 -06:00
Allen Byrne
122b63a5a2 HDFFV-10703 Update CMake commands to latest standard 2019-02-15 15:48:24 -06:00
Quincey Koziol
e1046db0e6 Merge pull request #1548 in HDFFV/hdf5 from merge_hyperslab_updates_04 to develop
* commit '320eaf91b9adb36bb0fed9264d460e4a808200b7':
  More changes to align with incoming selection improvements.
2019-02-15 14:12:16 -06:00
Binh-Minh Ribler
f2f890fd82 Removed an extra "using" statement 2019-02-14 19:40:10 -06:00
Binh-Minh Ribler
dcf93b3ec5 Adding documentation
Description
    Added detail about the argument "fields" of H5Object::visit.
2019-02-14 19:27:02 -06:00
Quincey Koziol
320eaf91b9 More changes to align with incoming selection improvements. 2019-02-14 16:20:32 -06:00
Binh-Minh Ribler
268128e520 Added C++ wrapper for H5Ovisit2 2019-02-14 15:47:24 -06:00
Allen Byrne
6ea0dafa41 Use correct variable name 2019-02-14 15:47:02 -06:00
Binh-Minh Ribler
61abf991a1 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5_bmr_cpp5 into develop 2019-02-14 15:37:41 -06:00
Binh-Minh Ribler
4a4ec03dfd Adding a C++ wrapper
Description:
    - Added a wrapper for H5Ovisit2 to class H5Object
        // Recursively visit elements reachable from this object.
        void visit(H5_index_t idx_type, H5_iter_order_t order,
                   visit_operator_t user_op, void *op_data, unsigned int fields);
    - Fixed various typos in documentation
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1011test)
2019-02-14 15:35:04 -06:00
Allen Byrne
81687043d4 Merge pull request #1544 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b5a4f470cdf7113c0691cca6fb201672c4e1d86d':
  Use STREQUAL
  Add command to build options and check defines
  Skip testing of cache_image test
  CMake if statement correction
2019-02-14 15:28:31 -06:00
Allen Byrne
b5a4f470cd Use STREQUAL 2019-02-14 15:28:02 -06:00
Allen Byrne
d676456b54 Add command to build options and check defines 2019-02-14 15:03:05 -06:00
Allen Byrne
35e9128c7e Skip testing of cache_image test 2019-02-14 12:52:01 -06:00
Allen Byrne
2268685c08 CMake if statement correction 2019-02-14 11:20:17 -06:00
Quincey Koziol
10cdff5ca4 Merge pull request #1540 in HDFFV/hdf5 from merge_hyperslab_changes_01 to develop
* commit 'fb5d1a37c11bca613175a48262a2147e99c9dede':
  Align develop with incoming hyperslab_updates branch changes.
2019-02-13 18:13:18 -06:00
Allen Byrne
40589e28d8 Merge pull request #1542 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b95f05638ce40ccd944248f5865a248f39ef0d10':
  TRILAB-111 fixes for parallel testing
2019-02-13 17:05:25 -06:00
Allen Byrne
b95f05638c TRILAB-111 fixes for parallel testing 2019-02-13 15:53:59 -06:00
Quincey Koziol
fb5d1a37c1 Merge remote-tracking branch 'origin/develop' into merge_hyperslab_changes_01 2019-02-13 10:27:33 -06:00
Larry Knox
50b85e0330 Merge pull request #1539 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '3ed1ac0f1b760fe84ec009de19550d98f0b38071':
  Add missing toolchain include for cross-compile
  KNL option for batch scripts
2019-02-13 09:31:53 -06:00
Allen Byrne
3ed1ac0f1b Add missing toolchain include for cross-compile 2019-02-13 08:24:27 -06:00
Quincey Koziol
b5305b25a6 Align develop with incoming hyperslab_updates branch changes. 2019-02-12 21:51:15 -06:00
Allen Byrne
8c22f41801 KNL option for batch scripts 2019-02-12 15:51:42 -06:00
Jordan Henderson
112b813196 Merge pull request #1534 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '3acd486b83f319579b1c6884c90289b0eb1d44a6':
  Fixes for JNI updates
2019-02-12 13:42:15 -06:00
Jordan Henderson
3acd486b83 Fixes for JNI updates 2019-02-12 11:56:42 -06:00
Jordan Henderson
8f42566f7a Merge pull request #1523 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '8f447bd3564a88738b9a26b1b0ac3bba785efd39':
  Add RELEASE.txt note for collective metadata read fixes
  Fix some collective metadata read issues
2019-02-11 22:24:06 -06:00
Jordan Henderson
8f447bd356 Add RELEASE.txt note for collective metadata read fixes 2019-02-11 19:15:56 -06:00
Jordan Henderson
34508f0620 Merge in latest from develop 2019-02-11 19:13:39 -06:00
Jordan Henderson
65a820ae89 Fix some collective metadata read issues 2019-02-11 18:31:23 -06:00
Allen Byrne
fa83ab9f7c Merge pull request #1533 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6f71b2cdcf3326b1d7bc67cf664b56d2f4056bfd':
  Refactor mpi test names
2019-02-11 12:47:02 -06:00
Allen Byrne
6f71b2cdcf Refactor mpi test names 2019-02-11 12:42:46 -06:00
Larry Knox
e2b6e72e7c Merge pull request #1530 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'edcbc9966f5c742970ad32eb50a7925fcf7ab677':
  Refactor parallel test names
  Rename parallel tests to start with PAR_
  Distinguish parallel performance tests
  Set the full generator name
  Add new cmake copy file tests to ignore
  Use correct values for other file versions
  CMake script changes to simplify execution
2019-02-11 12:05:24 -06:00
Allen Byrne
edcbc9966f Refactor parallel test names 2019-02-11 12:01:25 -06:00
Allen Byrne
f8d5add80b Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'a3a90e79afda2351f16181ec3592b96caceffbe1':
  Re-write of Java JNI error handling
2019-02-11 11:11:05 -06:00
Allen Byrne
d98faf5703 Rename parallel tests to start with PAR_ 2019-02-11 11:09:43 -06:00
Allen Byrne
a3a90e79af Merge pull request #1532 in HDFFV/hdf5 from ~JHENDERSON/hdf5_merge:develop to develop
* commit 'cc6a61215e508d047ed6aa2daf67475cfe34ee4d':
  Re-write of Java JNI error handling
2019-02-11 11:07:01 -06:00
Jordan Henderson
cc6a61215e Re-write of Java JNI error handling 2019-02-11 10:58:58 -06:00
Allen Byrne
f7bab665bb Distinguish parallel performance tests 2019-02-11 10:53:13 -06:00
Allen Byrne
691b92ff9c Set the full generator name 2019-02-11 10:09:32 -06:00
Allen Byrne
742894ce88 Add new cmake copy file tests to ignore 2019-02-11 08:56:14 -06:00
Allen Byrne
648a21473f Use correct values for other file versions 2019-02-08 21:38:39 -06:00
Allen Byrne
d0be2f5840 CMake script changes to simplify execution 2019-02-08 10:48:49 -06:00
Quincey Koziol
4300ca6234 Merge pull request #1528 in HDFFV/hdf5 from add_id_type_to_vol_wrap_cb to develop
* commit '163dcebec5d853b720dcb64b5e9828670b963773':
  Add ID type (of eventual hid_t) to the VOL "wrap" callback.
2019-02-07 16:20:26 -06:00
Jordan Henderson
0d1d61951f Merge pull request #1527 in HDFFV/hdf5 from ~JHENDERSON/hdf5_merge:develop to develop
* commit '28b9af4f28df6c0e4f7fbf1ce4a0f50e1797b4d3':
  Fix test issue in testpar/t_dset.c with MPI-2 implementations
2019-02-07 15:11:58 -06:00
Jordan Henderson
28b9af4f28 Fix test issue in testpar/t_dset.c with MPI-2 implementations 2019-02-07 14:31:32 -06:00
Quincey Koziol
163dcebec5 Add ID type (of eventual hid_t) to the VOL "wrap" callback. 2019-02-07 14:31:26 -06:00
Allen Byrne
865e35ea01 Merge pull request #1524 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '36e3d1600a3f9d771cfb9b4475f23c57d4b10280':
  Refactor out timeout values
  Correct name of variable
  Remove F2003 Option and references
  Remove obsolete file
  Update examples version
  Update to example reference version
  Switch OFF if compression source is not available
  Fail configure if SZIP/ZLIB is requested but not found
2019-02-07 12:07:26 -06:00
Allen Byrne
36e3d1600a Refactor out timeout values 2019-02-06 16:41:58 -06:00
Allen Byrne
5ba4266a04 Correct name of variable 2019-02-06 11:02:16 -06:00
Vailin Choi
c7977ec2f8 Merge pull request #1522 in HDFFV/hdf5 from ~VCHOI/my_hdf5_fork:develop to develop
* commit '7f5741825db0737db5ac46c43009681508a73002':
  Add release notes information.
  Modification based on feedback from pull request.
  Modification based on feedback from pull request.
  There is performance issue when closing an object.  The slow down is due to the search of the "tag_list" to find out the "corked" status of an object. The fix: (1)  Add a counter "num_objs_corked" in the cache structure to track the number of "corked" objects. (2) Skip the search of "tag_list" if the counter is zero i.e. no "corked" objects.
2019-02-06 10:49:51 -06:00
Vailin Choi
7f5741825d Add release notes information. 2019-02-06 10:48:30 -06:00
Allen Byrne
e73197077b Remove F2003 Option and references 2019-02-06 10:10:46 -06:00
Allen Byrne
3ebfd7edd4 Remove obsolete file 2019-02-06 08:45:59 -06:00
Allen Byrne
a476f5348e Update examples version 2019-02-06 08:38:55 -06:00
Allen Byrne
ee9771425f Update to example reference version 2019-02-06 08:37:11 -06:00
Vailin Choi
7d124cb796 Modification based on feedback from pull request. 2019-02-05 18:13:11 -06:00
Vailin Choi
e272e64e74 Modification based on feedback from pull request. 2019-02-05 17:04:04 -06:00
Allen Byrne
abd74c8310 Switch OFF if compression source is not available 2019-02-05 15:44:38 -06:00
Allen Byrne
18e875f75f Fail configure if SZIP/ZLIB is requested but not found 2019-02-05 15:25:30 -06:00
Vailin Choi
34f028070e Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~vchoi/my_hdf5_fork into develop 2019-02-04 22:51:57 -06:00
Vailin Choi
7f718e9ea2 There is performance issue when closing an object. The slow down is due to the search of
the "tag_list" to find out the "corked" status of an object.
The fix:
(1)  Add a counter "num_objs_corked" in the cache structure to track the number
of "corked" objects.
(2) Skip the search of "tag_list" if the counter is zero i.e. no "corked" objects.
2019-02-04 22:30:48 -06:00
Dana Robinson
c7d04ee3af Merge pull request #1520 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:cmake_tweaks to develop
* commit '91c7ff81dcac1af7a7b609698aa69f0c213a6184':
  Added a line for the CMake pread/write option to INSTALL_CMake.txt.
2019-02-04 12:43:25 -06:00
Dana Robinson
91c7ff81dc Added a line for the CMake pread/write option to INSTALL_CMake.txt. 2019-02-04 10:11:59 -08:00
Larry Knox
08001e2f3f Merge pull request #1518 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '6c2a4b728f3c8eadb18d4e10d41bdbd7d1c8f3e8':
  Add LOCAL_BATCH_SCRIPT_ARG variable for submitting account information and other batch command variations with ctest command.
  Add batchscript options that work when running ctest directly.
2019-02-04 08:48:55 -06:00
Larry Knox
6c2a4b728f Add LOCAL_BATCH_SCRIPT_ARG variable for submitting account information
and other batch command variations with ctest command.
2019-02-04 08:46:57 -06:00
Larry Knox
d2624dae03 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2019-02-03 21:34:25 -06:00
Larry Knox
dddc940bdf Add batchscript options that work when running ctest directly. 2019-02-03 21:33:16 -06:00
Larry Knox
30df67700c Merge pull request #1517 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'c348d453b583ec9092152e6aef1f7fa9854cf5d9':
  Correct H5DIFF to PH5DIFF in *ctestS.sl.in.cmake list of parallel tests reserved for *ctestP.sl.cmake. Revise options to run batch tests and alternative options for cross compile in HPC/*-HDF5options.cmake.
  Change examples file to zip for CMake zip file.
  Update bin/release for filename changes and HPC-CMake tar file corrections.
  Add new files to MANIFEST. Update permissions for raybsub to 755.
2019-02-02 22:45:55 -06:00
Larry Knox
c348d453b5 Correct H5DIFF to PH5DIFF in *ctestS.sl.in.cmake list of parallel tests
reserved for *ctestP.sl.cmake.
Revise options to run batch tests and alternative options for cross
compile in HPC/*-HDF5options.cmake.
2019-02-02 08:02:48 -06:00
Dana Robinson
2d4f58adf0 Merge pull request #1515 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:pread_vfd_squash to develop
* commit '055208b71c573be3d4b1047b840d4d8b255bc25e':
  Minor tweak to CMake preadwrite entry.
  Updated sec2, log, and core VFDs to use pread/pwrite when available (can be controlled via a configure/CMake option)
2019-02-01 16:01:22 -06:00
Dana Robinson
055208b71c Minor tweak to CMake preadwrite entry. 2019-02-01 13:23:54 -08:00
Dana Robinson
f90e5bdc62 Merge pull request #1516 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:valgrind_fixes to develop
* commit '5f1f231310bcb3278f11a51e1ea47782f6ee3235':
  Updated H5Dio.c comment.
  Fixed a valgrind issue with the unprotect log message. The logging call was placed after the point where the cache entry was freed. The fix was to just use the entry's address directly in the log call instead of the entry itself.
  Fixed a bug revealed by the dtransform test. A datatype transform buffer needed to be calloc'd.
2019-02-01 15:14:15 -06:00
Dana Robinson
5f1f231310 Updated H5Dio.c comment. 2019-02-01 13:12:39 -08:00
Larry Knox
cc7ce0eb8b Change examples file to zip for CMake zip file. 2019-02-01 12:19:28 -06:00
Larry Knox
eb84f922c8 Update bin/release for filename changes and HPC-CMake tar file
corrections.
2019-02-01 10:21:53 -06:00
Larry Knox
5352bf4971 Add new files to MANIFEST.
Update permissions for raybsub to 755.
2019-02-01 08:57:52 -06:00
Larry Knox
b0e202a206 Merge pull request #1508 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'bae744199b69eb7c3f5eda2441cca30cb8c6175f':
  Add more specific batch scripts. Add script raybsub to handle submitting .lsf files on ray with bsub < script.lsf syntax that we couldn't handle with CMake. Add hpc-cmake-tgz option for bin/release.
  Account info can be submitted as an argument to run the batch scripts. Special versions for sandia are not needed.
  Add HDF5options.cmake files for serial and parallel tests on HPC machines (where tests are to be run as batch jobs. Add README_HPC file with instructions for setting up configuration to use batch scripts for running tests on HPC machines and some pointers for cross compiling.
  Remove knl configuration from ctestS.sl.in.cmake. Add sandia batch files with account info.
  Add batch files with batch parameters specific to cori and ray. Release.txt entry for skipping long double dt_arith tests on ppc64.
2019-01-31 14:31:38 -06:00
Larry Knox
bae744199b Add more specific batch scripts.
Add script raybsub to handle submitting .lsf files on ray with bsub <
script.lsf syntax that we couldn't handle with CMake.
Add hpc-cmake-tgz option for bin/release.
2019-01-31 14:22:52 -06:00
Vailin Choi
311e4ed32d Modifications to the vfd swmr concurrent tests:
(1) Increase the # of records to write (Nrecords) in testvfdswmr.sh.in so as to ensure the writer
will not exit before the reader
(2) Use H5E_BEGIN_TRY/END_TRY when H5Fopen() the test file in reader tests
(3) Add "READER" or "WRITER" to debugging messages
(4) Misc cleanup
2019-01-31 11:47:43 -06:00
Dana Robinson
99d70c494d Fixed a valgrind issue with the unprotect log message. The logging
call was placed after the point where the cache entry was freed.
The fix was to just use the entry's address directly in the log
call instead of the entry itself.
2019-01-31 00:14:11 -08:00
Dana Robinson
90bf59edc5 Fixed a bug revealed by the dtransform test. A datatype transform
buffer needed to be calloc'd.
2019-01-30 23:45:32 -08:00
Dana Robinson
f833001e39 Updated sec2, log, and core VFDs to use pread/pwrite when
available (can be controlled via a configure/CMake option)
2019-01-30 17:32:40 -08:00
Neil Fortner
b561c2fce8 Merge pull request #1513 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit '261c22e0459f63fd81c8942992ffe3668969f0cd':
  Add RELEASE.txt note for unknown message fix (pull request 1448)
2019-01-30 16:49:34 -06:00
Neil Fortner
261c22e045 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~nfortne2/hdf5_naf into develop 2019-01-30 16:48:12 -06:00
Neil Fortner
773c35a664 Add RELEASE.txt note for unknown message fix (pull request 1448) 2019-01-30 16:47:47 -06:00
mainzer
6feabcb42d Checkin of fixes for a number of bugs in reads to page 0, and in file
open in the VFD SWMR reader case.

Note that the following failures in testvfdswmr.sh:

1) Unable to find metadata file on VFD SWMR reader open.

2) Occasional sanity check failures in the page buffer on raw data write.

3) Filter failures on raw data read in VFD SWMR readers when compression
   is enabled.

4) Unexpected data errors in VFD SWMR readers when compression is
   disabled.

Note that I expect that items 3 & 4 two aspects of the same issues -- the
fact that we don't guarantee that raw data is consistent with metadata.

Item 2) must be addressed, but it is so infrequent that it isn't doesn't
affect the conclusion VFD SWMR seems to work, and thus it can wait until
phase 2.

I am given to understand that Vailin has largely addressed item 1),
and will be checking in her solution to this soon.

Tested on Charis and Jelly.
2019-01-30 15:19:00 -06:00
Larry Knox
252beb50b6 Account info can be submitted as an argument to run the batch scripts.
Special versions for sandia are not needed.
2019-01-28 12:52:14 -06:00
Larry Knox
0ef4c812c7 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2019-01-28 12:51:12 -06:00
Larry Knox
277f57d371 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '9149d5a5352de4e0b9a2e57c91525a6cad767760':
  Revert build name setting
2019-01-28 12:49:00 -06:00
Larry Knox
64114e331a Add HDF5options.cmake files for serial and parallel tests on HPC
machines (where tests are to be run as batch jobs.
Add README_HPC file with instructions for setting up configuration
to use batch scripts for running tests on HPC machines and some
pointers for cross compiling.
2019-01-28 12:43:35 -06:00
Allen Byrne
9149d5a535 Merge pull request #1504 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f26ee27b1fd85d192b37d9e45fb6d20f1b7e23db':
  Revert build name setting
2019-01-28 08:24:16 -06:00
Larry Knox
cee36ca40d Remove knl configuration from ctestS.sl.in.cmake.
Add sandia batch files with account info.
2019-01-27 17:55:44 -06:00
Allen Byrne
f26ee27b1f Revert build name setting 2019-01-27 16:55:39 -06:00
Larry Knox
11e74daddd Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2019-01-26 16:46:31 -06:00
Larry Knox
b91cb20c69 Add batch files with batch parameters specific to cori and ray.
Release.txt entry for skipping long double dt_arith tests on ppc64.
2019-01-26 16:44:09 -06:00
Binh-Minh Ribler
7447f636a4 Merge pull request #1503 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_fixbug:develop to develop
Added test file for CMake

* commit '55d1931dc6af168adc3804586a0da22287b29187':
  Added test file for CMake
2019-01-26 12:39:15 -06:00
Binh-Minh Ribler
55d1931dc6 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5_bmr_fixbug into develop 2019-01-26 11:59:45 -06:00
Binh-Minh Ribler
f522479035 Added test file for CMake 2019-01-26 11:58:52 -06:00
Allen Byrne
adc9b8b27a Merge pull request #1499 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ad906dc708fc803e8c5f17963fafa63591d3cc8d':
  Invalid position of declaration fixed.
  Fix CMake on Windows
2019-01-26 09:48:40 -06:00
Allen Byrne
ad906dc708 Invalid position of declaration fixed. 2019-01-25 15:21:11 -06:00
Dana Robinson
dfaf51fda4 Merge pull request #1500 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:valgrind_fixes to develop
* commit '3fac85c00d6253f7b2c96ca46c7b9718d0203029':
  Fixed a bug identified by valgrind in the cork test.
2019-01-25 12:47:02 -06:00
Dana Robinson
3fac85c00d Fixed a bug identified by valgrind in the cork test. 2019-01-25 09:58:50 -08:00
Allen Byrne
822caec907 Fix CMake on Windows 2019-01-25 11:36:46 -06:00
Binh-Minh Ribler
395cfc9f1b Merge pull request #1498 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_fixbug:develop to develop
* commit '0247f7b78d056b04fa08f74a2d4c4eea37f48d22':
  Added data file for test and updated MANIFEST
2019-01-25 10:47:03 -06:00
Allen Byrne
8f1d895d17 Merge pull request #1496 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '73fcbbee97c6385fb2b5009e5858ae1d6c28b3c3':
  CMake fix
  Java html fix and cmake update
  Update CMake
2019-01-25 08:40:47 -06:00
Allen Byrne
73fcbbee97 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '2fe69e7639198b174da393e47a029d0ac35b31c8':
  Added test for HDFFV-10588
  Fixed HDFFV-10684
  Fixed HDFFV-10586 and HDFFV-10588 Description:     HDFFV-10586 CVE-2018-17434  Divide by zero inh5repack_filters         Added a check for zero value     HDFFV-10588 CVE-2018-17437  Memory leak in H5O_dtype_decode_helper         This is actually an Invalid read issue.  It was found that the         attribute name length in an attribute message was corrupted,         which caused the buffer pointer to be advanced too far and later         caused an invalid read.         Added a check to detect attribute name and its length mismatch.  The         fix is not perfect, but it'll reduce the chance of this issue when a         name length is corrupted or the attribute name is corrupted. Platforms tested:     Linux/64 (jelly)     Linux/64 (platypus)     Darwin (osx1010test)
2019-01-25 08:28:53 -06:00
Binh-Minh Ribler
0247f7b78d Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5_bmr_fixbug into develop 2019-01-25 00:20:28 -06:00
Binh-Minh Ribler
51e0107d18 Added data file for test and updated MANIFEST 2019-01-25 00:19:16 -06:00
Binh-Minh Ribler
2fe69e7639 Merge pull request #1479 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_fixbug:develop to develop
HDFFV-10586 and HDFFV-10588

* commit '25cd1ab02b9ddaf58a4f5422f4ab4fde411e050a':
  Added test for HDFFV-10588
  Fixed HDFFV-10684
  Fixed HDFFV-10586 and HDFFV-10588 Description:     HDFFV-10586 CVE-2018-17434  Divide by zero inh5repack_filters         Added a check for zero value     HDFFV-10588 CVE-2018-17437  Memory leak in H5O_dtype_decode_helper         This is actually an Invalid read issue.  It was found that the         attribute name length in an attribute message was corrupted,         which caused the buffer pointer to be advanced too far and later         caused an invalid read.         Added a check to detect attribute name and its length mismatch.  The         fix is not perfect, but it'll reduce the chance of this issue when a         name length is corrupted or the attribute name is corrupted. Platforms tested:     Linux/64 (jelly)     Linux/64 (platypus)     Darwin (osx1010test)
2019-01-24 17:07:57 -06:00
Allen Byrne
37f5c682b6 CMake fix 2019-01-24 16:36:47 -06:00
Allen Byrne
62277207a4 Java html fix and cmake update 2019-01-24 15:56:42 -06:00
Binh-Minh Ribler
25cd1ab02b Added test for HDFFV-10588
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1010test)
2019-01-24 09:42:19 -06:00
Allen Byrne
41010b8d1e Update CMake 2019-01-23 17:25:41 -06:00
Allen Byrne
f0e2fc6c62 Merge pull request #1491 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f033214796c383a9018dd760e92257dc27d7b852':
  Add clear objects to ignore tests
  Add clear objects to ignore tests
  Add new clear tests to ignore list
  Cleanup variable names
  HDFFV-10685 Correct syntax
  HDFFV-10685 Corrected version
  HDFFV-10685 Always set Mac version flags - use soversion
2019-01-22 16:59:50 -06:00
Allen Byrne
f033214796 Add clear objects to ignore tests 2019-01-22 16:30:37 -06:00
Allen Byrne
182e5f7556 Add clear objects to ignore tests 2019-01-22 16:26:43 -06:00
Allen Byrne
036a8e4fe1 Add new clear tests to ignore list 2019-01-22 16:18:22 -06:00
Allen Byrne
cdf9cb0efb Cleanup variable names 2019-01-22 15:38:32 -06:00
Allen Byrne
91249b9ad5 HDFFV-10685 Correct syntax 2019-01-22 12:54:34 -06:00
Allen Byrne
ff08bed268 HDFFV-10685 Corrected version 2019-01-22 12:29:45 -06:00
Allen Byrne
ce64bf57ce HDFFV-10685 Always set Mac version flags - use soversion 2019-01-22 12:10:09 -06:00
Larry Knox
811b4bea8e Merge pull request #1489 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'e6be5560882c2f598b3a0ddab7d9d29a552fcb10':
  MPI vars need passed in, change to grepTest
2019-01-20 22:36:26 -06:00
Binh-Minh Ribler
d584b233a5 Fixed HDFFV-10684
Description:
    The test for HDFFV-10588 has revealed a bug in H5Ewalk.
    H5Ewalk did not stop midway even when the call back function returns
    H5_ITER_STOP. This is because a condition is missing from the for
    loops in H5E__walk causing the callback functions unable to stop until
    all the errors in the stack are iterated. Quincey advised on the final
    fix.  In this fix, "status" is switched to "ret_value" and HGOTO_ERROR
    to HERROR, and the for loops won't continue when "ret_value" is not 0.
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1010test)
2019-01-20 17:46:28 -06:00
Allen Byrne
e6be556088 MPI vars need passed in, change to grepTest 2019-01-20 16:47:50 -06:00
Allen Byrne
0c15df15e3 Merge pull request #1485 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '769837f3ae93f4cae3486aef95c1c580a9946406':
  Add parrallel runTest.cmake for ph5example
  Add missing depends to last test
  Fix CMake policy 54 warnings
  TRILABS-105 Fix CMake policy 54 warnings
2019-01-18 21:49:05 -06:00
Allen Byrne
769837f3ae Add parrallel runTest.cmake for ph5example 2019-01-18 16:30:36 -06:00
Allen Byrne
ab2ab38fa6 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'eeea2b91729b57a0cdec301312bd5713941ab2c6':
  Fix typo
2019-01-18 13:33:00 -06:00
Allen Byrne
eeea2b9172 Merge pull request #1484 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '2cf543b2941442a45a4cb878d4fb33c8c69188a2':
  Fix typo
2019-01-18 13:32:18 -06:00
Allen Byrne
f5a194ce58 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'c5b19f3dd2eb4144e614105e30bf149b5324e014':
  Fix missing depends for last repart test
2019-01-18 12:57:42 -06:00
Allen Byrne
2cf543b294 Fix typo 2019-01-18 12:57:15 -06:00
Allen Byrne
c5b19f3dd2 Merge pull request #1483 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '13d1568c3f491b1dfe6254f22f04fece29b6dad2':
  Fix missing depends for last repart test
2019-01-18 12:53:49 -06:00
Allen Byrne
13d1568c3f Fix missing depends for last repart test 2019-01-18 12:27:21 -06:00
Allen Byrne
a578e36038 Add missing depends to last test 2019-01-18 12:25:38 -06:00
Allen Byrne
8adbf2552b Fix CMake policy 54 warnings 2019-01-18 12:16:38 -06:00
Allen Byrne
f25e78ad42 TRILABS-105 Fix CMake policy 54 warnings 2019-01-18 11:55:16 -06:00
Dana Robinson
f81103e89e Merge pull request #1482 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:valgrind_fixes to develop
* commit 'a4e63bb98072868a145c45e8247280ebc86c3a6d':
  Fixed a memory issue flagged by valgrind in the direct_chunk test.
2019-01-18 10:40:44 -06:00
Dana Robinson
a4e63bb980 Fixed a memory issue flagged by valgrind in the direct_chunk test. 2019-01-16 21:37:07 -08:00
mainzer
83492f29ed Checkin of fix for the failure to evict all tagged entries issue. 2019-01-16 15:49:54 -06:00
Quincey Koziol
ab0fa80994 Merge pull request #1481 in HDFFV/hdf5 from reduce_cache_image_num_groups to develop
* commit '47fb7c2ee6541bb006e76c34966102ebbdaec587':
  Update usage for FAPLs, and reduce # of groups for smoke checks
2019-01-16 11:27:53 -06:00
Quincey Koziol
47fb7c2ee6 Update usage for FAPLs, and reduce # of groups for smoke checks 2019-01-16 10:36:25 -06:00
mainzer
5aebfb4f39 Commented out some test code that resulted spurious failures
in un-related tests (i.e. earray, fheap, etc.).

On jelly and charis, vfd_swmr now passes.

testvfdswmr.sh displas the following failures:

1) occasionally ccan't open the metadata file.  This shows
   up more on jelly than charis.

2) occasional complaints about incorrect raw data

3) occasional complaints from Quincey's evict tagged
   entries code that it can't evict all the tagged entries.

4) Numerous filter failures.  At a guess, this is an artifact of
   raw data not making it to file in sync with the metadata.
   I didn't see this on charis, as I don't have compression
   configured.

5) An assertion failure in the page buffer in which a sanity check
    is failing in the code to update the replacement policy.

    This is worrying --- I'll need to look into it on my return.
2019-01-15 23:28:03 -06:00
mainzer
52c5092a63 Merge with Vailin's memory management fixes.
Merge branch 'feature/vfd_swmr' of https://bitbucket.hdfgroup.org/scm/~vchoi/my_hdf5_fork into feature/vfd_swmr
2019-01-15 16:37:41 -06:00
mainzer
b4f607bc13 Intermin commit to allow update from Vailin's recent changes 2019-01-15 16:36:51 -06:00
Binh-Minh Ribler
43bd93c4f5 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5_bmr_fixbug into develop 2019-01-15 11:49:07 -06:00
Binh-Minh Ribler
bc3d878add Fixed HDFFV-10586 and HDFFV-10588
Description:
    HDFFV-10586 CVE-2018-17434  Divide by zero inh5repack_filters
        Added a check for zero value
    HDFFV-10588 CVE-2018-17437  Memory leak in H5O_dtype_decode_helper
        This is actually an Invalid read issue.  It was found that the
        attribute name length in an attribute message was corrupted,
        which caused the buffer pointer to be advanced too far and later
        caused an invalid read.
        Added a check to detect attribute name and its length mismatch.  The
        fix is not perfect, but it'll reduce the chance of this issue when a
        name length is corrupted or the attribute name is corrupted.
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1010test)
2019-01-15 11:48:31 -06:00
Allen Byrne
5fdc01ae99 Merge pull request #1476 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'fe5650727c55e44e2605b667ac35f74993834643':
  Correct fix for new policy
  Fix for new policy
2019-01-14 13:54:39 -06:00
Allen Byrne
fe5650727c Correct fix for new policy 2019-01-14 13:11:17 -06:00
Allen Byrne
a7aaf073d2 Fix for new policy 2019-01-14 12:13:03 -06:00
Quincey Koziol
703acba51f Merge pull request #1471 in HDFFV/hdf5 from fix_daily_test_on_platypus to develop
* commit '3a31d37abb1fe390d4e28502e7de3ad6da092970':
  Work around compiler fussiness on platypus.
2019-01-11 19:31:48 -06:00
Quincey Koziol
3a31d37abb Work around compiler fussiness on platypus. 2019-01-11 10:11:31 -06:00
Quincey Koziol
ef3c3970fb Merge pull request #1468 in HDFFV/hdf5 from merge_hyperslab_updates_02 to develop
* commit '4729d04d9123e8cd6b2bba071695ace7ddd2a7b5':
  Delta reduction against hyperslab_updates branch.
2019-01-11 09:58:46 -06:00
Quincey Koziol
4729d04d91 Delta reduction against hyperslab_updates branch. 2019-01-10 23:08:51 -06:00
Dana Robinson
b9c8ddbfcc Merge pull request #1465 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'b82ced10619731125b9db7b1ac36f3844463df9a':
  Fix for Fortran failures.
2019-01-10 20:39:29 -06:00
Dana Robinson
536a32c59b C and POSIX call cleanup 2019-01-10 17:51:42 -08:00
Dana Robinson
b82ced1061 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into develop 2019-01-10 19:43:43 -06:00
Dana Robinson
8522539a9e Fix for Fortran failures. 2019-01-10 19:43:17 -06:00
Quincey Koziol
0843353176 Merge pull request #1464 in HDFFV/hdf5 from vol_wrapping_apis to develop
* commit '6d897f3c10241cbc50a728870d58269d15e36984':
  Add API routines to wrap and retrieve objects
2019-01-10 18:29:26 -06:00
Quincey Koziol
6d897f3c10 Add API routines to wrap and retrieve objects 2019-01-10 18:00:13 -06:00
Allen Byrne
a7e0ef996a Merge pull request #1462 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '9b0281736ca488387afd8a301e36e6f5a5315c4a':
  Fix deprecated H5Pget_version
  Fix regex
2019-01-09 13:18:11 -06:00
Allen Byrne
9b0281736c Fix deprecated H5Pget_version 2019-01-09 12:55:31 -06:00
Allen Byrne
7b39e544c0 Fix regex 2019-01-09 12:05:40 -06:00
Scot Breitenfeld
f75d25707d Merge pull request #1461 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'b3743a44238c284dc3817652271aa1475e3c4946':
  fixed 8 byte integer issue
  fix for xlf compiler
2019-01-09 11:38:12 -06:00
M. Scot Breitenfeld
b3743a4423 fixed 8 byte integer issue 2019-01-09 11:21:56 -06:00
M. Scot Breitenfeld
8a8cb2fbb5 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-01-09 10:40:28 -06:00
M. Scot Breitenfeld
51d911a7f8 fix for xlf compiler 2019-01-09 10:40:18 -06:00
Dana Robinson
f41195ba8e Merge pull request #1460 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '287b5d03df03f9da5cf47f52e594f9909493d8ff':
  Fixed the MANIFEST
2019-01-09 09:47:26 -06:00
Dana Robinson
287b5d03df Fixed the MANIFEST 2019-01-09 07:22:46 -08:00
Scot Breitenfeld
3e142c802d Merge pull request #1458 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '4f9ecd71e510a3835a49073fc16d3091a7fc25b2':
  replaced uint
  fix uint
2019-01-08 23:07:30 -06:00
Scot Breitenfeld
4f9ecd71e5 replaced uint 2019-01-08 22:54:19 -06:00
Jordan Henderson
294d9c2847 Merge pull request #1455 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '2d7eb9a4c3a841f7612b88f6b559792cb6143930':
  Align behavior of H5Aget_name_by_idx with H5Aget_name when a NULL buffer is supplied
2019-01-08 20:32:46 -06:00
Binh-Minh Ribler
56b32278c4 Merge pull request #1441 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_fixbug:develop to develop
* commit '90d13bef33f9e2e80b23996a0c39f16f7c34ecf8':
  Fixed typo Platforms tested:     Darwin (osx1010test)
  Refixed HDFFV-10578 Description:     Applied Neil's fix for this issue after removing previous     attempt.  The resources are now released in init_objs() when     failure occurs there.     Neil will fix HDFFV-10676 separately. Platforms tested:     Linux/64 (jelly)     Linux/64 (platypus)     Darwin (osx1010test)
  Removed previous change in H5O__chunk_deserialize().
  Removed the previous change in H5O__chunk_deserialize()
  Removed previous change in table_list_add().
  Removed the previous change in table_list_add()
  Updated per review Description:     HDFFV-10676 - CVE-2018-13873         Changed the new assert to if statement, per Dana's comment. Platforms tested:     Linux/64 (jelly)
  HDFFV-10578 and HDFFV-10676 Description:     HDFFV-10578 - CVE-2018-17234         The file has some issue, however, there was a bug in h5dump that caused         memory leaks after the problem in the file was encountered. The bug         was that an if statement was missing in the function table_list_add()         resulting in the memory not being freed at a later time.         After the fix had been applied, there were no more leaks after h5dump         detected the issue in the file and reported the error.
2019-01-08 18:59:22 -06:00
Ray Lu
44a67451be Merge pull request #1450 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:TRILAB-98-dt_arith-and-cpp_testhdf5-tests to develop
* commit 'b02de315b93ac29d2483a91d526b110a25073505':
  NNSA Tri-LabsTRILAB-98: Another two test cases out.
  NNSA Tri-Labs TRILAB-98: Taking out a few more test cases.
  NNSA Tri-Labs TRILAB-98 dt_arith and cpp_testhdf5 tests fail on sierra.llnl.gov: According to the group decision, simply provide a macro to disable some failing test cases on sierra (IBM power9 cpu).  All failing cases involve long double data type.
2019-01-08 17:59:03 -06:00
M. Scot Breitenfeld
69edf8522c Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-01-08 17:31:32 -06:00
M. Scot Breitenfeld
9ea06b2e58 fix uint 2019-01-08 17:31:20 -06:00
Scot Breitenfeld
d3b107d1a4 Merge pull request #1456 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'fb5d83e146679f4d0ca16cf54b410f04a262451e':
  Updated Fortran Bug and new features
2019-01-08 17:03:06 -06:00
M. Scot Breitenfeld
fb5d83e146 Updated Fortran Bug and new features 2019-01-08 16:23:55 -06:00
Jordan Henderson
2d7eb9a4c3 Align behavior of H5Aget_name_by_idx with H5Aget_name when a NULL buffer is supplied 2019-01-08 15:52:30 -06:00
Allen Byrne
3f727a272c Merge pull request #1454 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b88df58cc952563c35107daa1b8ced24b0cc03b5':
  Add missing define created in configure.ac
  Correct regex option
2019-01-08 14:59:29 -06:00
Allen Byrne
b88df58cc9 Add missing define created in configure.ac 2019-01-08 14:31:46 -06:00
Songyu Lu
b02de315b9 NNSA Tri-LabsTRILAB-98: Another two test cases out. 2019-01-08 14:31:41 -06:00
Allen Byrne
25f272b4cb Correct regex option 2019-01-08 13:25:11 -06:00
Songyu Lu
2efc28cf63 NNSA Tri-Labs TRILAB-98: Taking out a few more test cases. 2019-01-08 12:45:01 -06:00
Jordan Henderson
206da2919d Merge pull request #1452 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '805b64685371982e9c7fd693497865197990cbd6':
  Fix for parallel filters tests with new read-proc0-broadcast feature
2019-01-08 11:32:42 -06:00
Scot Breitenfeld
9b6fe52bcf Merge pull request #1409 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:J10443 to develop
* commit 'b4d4d371a03158c39f120b1bde6c4bd51f1b2eb6':
  HDFFV-10443: Add "field" parameter to H5Oinfo* and H5Ovisit* APIs.
  Added chunked dataset, H5S_ALL test
  typo
  typo
  updated defined constants
  Documented HDFFV-10652
  HDFFV-10652 Implemented a process-0 read and then broadcast for collective read of full datasets (H5S_ALL) by all the processes in the file communicator.
  Removed reason for breaking read-proc0-and-bcast
  switched to using CX instead of a global var.
  HDFFV-10652 Implemented a process-0 read and then broadcast for collective read of full datasets (H5S_ALL) by all the processes in the file communicator.
2019-01-08 11:29:48 -06:00
Scot Breitenfeld
b4d4d371a0 HDFFV-10443: Add "field" parameter to H5Oinfo* and H5Ovisit* APIs. 2019-01-08 11:24:00 -06:00
Neil Fortner
7e50055920 Merge pull request #1453 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit '0dd2c29f284b1ec2a3c070d39805f657f44b216d':
  Remove H5O_BOGUS_INVALID_ID from H5O_msg_class_g initialization, since space for it was removed.
2019-01-08 10:45:46 -06:00
Neil Fortner
0dd2c29f28 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~nfortne2/hdf5_naf into develop 2019-01-08 10:37:28 -06:00
Neil Fortner
214abbfd59 Remove H5O_BOGUS_INVALID_ID from H5O_msg_class_g initialization, since
space for it was removed.
2019-01-08 10:36:34 -06:00
Dana Robinson
c8c0cf9fa2 Merge pull request #1451 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:fortran_squash to develop
* commit '905766fa3e51a470c02328a63d92182d4a8481bf':
  Fortran wrappers for dataset obj header minimization API calls.
2019-01-08 10:14:26 -06:00
M. Scot Breitenfeld
1421059cfb Merge remote-tracking branch 'upstream/develop' into develop 2019-01-08 09:55:29 -06:00
Jordan Henderson
805b646853 Fix for parallel filters tests with new read-proc0-broadcast feature 2019-01-08 09:45:35 -06:00
Dana Robinson
905766fa3e Fortran wrappers for dataset obj header minimization API calls. 2019-01-08 07:34:58 -08:00
Larry Knox
74a41f92a4 Merge pull request #1443 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'e27df5a5fe365480b0809ce523b0e9cd1096a43d':
  Add variables to set up module switch between configure and build for cross compiling on CrayXC40.
  Remove install-exec-hook from hl/fortran/Makefile.am. Add check for existing links in hl/fortran/src/Makefile.am.
  Configure build directory in batch scripts.
  Add libhdf5_hl_fortran symlinks for libhdf5hl_fortran files. Set ctest*.lsf.in.cmake scripts for sierra. Correct src/CMakelists.txt syntax error.
  Correct syntax error in CMakeLists.txt.
  Add .lsf batch scripts and insert the build directory into the scripts during configuration.
2019-01-07 21:01:06 -06:00
Larry Knox
e27df5a5fe Add variables to set up module switch between configure and build for
cross compiling on CrayXC40.
2019-01-07 20:57:18 -06:00
Binh-Minh Ribler
90d13bef33 Fixed typo
Platforms tested:
    Darwin (osx1010test)
2019-01-07 20:46:55 -06:00
Binh-Minh Ribler
78d0564c2a Refixed HDFFV-10578
Description:
    Applied Neil's fix for this issue after removing previous
    attempt.  The resources are now released in init_objs() when
    failure occurs there.
    Neil will fix HDFFV-10676 separately.
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1010test)
2019-01-07 20:36:34 -06:00
Songyu Lu
75c105a2a4 NNSA Tri-Labs TRILAB-98 dt_arith and cpp_testhdf5 tests fail on sierra.llnl.gov: According to the group decision, simply provide a macro to disable some failing test cases on sierra (IBM power9 cpu). All failing cases involve long double data type. 2019-01-07 20:28:37 -06:00
Neil Fortner
9c12b625fd Merge pull request #1448 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
Avoid potential invalid read when decoding unknown object header message.

* commit '685288beabc4f4383d69ec07be05c067fab78544':
  Delay checking if decoded message's "shareable" flag is appropriate for the message type until we've verified we understand the message type. Reduce size of H5O_msg_class_g to *not* include space for H5O_BOGUS_INVALID.  Make bogus messages shareable.  Add new bogus message test with shareable messages to cover the formerly problematic code.  Re-run gen_bogus.c to add this test case and also to fix the bogus_invalid messages that were no longer H5O_BOGUS_INVLAID due to a new message class being added in a previous commit.  Added comment to remind developers to run gen_bogus.c when adding a new message class.
2019-01-07 19:30:26 -06:00
Scot Breitenfeld
d9b1ec3ce8 Merge pull request #1439 in HDFFV/hdf5 from rank0_bcast to develop
* commit 'ab5fe769ab711f736238abc89ef215a6ecff5f7e':
  HDFFV-10625 -- Implemented a process-0 read and then broadcast for collective read of full (HS_ALL), contiguous, atomic datasets by all the processes in the file communicator.
  indent change
  changed logic statement in if
  Added chunking test, fixed issue with CX set
  Correct another git merge failure.
  Correct misplaced line from git merge.
  Updated and refined version of Scot's "rank 0 bcast" changes.
2019-01-07 17:08:33 -06:00
M. Scot Breitenfeld
ab5fe769ab Merge branch 'rank0_bcast' of ssh://bitbucket.hdfgroup.org:7999/hdffv/hdf5 into rank0_bcast 2019-01-07 16:57:39 -06:00
Quincey Koziol
fed17ed383 HDFFV-10625 -- Implemented a process-0 read and then broadcast for collective read of full (HS_ALL), contiguous, atomic datasets by all the processes in the file communicator. 2019-01-07 16:55:59 -06:00
M. Scot Breitenfeld
c9ae4fd62e indent change 2019-01-07 16:09:22 -06:00
M. Scot Breitenfeld
030cde7a20 changed logic statement in if 2019-01-07 16:09:22 -06:00
M. Scot Breitenfeld
98ed401a6c Added chunking test, fixed issue with CX set 2019-01-07 16:09:22 -06:00
Quincey Koziol
b7f660f432 Correct another git merge failure. 2019-01-07 16:09:22 -06:00
Quincey Koziol
a6fe79251b Correct misplaced line from git merge. 2019-01-07 16:09:22 -06:00
Quincey Koziol
8001a4c1c4 Updated and refined version of Scot's "rank 0 bcast" changes. 2019-01-07 16:09:22 -06:00
Neil Fortner
685288beab Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5dfe00629588a54dbfb6f2d09dfbd88177e37cc2':
  HDFFV-10674 handle time as natural number
2019-01-07 15:54:02 -06:00
Allen Byrne
5dfe006295 Merge pull request #1444 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '591205127a167b914ef5557f30aa58b2dff96a85':
  HDFFV-10674 handle time as natural number
2019-01-07 15:43:00 -06:00
Neil Fortner
b043126e5e Delay checking if decoded message's "shareable" flag is appropriate for
the message type until we've verified we understand the message type.
Reduce size of H5O_msg_class_g to *not* include space for
H5O_BOGUS_INVALID.  Make bogus messages shareable.  Add new bogus
message test with shareable messages to cover the formerly problematic
code.  Re-run gen_bogus.c to add this test case and also to fix the
bogus_invalid messages that were no longer H5O_BOGUS_INVLAID due to a
new message class being added in a previous commit.  Added comment to
remind developers to run gen_bogus.c when adding a new message class.
2019-01-07 15:40:44 -06:00
Vailin Choi
e52e68c82f Merge pull request #1445 in HDFFV/hdf5 from ~VCHOI/my_hdf5_fork:develop to develop
* commit '982852c603c03a06ca24f219127f49616c7d42cb':
  Fix for daily test failure: too many arguments to function 'H5Gopen1'
2019-01-07 14:15:05 -06:00
Jordan Henderson
0bc3d1567b Merge pull request #1434 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit 'fe6bed2ad722578d0b701e29d22f591923d2fe9f':
  Fix TESTING_2 macro to align output with TESTING macro
2019-01-07 14:11:07 -06:00
Binh-Minh Ribler
6c7462b1a9 Removed previous change in H5O__chunk_deserialize(). 2019-01-07 14:09:30 -06:00
Jordan Henderson
fe6bed2ad7 Fix TESTING_2 macro to align output with TESTING macro
Add more indentation to TESTING_2 macro
2019-01-07 14:08:34 -06:00
Binh-Minh Ribler
c092f9167c Removed the previous change in H5O__chunk_deserialize() 2019-01-07 14:07:25 -06:00
Binh-Minh Ribler
5b721a060e Removed previous change in table_list_add(). 2019-01-07 14:03:22 -06:00
Binh-Minh Ribler
463515f7db Removed the previous change in table_list_add() 2019-01-07 14:00:56 -06:00
Vailin Choi
982852c603 Fix for daily test failure: too many arguments to function 'H5Gopen1' 2019-01-07 11:49:53 -06:00
Allen Byrne
591205127a HDFFV-10674 handle time as natural number 2019-01-07 10:39:09 -06:00
M. Scot Breitenfeld
b4828e7feb Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2019-01-07 09:49:52 -06:00
Larry Knox
61d3403d12 Remove install-exec-hook from hl/fortran/Makefile.am.
Add check for existing links in hl/fortran/src/Makefile.am.
2019-01-06 21:59:35 -06:00
Binh-Minh Ribler
820d8e34c5 Updated per review
Description:
    HDFFV-10676 - CVE-2018-13873
        Changed the new assert to if statement, per Dana's comment.
Platforms tested:
    Linux/64 (jelly)
2019-01-06 21:42:16 -06:00
Vailin Choi
db898db545 Fix for the assertion failure in the free-space manager for the metadata file.
Still need to work on the proper testing for a test in src/H5Ftest.c.
2019-01-06 20:51:50 -06:00
Larry Knox
619b0abfd6 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '7bf6d847ae36940f1b1147820356795c7764dbeb':
  Remove incorrect comment.
  Updated error stacks for h5dump testing.
  Corrected comment in src/H5VLint.c, fixed pass-through info size in src/H5VLpassthru.c, switched to stashing VOL connector ID & info in API context (in src/H5CX.c, src/H5CXprivate.h, src/H5F.c, src/H5Fint.c, and src/H5Fefc.c), patched up all sorts of issues in the tests, to make them work with 'check-vfd' (and 'check-vol' again).
  Clean up style issues, make function callbacks static, correct debug statements, etc.  No functionality changes at all.
2019-01-06 17:31:51 -06:00
Quincey Koziol
7bf6d847ae Merge pull request #1440 in HDFFV/hdf5 from stackable_vol_fix_14 to develop
* commit 'f0656a57dc3baf02709e1ad5e496cf63cf820877':
  Remove incorrect comment.
  Updated error stacks for h5dump testing.
  Corrected comment in src/H5VLint.c, fixed pass-through info size in src/H5VLpassthru.c, switched to stashing VOL connector ID & info in API context (in src/H5CX.c, src/H5CXprivate.h, src/H5F.c, src/H5Fint.c, and src/H5Fefc.c), patched up all sorts of issues in the tests, to make them work with 'check-vfd' (and 'check-vol' again).
2019-01-06 16:28:06 -06:00
Quincey Koziol
ca1c9cff1a Merge pull request #1438 in HDFFV/hdf5 from mpio_vfd_neaten to develop
* commit '8a5d2c130a93a665933cda8db8554d006b7ca093':
  Clean up style issues, make function callbacks static, correct debug statements, etc.  No functionality changes at all.
2019-01-06 01:55:26 -06:00
Quincey Koziol
f0656a57dc Remove incorrect comment. 2019-01-06 01:49:02 -06:00
Binh-Minh Ribler
aa62951a5f Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5_bmr_fixbug into develop 2019-01-06 01:45:15 -06:00
Binh-Minh Ribler
e1b59919bb HDFFV-10578 and HDFFV-10676
Description:
    HDFFV-10578 - CVE-2018-17234
        The file has some issue, however, there was a bug in h5dump that caused
        memory leaks after the problem in the file was encountered. The bug
        was that an if statement was missing in the function table_list_add()
        resulting in the memory not being freed at a later time.
        After the fix had been applied, there were no more leaks after h5dump
        detected the issue in the file and reported the error.

        In H5O__chunk_deserialize, replaced an assert with an if statement
        and reporting error, per Neil's recommendation

    HDFFV-10676 - CVE-2018-13873
        Also in H5O__chunk_deserialize, added an assertion to detect
        out of bound ids
2019-01-06 01:44:40 -06:00
Quincey Koziol
8ecd9cc1a1 Updated error stacks for h5dump testing. 2019-01-05 23:41:43 -06:00
Quincey Koziol
92300f954f Corrected comment in src/H5VLint.c, fixed pass-through info size in
src/H5VLpassthru.c, switched to stashing VOL connector ID & info in
API context (in src/H5CX.c, src/H5CXprivate.h, src/H5F.c, src/H5Fint.c, and
src/H5Fefc.c), patched up all sorts of issues in the tests, to make them work
with 'check-vfd' (and 'check-vol' again).
2019-01-05 23:06:45 -06:00
Quincey Koziol
8a5d2c130a Clean up style issues, make function callbacks static, correct debug statements,
etc.  No functionality changes at all.
2019-01-05 17:13:40 -06:00
Larry Knox
3be0fbd817 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2019-01-05 07:50:15 -06:00
Larry Knox
25fe692c5c Configure build directory in batch scripts. 2019-01-05 07:49:19 -06:00
Larry Knox
cceb9f06b8 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '0e34f0feaaeb6d2286f87f695f25fae45c070a42': (26 commits)
  HDFFV-10664 update reference file
  HDFFV-10664 update reference files
  HDFFV-10664 add missing function and check for restriction
  Remove "bad" statements at end of TEST_ERROR.     Formerly arguments to FAIL_PUTS_ERROR
  Add RELEASE.txt entry for HDFFV-10596.
  Add semicolon at end of TEST_ERROR() invocation for consistency.
  Uninstall should remove the libhdf5_hl_fortran links.
  Add symlinks named libhdf5_hl_fortran* to libhdf5hl_fortran in Makefile.am to match cmake install and the name pattern for other hl lib files.
  Change FAIL_PUTS_ERROR to TEST_ERROR.
  Cleaned up the parallel flush test and set t_pflush1 to always fail. Also set CMake to handle this.
  Update calls: H5Dcreate to H5Dcreate2, H5Acreate to H5Acreate2.
  Removed a comment.
  Fix comment
  Align H5Lcreate_ud behavior with documentation for NULL udata pointer
  Update toolchain comment
  Use c99 standard cmake variable
  Add PGI toolchain
  Correction based on code review.
  HDFFV-10664 add check for state before set call
  HDFFV-10546 refactor variable name
  ...
2019-01-05 07:41:12 -06:00
Larry Knox
0e34f0feaa Merge pull request #1433 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '564565b15ed38d78cb7b29b8c9d9b322d224ab42':
  HDFFV-10664 update reference file
  HDFFV-10664 update reference files
  HDFFV-10664 add missing function and check for restriction
2019-01-04 14:31:51 -06:00
Jordan Henderson
b0feaecdb9 Merge pull request #1425 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '659dd9bccf69f32bfdd01dc49410116ec5c1b0bb':
  Align H5Lcreate_ud behavior with documentation for NULL udata pointer
2019-01-04 14:06:10 -06:00
Allen Byrne
564565b15e HDFFV-10664 update reference file 2019-01-04 13:29:22 -06:00
Allen Byrne
e07fb46bdc HDFFV-10664 update reference files 2019-01-04 13:29:01 -06:00
Larry Knox
8887c357ee Merge pull request #1429 in HDFFV/hdf5 from HDFFV-10596-fortran-library-names-differ to develop
* commit 'f4c9ec5d41aa53829617274d3286f1e9a45ae57e':
  Add RELEASE.txt entry for HDFFV-10596.
  Uninstall should remove the libhdf5_hl_fortran links.
  Add symlinks named libhdf5_hl_fortran* to libhdf5hl_fortran in Makefile.am to match cmake install and the name pattern for other hl lib files.
2019-01-04 13:04:41 -06:00
Larry Knox
f4c9ec5d41 Merge remote-tracking branch 'origin/develop' into HDFFV-10596-fortran-library-names-differ 2019-01-04 13:02:27 -06:00
Allen Byrne
28d5d987b5 HDFFV-10664 add missing function and check for restriction 2019-01-04 12:52:37 -06:00
jake.smith
46bf1647d4 Merge pull request #1430 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:dset_ohdr_minimize to develop
* commit 'f7115c31363e80e850c0a228e63a5a035c48b74a':
  Remove "bad" statements at end of TEST_ERROR.     Formerly arguments to FAIL_PUTS_ERROR
  Add semicolon at end of TEST_ERROR() invocation for consistency.
2019-01-04 11:46:54 -06:00
Jacob Smith
f7115c3136 Remove "bad" statements at end of TEST_ERROR.
Formerly arguments to FAIL_PUTS_ERROR
2019-01-04 11:28:39 -06:00
Dana Robinson
f012602d3a Merge pull request #1428 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:openmpi_tweaks to develop
* commit 'd59aa1d75cb6d0ae4f5964d017e275aa53394eb6':
  Cleaned up the parallel flush test and set t_pflush1 to always fail. Also set CMake to handle this.
2019-01-04 10:35:22 -06:00
Larry Knox
482d95c8f9 Add RELEASE.txt entry for HDFFV-10596. 2019-01-04 09:34:18 -06:00
Jacob Smith
a0c6e622e4 Add semicolon at end of TEST_ERROR() invocation for consistency. 2019-01-04 09:07:55 -06:00
Larry Knox
cc0421291e Uninstall should remove the libhdf5_hl_fortran links. 2019-01-04 08:50:10 -06:00
Larry Knox
30abf02de2 Add symlinks named libhdf5_hl_fortran* to libhdf5hl_fortran in
Makefile.am to match cmake install and the name pattern for other hl lib
files.

Add missing ';' to test/dsets.c line 13075.
2019-01-04 07:26:15 -06:00
jake.smith
9ac12ce299 Merge pull request #1427 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:dset_ohdr_minimize to develop
* commit '763db8178e673fdcae4a370fe2e6d345f905d5f1':
  Change FAIL_PUTS_ERROR to TEST_ERROR.
  Update calls: H5Dcreate to H5Dcreate2, H5Acreate to H5Acreate2.
2019-01-03 23:16:12 -06:00
Jacob Smith
763db8178e Change FAIL_PUTS_ERROR to TEST_ERROR. 2019-01-03 23:02:20 -06:00
Dana Robinson
d59aa1d75c Cleaned up the parallel flush test and set t_pflush1 to always fail.
Also set CMake to handle this.
2019-01-03 20:45:58 -08:00
Allen Byrne
2a28b92e2b Merge pull request #1426 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f4516d40feb7ea696e228253bc64a94f55296cbb':
  Fix comment
  Update toolchain comment
  Use c99 standard cmake variable
  Add PGI toolchain
2019-01-03 14:47:10 -06:00
Jacob Smith
3b53747b3a Update calls: H5Dcreate to H5Dcreate2, H5Acreate to H5Acreate2. 2019-01-03 14:44:57 -06:00
mainzer
4f8917f908 Interim checkin to allow Vailin to address assertion failure in
the memory manager -- details shown below.

Note that there are other issues as well -- this is not a
working version.

[mainzer@jelly test]$ ./vfd_swmr
Testing Configure VFD SWMR with fapl                                   PASSED
Testing VFD SWMR configuration for the file and fapl                   PASSED
Testing H5Fvfd_swmr_end_tick() for VFD SWMR                            PASSED
Testing Create/Open/Flush an HDF5 file for VFD SWMR                    PASSED
Testing Verify the metadata file for VFD SWMR writer                  vfd_swmr: H5MVsection.c:233: H5MV__sect_can_merge: Assertion `((sect1->sect_info.addr)!=((haddr_t)(long)(-1)) && (sect2->sect_info.addr)!=((haddr_t)(long)(-1)) && (sect1->sect_info.addr)<(sect2->sect_info.addr))' failed.
Abort (core dumped)
[mainzer@jelly test]$
2019-01-03 13:50:53 -06:00
Binh-Minh Ribler
5daddcc2d4 Merge pull request #1408 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_fixbug:develop to develop
Merged to catch daily test.

* commit '40c55f24ecbdd322fba527d768689fbdbd268374':
  Removed a comment.
  Fixed documentation - typo only
  Fixed CVE division-by-zero issues Description:     Fixed HDFFV-10577 and similar issues found in H5Dchunk.c.  All     the occurrences are in:         H5D__create_chunk_map_single         H5D__create_chunk_file_map_hyper         H5D__chunk_allocate         H5D__chunk_update_old_edge_chunks         H5D__chunk_prune_by_extent         H5D__chunk_copy_cb         H5D__chunk_collective_fill Platforms tested:     Linux/64 (jelly)     Linux/64 (platypus)     Darwin (osx1010test)
2019-01-03 09:50:01 -06:00
M. Scot Breitenfeld
390a3f6728 Added chunked dataset, H5S_ALL test 2019-01-03 09:47:14 -06:00
Binh-Minh Ribler
40c55f24ec Removed a comment. 2019-01-03 09:47:01 -06:00
Allen Byrne
f4516d40fe Fix comment 2019-01-03 09:36:00 -06:00
Jordan Henderson
659dd9bccf Align H5Lcreate_ud behavior with documentation for NULL udata pointer
Add test for H5Lcreate_ud fix
2019-01-03 09:35:44 -06:00
Allen Byrne
9d0c66c7cb Update toolchain comment 2019-01-03 09:33:55 -06:00
Allen Byrne
6f6d0921c0 Use c99 standard cmake variable 2019-01-02 17:07:37 -06:00
Allen Byrne
eaaddcc9e5 Add PGI toolchain 2019-01-02 14:39:38 -06:00
Allen Byrne
c820502e69 Merge pull request #1421 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ed0c468902409ae7fa8fb91c5f5a3a3093846736':
  HDFFV-10664 add check for state before set call
  HDFFV-10546 refactor variable name
  HDFFV-10664 minimized dataset headers for java interface
2019-01-02 14:38:30 -06:00
Vailin Choi
c70498f7a9 Merge pull request #1414 in HDFFV/hdf5 from ~VCHOI/my_hdf5_fork:develop to develop
* commit 'd3dff6efe6f769b219f9dcccebd057afe75ed3c7':
  Correction based on code review.
  Changes based on feedback from pull request.
  Fix for HDFFV-10659: The library abort with "infinite loop closing library" after deleting attributes in densed storage. The fix: When deleting attribute nodes from the name index v2 B-tree, if an attribute is found in the intermediate B-tree nodes, which may be merged/redistributed in the process, we need to free the dynamically allocated spaces for the intermediate decoded attribute.
2019-01-02 13:26:58 -06:00
Vailin Choi
d3dff6efe6 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop
Resolve conflicts:
Conflicts:
	test/Makefile.am
2019-01-02 13:23:54 -06:00
Vailin Choi
7f9c459995 Correction based on code review. 2019-01-02 12:51:47 -06:00
Allen Byrne
ed0c468902 HDFFV-10664 add check for state before set call 2019-01-02 12:47:37 -06:00
jake.smith
71f4e1832c Merge pull request #1420 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:dset_ohdr_minimize to develop
* commit '8324be7fad5f1417aca3d283a8f8caf6b75c4af7':
  fix wrong function name that is missed by correctional macro
2019-01-02 12:29:11 -06:00
M. Scot Breitenfeld
3a738e249b Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-01-02 12:05:02 -06:00
M. Scot Breitenfeld
b39960580e typo 2019-01-02 12:04:43 -06:00
M. Scot Breitenfeld
422d6daf6b typo 2019-01-02 11:53:41 -06:00
M. Scot Breitenfeld
57c2637df2 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-01-02 11:48:59 -06:00
M. Scot Breitenfeld
774098afa6 updated defined constants 2019-01-02 11:48:48 -06:00
Allen Byrne
f3636c573f HDFFV-10546 refactor variable name 2019-01-02 11:27:55 -06:00
M. Scot Breitenfeld
ffff13f0f3 Documented HDFFV-10652 2019-01-02 11:11:24 -06:00
Larry Knox
f9736d817e Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'af21ce90d9465e805807f17da21f93e64e03492a': (46 commits)
  Changed to Unix line endings and chmod -x.
  Fix runtest case for data to stdout in tool
  Updated the parallel install docs.
  Eliminated the need for a separate script variable.
  Flipped swapped testing strings.
  Specify variable type. Remove unnecessary whitespace.
  Added test_vol_plugin.sh to the list of scripts to clean
  Fixed a CMake build issue (CMake still doesn't run the VOL plugin tests)
  Added more sub-tests to the VOL plugin test.
  Added a simple test for registration of VOL connector plugins. Autotools only for right now, but this will be fleshed out in future work.
  OHDR tests now accept h5_fileaccess() fapls. Formatting, informative comments, and minor renaming.
  Fix some CMake listings
  Add error checking to the minimized dset header size calculation. Update printf->HDprintf statements.
  Remove `#if 0` block of deprecated code.
  Fix mistake with H5E_BEGIN_TRY {...} H5E_END_TRY block containing ERROR-raising macros. Formatting tweaks.
  Added a helpful message to the flush script.
  Added a shell script so we can run the parallel flush test on OpenMPI.
  Add "compact" storage test to relative header size comparisons.
  Formatting adjustments.
  Formatting adjustments
  ...
2019-01-02 10:07:31 -06:00
M. Scot Breitenfeld
00990e28f3 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-01-02 09:52:38 -06:00
M. Scot Breitenfeld
58decdbd88 HDFFV-10652
Implemented a process-0 read and then broadcast
for collective read of full datasets (H5S_ALL) by
all the processes in the file communicator.
2019-01-02 09:51:44 -06:00
M. Scot Breitenfeld
55f7fe7f1b Removed reason for breaking read-proc0-and-bcast 2019-01-02 09:39:03 -06:00
Allen Byrne
fb5d3347e6 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'af21ce90d9465e805807f17da21f93e64e03492a':
  Changed to Unix line endings and chmod -x.
  Cleaned up and normalized VFD init calls.
2019-01-02 09:03:43 -06:00
Dana Robinson
af21ce90d9 Merge pull request #1423 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '1f644fe7cd0188628571c5527f51fce4ddeeebf4':
  Changed to Unix line endings and chmod -x.
2019-01-02 07:14:37 -06:00
Dana Robinson
1f644fe7cd Changed to Unix line endings and chmod -x. 2019-01-01 14:30:26 -08:00
Dana Robinson
d5f642b559 Merge pull request #1422 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vfd_init_cleanup to develop
* commit '07b76068a4517f874fc5584049178ed5f61e3cea':
  Cleaned up and normalized VFD init calls.
2019-01-01 12:50:00 -06:00
Dana Robinson
07b76068a4 Merge branch 'develop' into vfd_init_cleanup 2018-12-31 17:19:39 -08:00
Allen Byrne
c3cad8e5f3 HDFFV-10664 minimized dataset headers for java interface 2018-12-31 16:34:07 -06:00
Jacob Smith
8324be7fad fix wrong function name that is missed by correctional macro 2018-12-31 15:18:13 -06:00
M. Scot Breitenfeld
f772ef9f2e switched to using CX instead of a global var. 2018-12-31 15:06:16 -06:00
Allen Byrne
fa6077332b Merge pull request #1416 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '0e6cf18b06d71dc8da9307dddce5e1833f197e19':
  Fix runtest case for data to stdout in tool
2018-12-31 14:07:57 -06:00
Allen Byrne
0e6cf18b06 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b30a1fe44aa804a67f2291005bf8135ac5c2dc99':
  Updated the parallel install docs.
  Eliminated the need for a separate script variable.
  Added a helpful message to the flush script.
  Added a shell script so we can run the parallel flush test on OpenMPI.
2018-12-31 14:06:43 -06:00
Dana Robinson
b30a1fe44a Merge pull request #1400 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:openmpi_tweaks to develop
* commit 'd6c2a96ac2f103d90b96d5b39814810e6a31ef99':
  Updated the parallel install docs.
  Eliminated the need for a separate script variable.
  Added a helpful message to the flush script.
  Added a shell script so we can run the parallel flush test on OpenMPI.
2018-12-31 13:33:31 -06:00
Allen Byrne
028d47d707 Fix runtest case for data to stdout in tool 2018-12-31 12:38:09 -06:00
Dana Robinson
fba448b145 Merge pull request #1413 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:yay_plugins to develop
* commit '3ca19cca5395d79be69209f8d7d0a2b06834a648':
  Flipped swapped testing strings.
  Added test_vol_plugin.sh to the list of scripts to clean
  Fixed a CMake build issue (CMake still doesn't run the VOL plugin tests)
  Added more sub-tests to the VOL plugin test.
  Added a simple test for registration of VOL connector plugins. Autotools only for right now, but this will be fleshed out in future work.
2018-12-31 10:28:25 -06:00
Larry Knox
72124031ec Add libhdf5_hl_fortran symlinks for libhdf5hl_fortran files.
Set ctest*.lsf.in.cmake scripts for sierra.
Correct src/CMakelists.txt syntax error.
2018-12-31 09:20:27 -06:00
Dana Robinson
d6c2a96ac2 Updated the parallel install docs. 2018-12-31 05:07:30 -08:00
Dana Robinson
4faca62679 Eliminated the need for a separate script variable. 2018-12-31 05:04:30 -08:00
Larry Knox
715272eeb7 Correct syntax error in CMakeLists.txt. 2018-12-31 06:23:13 -06:00
Dana Robinson
a3faa92653 Merge branch 'develop' into openmpi_tweaks 2018-12-30 22:24:42 -08:00
Vailin Choi
e035c7abdd Changes based on feedback from pull request. 2018-12-31 00:11:45 -06:00
jake.smith
905c3ca3d7 Merge pull request #1372 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:dset_ohdr_minimize to develop
Dataset object header minimization
Jira TRILAB-45

* commit 'f54fb420d08ea0a7e7b026150c0ab559803e0acd': (34 commits)
  Specify variable type. Remove unnecessary whitespace.
  OHDR tests now accept h5_fileaccess() fapls. Formatting, informative comments, and minor renaming.
  Fix some CMake listings
  Add error checking to the minimized dset header size calculation. Update printf->HDprintf statements.
  Remove `#if 0` block of deprecated code.
  Fix mistake with H5E_BEGIN_TRY {...} H5E_END_TRY block containing ERROR-raising macros. Formatting tweaks.
  Add "compact" storage test to relative header size comparisons.
  Formatting adjustments.
  Formatting adjustments
  Move H5Fset_dset_no_attrs_hint VOL operations to native. Move minimzied object header tests from separate file to test/ohdr.c Some formatting changes.
  Re-format test/ohdr_mindset.c Fix a few transcription errors in other test files.
  formatting adjustments
  Reformat to be more consistent with existing code. Fix a few typos.
  add missing paramter - macro seemingly unused, but absence results in compiler complaint
  fix reference; move declaration in file
  Remove unused debugging print in '#if 0' block
  Fix typo. Fix CHECK of wrong ID (dset[2|3]_id).
  change test file name and apply 'h5_fixname' to it
  Sidestep and hide&flag minor issues causing test failures.
  Incorporate minimized dset ohdr tests into extant suite.
  ...
2018-12-29 14:31:31 -06:00
Larry Knox
126d1e6176 Add .lsf batch scripts and insert the build directory into the scripts
during configuration.
2018-12-28 16:50:48 -06:00
Vailin Choi
f808c108ed Fix for HDFFV-10659: The library abort with "infinite loop closing library"
after deleting attributes in densed storage.
The fix: When deleting attribute nodes from the name index v2 B-tree,
if an attribute is found in the intermediate B-tree nodes, which may be
merged/redistributed in the process, we need to free the dynamically
allocated spaces for the intermediate decoded attribute.
2018-12-28 16:49:11 -06:00
Dana Robinson
3ca19cca53 Flipped swapped testing strings. 2018-12-28 12:56:49 -08:00
Dana Robinson
dac76c579b Merge branch 'develop' into yay_plugins 2018-12-28 12:55:15 -08:00
Jacob Smith
f54fb420d0 Merge branch 'develop' into dset_ohdr_minimize 2018-12-28 12:45:10 -06:00
Jacob Smith
30493ce9b9 Specify variable type.
Remove unnecessary whitespace.
2018-12-28 10:17:09 -06:00
Dana Robinson
ba095e6a53 Merge pull request #1406 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:md_cache_logging_squash to develop
* commit '1ff756a1047d58f71c70deb48c797cb860904292':
  Updated the log function names.
  Squash merge of MDC logging changes.
2018-12-28 07:22:32 -06:00
Dana Robinson
1ff756a104 Updated the log function names. 2018-12-28 05:15:58 -08:00
Dana Robinson
552fec96e9 Merge branch 'develop' into md_cache_logging_squash 2018-12-27 22:22:24 -08:00
Dana Robinson
75dd3c9cab Merge branch 'develop' into yay_plugins 2018-12-27 22:20:09 -08:00
Dana Robinson
3a05e7109a Added test_vol_plugin.sh to the list of scripts to clean 2018-12-27 21:42:51 -08:00
Jordan Henderson
fe30b71086 Merge pull request #1386 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit 'b4fe787bb9fe4bfc4709a124df59dd987c9a09d2':
  Add test for H5Arename NULL/empty attribute name fix
  align H5Arename behavior with H5Arename_by_name
2018-12-27 23:05:20 -06:00
Dana Robinson
fafee5b8ae Fixed a CMake build issue (CMake still doesn't run the VOL plugin
tests)
2018-12-27 19:56:21 -08:00
Dana Robinson
544ab1c78a Added more sub-tests to the VOL plugin test. 2018-12-27 19:42:02 -08:00
Dana Robinson
621014be28 Added a simple test for registration of VOL connector plugins.
Autotools only for right now, but this will be fleshed out in future
work.
2018-12-27 15:50:04 -08:00
Dana Robinson
5b57c69ed4 Merge pull request #1412 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:yay_plugins to develop
* commit '9cc406633c29d4167031dc85b950858f90163cbc':
  Fixed plugin loading so it actually checks the plugin type.
2018-12-27 16:10:57 -06:00
Dana Robinson
9cc406633c Fixed plugin loading so it actually checks the plugin type. 2018-12-27 14:00:32 -08:00
Jacob Smith
29497cc4e1 Merge branch 'develop' into dset_ohdr_minimize 2018-12-27 12:33:32 -06:00
Dana Robinson
1cc890e333 Merge pull request #1410 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '9152547b766919eefb7163e17f0c03052a2d73f2':
  H5VLregister_by_value() should not set _BY_NAME when searching for plugins.
2018-12-27 11:10:05 -06:00
Dana Robinson
9152547b76 H5VLregister_by_value() should not set _BY_NAME when searching for
plugins.
2018-12-27 08:56:43 -08:00
Jacob Smith
b2afa88fa0 OHDR tests now accept h5_fileaccess() fapls.
Formatting, informative comments, and minor renaming.
2018-12-26 14:35:22 -06:00
Binh-Minh Ribler
9c6744778e Fixed documentation - typo only 2018-12-23 00:51:17 -06:00
Binh-Minh Ribler
c3f51c52d0 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5_bmr_fixbug into develop 2018-12-23 00:18:42 -06:00
Binh-Minh Ribler
251ba120b5 Fixed CVE division-by-zero issues
Description:
    Fixed HDFFV-10577 and similar issues found in H5Dchunk.c.  All
    the occurrences are in:
        H5D__create_chunk_map_single
        H5D__create_chunk_file_map_hyper
        H5D__chunk_allocate
        H5D__chunk_update_old_edge_chunks
        H5D__chunk_prune_by_extent
        H5D__chunk_copy_cb
        H5D__chunk_collective_fill
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1010test)
2018-12-23 00:18:13 -06:00
Jacob Smith
cfdbb220d8 Fix some CMake listings 2018-12-21 16:18:05 -06:00
Jacob Smith
db9cc49a6b Add error checking to the minimized dset header size calculation.
Update printf->HDprintf statements.
2018-12-21 15:47:49 -06:00
Allen Byrne
7d28a4295e Merge pull request #1407 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '991996b25122ff010b9af1bbb6cc05be491ce038':
  Remove unused CMake files
  Update option text
  Add reference file to list
  HDFFV-10656 remove moved source
  HDFFV-10656 Add CHECK_VOL support to CMake
2018-12-21 14:41:29 -06:00
Allen Byrne
991996b251 Remove unused CMake files 2018-12-21 12:22:32 -06:00
Allen Byrne
909fa39bc7 Update option text 2018-12-21 11:41:02 -06:00
Allen Byrne
99d1f614f1 Add reference file to list 2018-12-21 10:39:15 -06:00
Dana Robinson
18e6ec82d0 Squash merge of MDC logging changes. 2018-12-20 20:41:42 -08:00
Dana Robinson
d6adb6526d Merge pull request #1399 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_tweaks to develop
* commit '75a03ea0c36f24a6a3982b75a8c52325879bb569':
  Moved private native VOL connector functions to H5VLnative_private.h.
  Moved the remainder of the code into separate files.
  Split the native VOL connector code into multiple files and moved the attribute code over.
2018-12-20 19:48:36 -06:00
Quincey Koziol
830fac2fea Merge pull request #1402 in HDFFV/hdf5 from stackable_vol_fix_13 to develop
* commit '9e8cacaa5531f418f5d9d447c1251eb705da785a':
  Remove core VFD-specific property list call and regenerate encoded property lists.
2018-12-20 15:45:11 -06:00
Allen Byrne
3c8b00dbd8 HDFFV-10656 remove moved source 2018-12-20 15:35:37 -06:00
Allen Byrne
7e8923957f HDFFV-10656 Add CHECK_VOL support to CMake 2018-12-20 15:11:27 -06:00
Dana Robinson
75a03ea0c3 Merge branch 'develop' into vol_tweaks 2018-12-20 12:08:13 -08:00
Dana Robinson
a06249a21b Moved private native VOL connector functions to H5VLnative_private.h. 2018-12-20 10:47:00 -08:00
Quincey Koziol
9e8cacaa55 Remove core VFD-specific property list call and regenerate encoded property
lists.
2018-12-20 11:52:09 -06:00
Jacob Smith
13baaea005 Remove #if 0 block of deprecated code. 2018-12-20 11:18:59 -06:00
Jacob Smith
210ab50725 Fix mistake with H5E_BEGIN_TRY {...} H5E_END_TRY block containing ERROR-raising macros.
Formatting tweaks.
2018-12-20 11:12:53 -06:00
Quincey Koziol
416f68c670 Merge pull request #1401 in HDFFV/hdf5 from stackable_vol_fix_12 to develop
* commit 'ac5a65bb43dbb00808f4867d8f106143364742ad':
  Correct typo
2018-12-20 10:45:27 -06:00
Quincey Koziol
ac5a65bb43 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2018-12-20 10:19:33 -06:00
Quincey Koziol
2bbd1589fe Correct typo 2018-12-20 10:19:19 -06:00
Allen Byrne
99e4c14ea6 Merge pull request #1396 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f9e9c1ad0eeabce09b2f8613427b83daebbf8cb0':
  HDFFV-10664 Add new functions and constants to java interface
2018-12-20 08:27:53 -06:00
Dana Robinson
64eb1489de Added a helpful message to the flush script. 2018-12-20 03:43:53 -08:00
Dana Robinson
fe1a5b4279 Added a shell script so we can run the parallel flush test
on OpenMPI.
2018-12-20 03:03:16 -08:00
Dana Robinson
aad96a8c73 Moved the remainder of the code into separate files. 2018-12-19 19:19:05 -08:00
Dana Robinson
9cfe7fd18d Split the native VOL connector code into multiple files and
moved the attribute code over.
2018-12-19 17:41:50 -08:00
Quincey Koziol
34c0328c4d Merge pull request #1398 in HDFFV/hdf5 from stackable_vol_fix_11 to develop
* commit '9810526a89b1f91d441ccce6c6ca484778f99b33':
  Correct core VFD to run with a 1MB increment instead of a 1 byte increment!
2018-12-19 19:08:04 -06:00
Quincey Koziol
9810526a89 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2018-12-19 17:17:16 -06:00
Quincey Koziol
f1d8d889b4 Correct core VFD to run with a 1MB increment instead of a 1 byte increment! 2018-12-19 17:16:45 -06:00
Quincey Koziol
9fba6e082c Merge pull request #1397 in HDFFV/hdf5 from stackable_vol_fix_10 to develop
* commit '3587fe2638c45c087e970a3bdca07a9ffa7d435c':
  Switch return value to -1
  Fix return value type for get name operation.
2018-12-19 17:05:20 -06:00
Quincey Koziol
3587fe2638 Switch return value to -1 2018-12-19 16:54:02 -06:00
Vailin Choi
0e0abc50c8 Fixes for issues #1 and #2 listed in John's email dated Dec 7 2018:
(1) Assertion failure in the vfd_swmr test
(2) Reader error in the vfd swmr concurrent tests
Also fixes for:
(a) Use H5MV_alloc() to allocate space for md_pages_reserved when creating the metadata file in H5F__vfd_swmr_init()
(b) Remove a multi-page (when vfd_swmr_writer is true) from the page buffer in H5MF_xfree()
2018-12-19 16:30:44 -06:00
Quincey Koziol
371ed6a518 Fix return value type for get name operation. 2018-12-19 16:30:11 -06:00
Allen Byrne
a3121cf41a Merge pull request #1395 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'ec4902ae8d8bd009bb835d3a0bba335845f2c07d':
  Special text removal not conditional
  TRILABS special output removal
  TRILABS special text removal
2018-12-19 15:52:02 -06:00
Allen Byrne
ec4902ae8d Special text removal not conditional 2018-12-19 15:43:33 -06:00
Allen Byrne
c4913dd55f TRILABS special output removal 2018-12-19 15:41:15 -06:00
Jacob Smith
38de07aea3 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~jake.smith/hdf5 into dset_ohdr_minimize 2018-12-19 15:14:51 -06:00
Jacob Smith
2b4e540fad Add "compact" storage test to relative header size comparisons. 2018-12-19 14:57:38 -06:00
Dana Robinson
33345b835c Merge pull request #1393 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_optional_enum_to_macros to develop
* commit 'f60e8bb05e3203054e27bf41d0ebc657537736ed':
  Moved the optional enums to H5VLnative.h and converted to an int typedef and a set of #defines.
2018-12-19 14:55:21 -06:00
Allen Byrne
0bcae40c8a TRILABS special text removal 2018-12-19 14:44:29 -06:00
Allen Byrne
f9e9c1ad0e HDFFV-10664 Add new functions and constants to java interface 2018-12-19 12:59:05 -06:00
Quincey Koziol
fc7f4e59aa Merge pull request #1394 in HDFFV/hdf5 from stackable_vol_fix_08 to develop
* commit 'b61ad0f7b68f974356a33b335e94e21a941c0621':
  Clear driver properties before returning them to application.
2018-12-19 07:37:00 -06:00
Quincey Koziol
b61ad0f7b6 Clear driver properties before returning them to application.
Move write_tracking and page_size properties to be inside the core VFD's
driver properties.
2018-12-18 22:30:12 -06:00
Dana Robinson
f60e8bb05e Moved the optional enums to H5VLnative.h and converted to an int
typedef and a set of #defines.
2018-12-18 13:34:34 -08:00
Jacob Smith
7541ed1fc7 Formatting adjustments. 2018-12-18 15:11:42 -06:00
Dana Robinson
bd096066c3 Merge pull request #1384 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:build_tweaks to develop
* commit 'fc64bafb143b1d259282913fdbf0ba9f1a0a8069':
  Updates the autotools tests to also emit the VOL connector for each test.
2018-12-18 14:12:21 -06:00
Dana Robinson
b486fd10a4 Merge pull request #1392 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_optional_enum_to_macros to develop
* commit '70c8c629ce1d7b1eb98220135ddcca1bf9c5b7fc':
  Added missing H5O calls.
  Fixed a missing H5R call.
  Made hbool_t processing consistent in va_lists.
  Fixed an enums-in-va_list issue in the passthru VOL connector.
  Updated enums in VOL va_lists to be passed as ints.
2018-12-18 13:53:02 -06:00
Jacob Smith
507d9423c8 Formatting adjustments 2018-12-18 13:51:12 -06:00
Jacob Smith
99bc714c4b Move H5Fset_dset_no_attrs_hint VOL operations to native.
Move minimzied object header tests from separate file to test/ohdr.c
Some formatting changes.
2018-12-18 13:42:03 -06:00
Dana Robinson
70c8c629ce Added missing H5O calls. 2018-12-18 10:37:49 -08:00
Dana Robinson
b73052799c Fixed a missing H5R call. 2018-12-18 10:03:29 -08:00
Dana Robinson
6a87cc96a6 Made hbool_t processing consistent in va_lists. 2018-12-18 10:00:35 -08:00
Jacob Smith
5efc08a06d Merge branch 'develop' into dset_ohdr_minimize 2018-12-18 11:50:58 -06:00
Dana Robinson
b6d27bdf90 Fixed an enums-in-va_list issue in the passthru VOL connector. 2018-12-18 09:30:18 -08:00
Dana Robinson
b55e5efc1c Merge branch 'develop' into vol_optional_enum_to_macros 2018-12-18 09:20:07 -08:00
Dana Robinson
55fc5067b6 Updated enums in VOL va_lists to be passed as ints. 2018-12-18 09:16:46 -08:00
Dana Robinson
e8108d7699 Merge branch 'develop' into vfd_init_cleanup 2018-12-18 09:07:28 -08:00
Quincey Koziol
f0c83dedb6 Merge pull request #1391 in HDFFV/hdf5 from stackable_vol_fix_07 to develop
* commit '2b496c1e19c19847bd6ab9b692b13db3d3afb0a9':
  Correct error from refactoring out H5VL_FILE_CACHE_VOL_CONN callback.
2018-12-18 10:44:32 -06:00
Quincey Koziol
2b496c1e19 Correct error from refactoring out H5VL_FILE_CACHE_VOL_CONN callback. 2018-12-18 10:19:40 -06:00
Dana Robinson
ddf2cbad1b Cleaned up and normalized VFD init calls. 2018-12-17 23:00:25 -08:00
Quincey Koziol
c3df26afb4 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2018-12-17 18:04:46 -06:00
Quincey Koziol
aadebc1b7e Merge pull request #1390 in HDFFV/hdf5 from stackable_vol_fix_06 to develop
* commit '3597bd469ff0073134b31765d9b87660cd3e0039':
  Revert change to MSC_VER, in favor of Dana's
  Remove H5VL_FILE_CACHE_VOL_CONN from file specific callbacks, as it turns out not to be necessary.
2018-12-17 18:03:59 -06:00
Quincey Koziol
a018d86050 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2018-12-17 17:36:53 -06:00
Quincey Koziol
59efe89450 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2018-12-17 17:36:45 -06:00
Dana Robinson
bacabb3534 Merge pull request #1364 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:h5i_reference_removal to develop
* commit 'e21c1cf7c6ee6dba5dd5bfd1a525227ac1304b53':
  Removed H5I_REFERENCE from the library. It has always been unused and has been marked 'deprecated' since 1.10.0. Fixes HDFFV-10252.
2018-12-17 17:35:59 -06:00
Dana Robinson
d8656bdbb2 Merge pull request #1389 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:strtok_windows_fix to develop
* commit 'a7618f432b671ad041ae63a83bf9b9bb08096dbe':
  Updated with extra sanity check and improved comment.
  Fixed an issue in the passthru Windows va_copy hack.
2018-12-17 17:34:44 -06:00
Quincey Koziol
3597bd469f Revert change to MSC_VER, in favor of Dana's 2018-12-17 17:28:51 -06:00
Quincey Koziol
c6831c7a75 Remove H5VL_FILE_CACHE_VOL_CONN from file specific callbacks, as it turns out
not to be necessary.

Also, correct _MSC_VER #ifdef
2018-12-17 17:25:10 -06:00
Dana Robinson
a7618f432b Updated with extra sanity check and improved comment. 2018-12-17 14:48:39 -08:00
Dana Robinson
a71b77433c Fixed an issue in the passthru Windows va_copy hack. 2018-12-17 14:33:33 -08:00
Dana Robinson
8909646693 Merge pull request #1388 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_optional_enum_to_macros to develop
* commit '9f175afce8c08bf6193e45ce391e05e4198dd61c':
  Updated va_arg-->HDva_arg in the native VOL connector.
  Added HD to va_* calls in a couple of library files.
2018-12-17 16:05:20 -06:00
Dana Robinson
9f175afce8 Updated va_arg-->HDva_arg in the native VOL connector. 2018-12-17 14:03:11 -08:00
Dana Robinson
02eb52b5fd Merge pull request #1387 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:strtok_windows_fix to develop
* commit 'b0457117d867d9850d042d7c3f71a747899b932e':
  Further va_list improvements.
  Added a helpful comment to the va_copy() Windows hack.
  Added a work-around for va_copy() on pre-2013 versions of Visual Studio.
2018-12-17 15:32:49 -06:00
Dana Robinson
3214de7924 Added HD to va_* calls in a couple of library files. 2018-12-17 13:30:31 -08:00
Jordan Henderson
b4fe787bb9 Add test for H5Arename NULL/empty attribute name fix
Split checking of NULL vs. empty string arguments
2018-12-17 14:30:54 -06:00
Dana Robinson
b0457117d8 Further va_list improvements. 2018-12-17 11:40:10 -08:00
Dana Robinson
6306766fb4 Added a helpful comment to the va_copy() Windows hack. 2018-12-17 10:34:20 -08:00
Dana Robinson
1b9326d37f Added a work-around for va_copy() on pre-2013 versions of Visual Studio. 2018-12-17 10:29:58 -08:00
Allen Byrne
59b23c198c Merge pull request #1385 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '8dbadb41a3b23d6d74effee7bef0302fd81b80a6':
  HDFFV-10663 add new function H5Fis_accessible
2018-12-17 12:29:50 -06:00
Jordan Henderson
16cbd591cd align H5Arename behavior with H5Arename_by_name 2018-12-17 12:01:20 -06:00
Dana Robinson
339aebc69a Merge pull request #1381 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_tweaks to develop
* commit '9ae9b3ef513613bb2fca15f96461a156148c2627':
  Moved the native VOL connector's optional enums to the public headers and renamed to include native/NATIVE in the name.
2018-12-17 11:24:58 -06:00
Allen Byrne
8dbadb41a3 HDFFV-10663 add new function H5Fis_accessible 2018-12-17 11:16:59 -06:00
Allen Byrne
1e9efded02 Merge pull request #1378 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '1e4c7bf9c96dfb353b643f41c136a8fa3f511df2':
  Use H5I_INVALID_HID
  HDFFV-10632 update new files
2018-12-17 08:46:03 -06:00
Dana Robinson
fc64bafb14 Updates the autotools tests to also emit the VOL connector
for each test.
2018-12-16 12:41:55 -08:00
Dana Robinson
f5886d5802 Merge pull request #1383 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:strtok_windows_fix to develop
* commit '1b5190011bde5f2f47b01429cd97c11ade66f911':
  Added #define to use strtok_s instead of strtok_r on Windows.
2018-12-16 12:20:47 -06:00
Allen Byrne
1e4c7bf9c9 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '50ca26f3ec428de408040335f2a2999e750d98b3':
  Updated the passthru VOL connector: * snprintf --> sprintf (for Windows compat) * tabs --> spaces * removed spurious parens from returns * Changed the logging macro to something less clash-prone
  Make sure to free copy of VOL connector's name when H5VL_register_connector fails
2018-12-16 11:39:14 -06:00
Dana Robinson
50ca26f3ec Merge pull request #1382 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'e21dec94d85b02b6dd3b2020cf026414cea1eb0d':
  Updated the passthru VOL connector: * snprintf --> sprintf (for Windows compat) * tabs --> spaces * removed spurious parens from returns * Changed the logging macro to something less clash-prone
2018-12-15 22:05:40 -06:00
Dana Robinson
1b5190011b Added #define to use strtok_s instead of strtok_r on Windows. 2018-12-15 20:02:37 -08:00
Dana Robinson
e21dec94d8 Updated the passthru VOL connector:
* snprintf --> sprintf (for Windows compat)
* tabs --> spaces
* removed spurious parens from returns
* Changed the logging macro to something less clash-prone
2018-12-15 18:17:16 -08:00
Allen Byrne
8f3a777a8a Use H5I_INVALID_HID 2018-12-15 06:25:02 -06:00
Dana Robinson
9ae9b3ef51 Moved the native VOL connector's optional enums to the
public headers and renamed to include native/NATIVE in the
name.
2018-12-15 02:05:00 -08:00
Jordan Henderson
bc0a08d997 Merge pull request #1379 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '74d167d738f719fc1076ed16360e9fd5b7ba4c98':
  Make sure to free copy of VOL connector's name when H5VL_register_connector fails
2018-12-14 19:31:41 -06:00
Jordan Henderson
74d167d738 Make sure to free copy of VOL connector's name when H5VL_register_connector fails 2018-12-14 13:15:09 -06:00
Allen Byrne
c92f11b368 HDFFV-10632 update new files 2018-12-14 08:12:51 -06:00
Jacob Smith
61350bf350 Re-format test/ohdr_mindset.c
Fix a few transcription errors in other test files.
2018-12-13 22:11:29 -06:00
Jacob Smith
8e4b34afd0 formatting adjustments 2018-12-13 19:40:33 -06:00
Quincey Koziol
7670f112ca Merge pull request #1377 in HDFFV/hdf5 from stackable_vol_fix_05 to develop
* commit '833a4f73fd8dc696f8bf500cd842d88949bb1519':
  Fix plugin code from referencing invalid key ID value, and also switch from strtok() to strtok_r() to avoid possible interference with / to application use of strtok().
2018-12-13 17:59:09 -06:00
Quincey Koziol
833a4f73fd Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2018-12-13 17:32:39 -06:00
Quincey Koziol
247a6afb7e Fix plugin code from referencing invalid key ID value, and also switch from
strtok() to strtok_r() to avoid possible interference with / to application
use of strtok().
2018-12-13 17:31:00 -06:00
Allen Byrne
dd6c06f9a7 Merge pull request #1375 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f9f6e9fe24d8b0996a79af57d80e21a950f5009f':
  Still need the stamp1 files if PREGEN
2018-12-13 16:04:40 -06:00
Allen Byrne
f9f6e9fe24 Still need the stamp1 files if PREGEN 2018-12-13 15:32:49 -06:00
Allen Byrne
d88040edb3 Merge pull request #1374 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '248442eb00ec254bf632ddf6a0f62ed5f442a3f0':
  If MPI is enabled java will not compile because of include.
2018-12-13 15:15:48 -06:00
Allen Byrne
c1eca48305 Merge pull request #1371 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '98309270710fea1aee7012ded776be4260c63df8':
  TRILABS - exclude host info lines
  HDFFV-10660 Add new files to OUTPUT section of custom commands
2018-12-13 15:13:57 -06:00
Allen Byrne
248442eb00 If MPI is enabled java will not compile because of include. 2018-12-13 14:10:38 -06:00
Jacob Smith
0a4834c264 Reformat to be more consistent with existing code.
Fix a few typos.
2018-12-13 14:02:29 -06:00
Allen Byrne
9830927071 TRILABS - exclude host info lines 2018-12-13 12:52:50 -06:00
Jacob Smith
8b9c4b50e3 add missing paramter - macro seemingly unused, but absence results in compiler complaint 2018-12-13 11:33:58 -06:00
Jacob Smith
a959914695 fix reference; move declaration in file 2018-12-13 10:47:52 -06:00
Jacob Smith
943b7f9c02 Merge branch 'develop' into dset_ohdr_minimize 2018-12-13 10:27:27 -06:00
Allen Byrne
88137324fc HDFFV-10660 Add new files to OUTPUT section of custom commands 2018-12-13 09:40:43 -06:00
Allen Byrne
1dd81af5a2 Merge pull request #1368 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6a87b59aeeda7839ff7b3b9f129192bd1579c6fa':
  HDFVIEW-4 Duplicate line
2018-12-13 09:35:19 -06:00
M. Scot Breitenfeld
ef21966d17 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2018-12-13 09:21:00 -06:00
Jordan Henderson
8faad0a959 Merge pull request #1369 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '76c0d8c434186107176fc83a0ce4e94b584196ae':
  Add test for H5Aget_info(_by_name/_by_idx) NULL info pointer
  align H5Aget_info behavior with H5Gget_info when null attribute pointer is supplied
2018-12-13 09:10:40 -06:00
Jordan Henderson
76c0d8c434 Add test for H5Aget_info(_by_name/_by_idx) NULL info pointer 2018-12-12 18:30:34 -06:00
Jacob Smith
ad6de59e4c Merge branch 'develop' into dset_ohdr_minimize 2018-12-12 17:34:13 -06:00
Jacob Smith
911b8e8fc2 Merge branch 'dset_ohdr_minimize' of https://bitbucket.hdfgroup.org/scm/~jake.smith/hdf5 into dset_ohdr_minimize
Incorporate a few housekeeping changes and one fix.
2018-12-12 17:27:27 -06:00
Jacob Smith
ea73325250 Merge branch 'develop' into dset_ohdr_minimize 2018-12-12 17:26:08 -06:00
Jordan Henderson
55dbf69573 align H5Aget_info behavior with H5Gget_info when null attribute pointer is supplied 2018-12-12 17:05:56 -06:00
M. Scot Breitenfeld
fdf38bb5f4 HDFFV-10652
Implemented a process-0 read and then broadcast
for collective read of full datasets (H5S_ALL) by
all the processes in the file communicator.
2018-12-12 15:39:18 -06:00
Jacob Smith
5a38ab71be Remove unused debugging print in '#if 0' block 2018-12-12 14:17:15 -06:00
Jacob Smith
c81e310214 Fix typo.
Fix CHECK of wrong ID (dset[2|3]_id).
2018-12-12 14:03:56 -06:00
hdftest
afdf3094cc Merge pull request #1367 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'deb7d2fb9714acc8222815328f71b0aae7e74275':
  Use version 2 functions in test file to address compile errors for --with-default-api-version=v16 option.
2018-12-12 11:30:05 -06:00
Allen Byrne
6a87b59aee HDFVIEW-4 Duplicate line 2018-12-12 10:54:39 -06:00
Allen Byrne
8822bc3c41 Merge pull request #1349 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '139a12d13cda046fd3cd64a4f097eb3485f50173':
  HDFFV-10632 correct number
  HDFFV-10632 stder/stdout change note
  Add stamp files for generated  files
  HDFFV-10632 update autotools test scripts to match cmake
  HDFFV=10632 test cleanup
  Fix special macro stdout as empty
  Need nonexistent file to skip stdout compare
  HDFFV-10632 - split stderr and stdout in cmake
2018-12-12 09:29:10 -06:00
Allen Byrne
139a12d13c HDFFV-10632 correct number 2018-12-12 09:28:51 -06:00
Allen Byrne
ace20fc987 HDFFV-10632 stder/stdout change note 2018-12-12 09:27:45 -06:00
Allen Byrne
958e1f72cb Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '1be974ff963e2e538090bb3e65ba66feb93d5c68':
  HDFVIEW-4 note
  HDFVIEW-4 removed unused functions
  HDFVIEW-4 add datatype read to H5A like H5D
2018-12-12 09:17:07 -06:00
Allen Byrne
1be974ff96 Merge pull request #1365 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'ef6c80bbdbe6ce1ee4665a352099976d0fddf255':
  HDFVIEW-4 note
  HDFVIEW-4 removed unused functions
  HDFVIEW-4 add datatype read to H5A like H5D
2018-12-12 09:13:04 -06:00
Allen Byrne
ef6c80bbdb HDFVIEW-4 note 2018-12-12 09:12:50 -06:00
Allen Byrne
ce9bcb0dda HDFVIEW-4 removed unused functions 2018-12-12 08:50:58 -06:00
Larry Knox
deb7d2fb97 Use version 2 functions in test file to address compile errors for
--with-default-api-version=v16 option.
2018-12-12 06:53:26 -06:00
Jacob Smith
496de6922f change test file name and apply 'h5_fixname' to it 2018-12-11 17:45:12 -06:00
Allen Byrne
642d0cb00b Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '6f52793adcd5a14aa63731e3c33c9737b5a04d16':
  Minor tweak to address JIRA HDFFV-10611 (which was already fixed).
2018-12-10 16:52:54 -06:00
Allen Byrne
7ffba76bc3 HDFVIEW-4 add datatype read to H5A like H5D 2018-12-10 16:52:34 -06:00
Dana Robinson
6f52793adc Merge pull request #1363 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '5d9a93b61d374c427554dd2ff9574539bc8861ab':
  Minor tweak to address JIRA HDFFV-10611 (which was already fixed).
2018-12-08 11:39:25 -06:00
Dana Robinson
e21c1cf7c6 Removed H5I_REFERENCE from the library. It has always been unused
and has been marked 'deprecated' since 1.10.0. Fixes HDFFV-10252.
2018-12-08 08:14:05 -08:00
Dana Robinson
5d9a93b61d Minor tweak to address JIRA HDFFV-10611 (which was already fixed). 2018-12-08 07:22:40 -08:00
mainzer
2b613c6c21 Merge branch 'feature/vfd_swmr' of https://bitbucket.hdfgroup.org/scm/~vchoi/my_hdf5_fork into feature/vfd_swmr
resolved conflict in H5PB.c
2018-12-07 16:36:23 -06:00
Allen Byrne
962f35e761 Add stamp files for generated files 2018-12-07 16:02:00 -06:00
Allen Byrne
ce625a617e Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '4643860aa940fb52da251f7023ec2e48d7d10f34':
  HDFFV-10635: Some minor changes to the test case and the comments in the library.
  HDFFV-10635: add a test case.
  HDFFV-10635: Allowing to write the same variable-length element more than once.
2018-12-07 15:57:56 -06:00
mainzer
1520b17a34 interim checkin of VFD SWMR writer EOT code.
Added code supporting first cut at the writer end of tick operations.
Tested (to the extent possible) on charis and jelly.
2018-12-07 15:55:55 -06:00
Scot Breitenfeld
5a51c3677e Merge branch 'develop' into H10621 2018-12-07 15:43:51 -06:00
Scot Breitenfeld
a21f1d8aef added missing files 2018-12-07 15:25:34 -06:00
Ray Lu
4643860aa9 Merge pull request #1348 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10635-hdf5-library-segmentation-fault to develop
* commit '3e8599591504c95d8a97100b9546174f6132dc97':
  HDFFV-10635: Some minor changes to the test case and the comments in the library.
  HDFFV-10635: add a test case.
  HDFFV-10635: Allowing to write the same variable-length element more than once.
2018-12-07 14:58:43 -06:00
Scot Breitenfeld
96b6f58ac8 Implemented VOL APIs and C constants, no tests 2018-12-07 12:06:29 -06:00
Scot Breitenfeld
5267454ebd Implemented VOL APIs and C constants, no tests 2018-12-07 12:00:47 -06:00
Allen Byrne
ac34d3e157 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '3682071b4a3760959c2ccc80d6de58a8d81b5048':
  RELEASE.txt updates for fixes pushed to 1.10.5.
2018-12-07 11:44:53 -06:00
Dana Robinson
3682071b4a Merge pull request #1362 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '4484c5d6ef2186805da44abfbec9bf21fc5e4414':
  RELEASE.txt updates for fixes pushed to 1.10.5.
2018-12-07 11:42:21 -06:00
Allen Byrne
698d0490b1 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '7796cbd4174e85aa211dbffa562ada7413f1dbf7':
  Fix build errors VOL changes, when using --disable-deprecated-symbols.
  Removed RELEASE.txt entry concerning --enable-debug/production configure flags as those changes were pushed to HDF5 1.10.
  Remove reference to h5_vol_external_log_native.
2018-12-07 11:26:03 -06:00
Dana Robinson
4484c5d6ef Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into develop 2018-12-07 08:33:28 -08:00
Dana Robinson
ec99efbae8 RELEASE.txt updates for fixes pushed to 1.10.5. 2018-12-07 08:31:52 -08:00
Scot Breitenfeld
1000e97d3a initial API impl. 2018-12-06 23:44:18 -06:00
Quincey Koziol
7796cbd417 Merge pull request #1360 in HDFFV/hdf5 from stackable_vol_fix_04 to develop
* commit 'a60702605496bb5dfb12af0c0385590df85b31a3':
  Fix build errors VOL changes, when using --disable-deprecated-symbols.
2018-12-06 18:03:00 -06:00
Songyu Lu
3e85995915 HDFFV-10635: Some minor changes to the test case and the comments in the library. 2018-12-06 17:36:34 -06:00
Dana Robinson
026507404b Merge pull request #1358 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'dd23dac577c70d7fc0aa3fe21c1ebf52a18975d2':
  Removed RELEASE.txt entry concerning --enable-debug/production configure flags as those changes were pushed to HDF5 1.10.
2018-12-06 15:42:31 -06:00
Quincey Koziol
a607026054 Fix build errors VOL changes, when using --disable-deprecated-symbols. 2018-12-06 13:37:09 -06:00
Allen Byrne
11b4c1f3af HDFFV-10632 update autotools test scripts to match cmake 2018-12-06 12:48:39 -06:00
Dana Robinson
dd23dac577 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into develop 2018-12-06 10:10:39 -08:00
Dana Robinson
e3c40fef1f Removed RELEASE.txt entry concerning --enable-debug/production configure flags
as those changes were pushed to HDF5 1.10.
2018-12-06 10:08:50 -08:00
Quincey Koziol
b9e08da165 Merge pull request #1357 in HDFFV/hdf5 from stackable_vol_fix_03 to develop
* commit '0a7c64f6e874c92cd2540af0b1fa032be0091502':
  Remove reference to h5_vol_external_log_native.
2018-12-06 11:28:40 -06:00
Quincey Koziol
0a7c64f6e8 Remove reference to h5_vol_external_log_native. 2018-12-06 11:11:28 -06:00
Allen Byrne
2998dbfc70 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'f2da47f732ded55837f6d008af46d0c448bec1f1':
  Update to new callbacks in H5VL_class_t.
2018-12-06 08:14:34 -06:00
Allen Byrne
eb1b3f42c4 HDFFV=10632 test cleanup 2018-12-06 07:54:19 -06:00
Quincey Koziol
f2da47f732 Merge pull request #1355 in HDFFV/hdf5 from stackable_vol_fix_02 to develop
* commit '592a22345517dc321c47b2df7e6d52c968fbae9b':
  Update to new callbacks in H5VL_class_t.
2018-12-05 18:47:03 -06:00
Songyu Lu
19a94503f3 HDFFV-10635: add a test case. 2018-12-05 16:48:47 -06:00
Jacob Smith
f1825f0d26 Sidestep and hide&flag minor issues causing test failures. 2018-12-05 16:39:39 -06:00
Allen Byrne
fe6a56c5cb Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'dbce6e852a508a9b5438ca0fb5278e1a10555635':
  Updates to t_filters_parallel for missing filters
2018-12-05 16:03:11 -06:00
Jordan Henderson
dbce6e852a Merge pull request #1356 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '406f7916ceaec959c0c22cdf05f45515f04a8529':
  Updates to t_filters_parallel for missing filters
2018-12-05 15:55:35 -06:00
Jordan Henderson
406f7916ce Updates to t_filters_parallel for missing filters 2018-12-05 15:23:44 -06:00
Quincey Koziol
592a223455 Update to new callbacks in H5VL_class_t. 2018-12-05 15:09:32 -06:00
Allen Byrne
307749cc71 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '55e87e5b86aacbb37c57614cd2e869541291caad': (51 commits)
  Correct Windows build.
  Refactor allocating & releasing pass through wrapper objects.
  Fix typo
  Remove duplicated comment.
  Add a couple of missing prototypes for static routines, along with updating a comment from VOL plugin -> connector.
  Switch H5VL_class_value_t from unsigned to int, and add "invalid" ID value.
  Correct "make check-vol" regression test target.
  Switch H5VL_class_value_t from enum to unsigned integer
  Add support for "make check-vol", along with a few minor cleanups, etc.
  Refactor infrastructure for setting FAPL information from environment variables during testing, including connecting native, pass-through, and dynamically loaded VOL connectors.   Also bring native and pass-through VOL connectors into alignment, removing the "H5VLnative_private.h" header.
  Remove example VOL connector, since it's been superceded by the pass-through VOL connector in the src subdirectory.
  Add pass-through VOL connector
  Update API tracing info for VOL functions and regenerate trace macros for VOL API calls.
  Added 'notify' callback for async requests; switched VOL class and info comparison to return comparison value as parameter, so they can return error values; "cancelled" -> "canceled"; switched order of 'wrap_object' and 'free_wrap_ctx' management callbacks.
  Add using FAPL from h5_fileaccess() to more tests.
  Remove unused test for unimplemented routine.
  Switch loc_params to VOL callbacks to pass struct by pointer instead of by value.
  Add info_to_str and str_to_info "management" callbacks for serializing and deserializing a connector's info object.
  Revert some of the changes to support the original property list value of metadata read attempts.
  Add VOL connector info to the flie access property list returned from H5Fget_access_plist().  Also, other misc. cleanups, etc.
  ...
2018-12-05 14:25:58 -06:00
Quincey Koziol
55e87e5b86 Merge pull request #1353 in HDFFV/hdf5 from stackable_vol_fix_01 to develop
* commit 'e395d1ed7c76ab224a862c396020758097681cad':
  Correct Windows build.
2018-12-05 14:09:05 -06:00
Quincey Koziol
e395d1ed7c Correct Windows build. 2018-12-05 13:33:08 -06:00
Quincey Koziol
14f463593b Merge pull request #1347 in HDFFV/hdf5 from stackable_vol to develop
* commit 'c58d84e721ef9fbda63abc834767a28dc978d121': (50 commits)
  Refactor allocating & releasing pass through wrapper objects.
  Fix typo
  Remove duplicated comment.
  Add a couple of missing prototypes for static routines, along with updating a comment from VOL plugin -> connector.
  Switch H5VL_class_value_t from unsigned to int, and add "invalid" ID value.
  Correct "make check-vol" regression test target.
  Switch H5VL_class_value_t from enum to unsigned integer
  Add support for "make check-vol", along with a few minor cleanups, etc.
  Refactor infrastructure for setting FAPL information from environment variables during testing, including connecting native, pass-through, and dynamically loaded VOL connectors.   Also bring native and pass-through VOL connectors into alignment, removing the "H5VLnative_private.h" header.
  Remove example VOL connector, since it's been superceded by the pass-through VOL connector in the src subdirectory.
  Add pass-through VOL connector
  Update API tracing info for VOL functions and regenerate trace macros for VOL API calls.
  Added 'notify' callback for async requests; switched VOL class and info comparison to return comparison value as parameter, so they can return error values; "cancelled" -> "canceled"; switched order of 'wrap_object' and 'free_wrap_ctx' management callbacks.
  Add using FAPL from h5_fileaccess() to more tests.
  Remove unused test for unimplemented routine.
  Switch loc_params to VOL callbacks to pass struct by pointer instead of by value.
  Add info_to_str and str_to_info "management" callbacks for serializing and deserializing a connector's info object.
  Revert some of the changes to support the original property list value of metadata read attempts.
  Add VOL connector info to the flie access property list returned from H5Fget_access_plist().  Also, other misc. cleanups, etc.
  Switch tool error output to match VOL changes within library
  ...
2018-12-05 13:03:59 -06:00
Allen Byrne
a68fd29208 Fix special macro stdout as empty 2018-12-05 09:44:13 -06:00
Allen Byrne
081e369ade Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '2f605eaa99e1d8fc359079f93b91522c561500b0':
  updated with HDFFV-10511
2018-12-05 09:37:08 -06:00
Scot Breitenfeld
2f605eaa99 Merge pull request #1351 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '988eed8cf776c14d3e0ddac9fecc372c74e5484c':
  updated with HDFFV-10511
2018-12-05 09:03:08 -06:00
Allen Byrne
d6de299f01 Need nonexistent file to skip stdout compare 2018-12-04 23:16:03 -06:00
Scot Breitenfeld
988eed8cf7 updated with HDFFV-10511 2018-12-04 12:25:30 -06:00
Quincey Koziol
c58d84e721 Refactor allocating & releasing pass through wrapper objects. 2018-12-03 13:11:17 -06:00
Allen Byrne
e3e24a2989 HDFFV-10632 - split stderr and stdout in cmake 2018-12-03 09:35:59 -06:00
Vailin Choi
49f45640f6 (1) Fix for accumulator issue #1 as described in John's previous checkin
(2) Test files for encoding/decoding property lists
(3) Fix test failures for PB statistics in test/page_buffer.c
    (Will double check with John later about PB statistics collection)
2018-12-02 00:17:15 -06:00
Quincey Koziol
81d67d5fdc Fix typo 2018-11-30 15:00:38 -06:00
Quincey Koziol
50c4095c8c Remove duplicated comment. 2018-11-30 14:18:14 -06:00
Quincey Koziol
047269139f Add a couple of missing prototypes for static routines, along with updating
a comment from VOL plugin -> connector.
2018-11-30 14:12:32 -06:00
Songyu Lu
a89130553d HDFFV-10635: Allowing to write the same variable-length element more than once. 2018-11-30 09:02:03 -06:00
Quincey Koziol
beb7428f68 Switch H5VL_class_value_t from unsigned to int, and add "invalid" ID value. 2018-11-29 08:26:25 -06:00
Quincey Koziol
8c606f586e Correct "make check-vol" regression test target. 2018-11-28 22:54:46 -06:00
Quincey Koziol
f3ad03a538 Switch H5VL_class_value_t from enum to unsigned integer 2018-11-28 22:21:45 -06:00
Quincey Koziol
d442fe2d98 Add support for "make check-vol", along with a few minor cleanups, etc. 2018-11-28 19:07:30 -06:00
Quincey Koziol
6eabeabdaa Refactor infrastructure for setting FAPL information from environment
variables during testing, including connecting native, pass-through, and
dynamically loaded VOL connectors.   Also bring native and pass-through
VOL connectors into alignment, removing the "H5VLnative_private.h" header.
2018-11-28 17:38:03 -06:00
Quincey Koziol
3abf58dce0 Remove example VOL connector, since it's been superceded by the pass-through
VOL connector in the src subdirectory.
2018-11-28 10:38:52 -06:00
Quincey Koziol
238a207f2d Add pass-through VOL connector 2018-11-28 10:26:03 -06:00
Quincey Koziol
2db4b6df13 Update API tracing info for VOL functions and regenerate trace macros for VOL
API calls.
2018-11-28 10:22:29 -06:00
Quincey Koziol
bf79e1bd76 Added 'notify' callback for async requests; switched VOL class and info
comparison to return comparison value as parameter, so they can return error
values; "cancelled" -> "canceled"; switched order of 'wrap_object' and
'free_wrap_ctx' management callbacks.
2018-11-27 22:15:34 -06:00
Quincey Koziol
3c5706ff5b Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-27 18:51:57 -06:00
Dana Robinson
86c4e7ac0f Merge pull request #1345 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:openmpi_tweaks to develop
* commit '6fccabed2e8b522747ee8056a196273917af78c7':
  Missed some function renames in error text.
2018-11-27 15:05:03 -06:00
Ray Lu
041a8295ff Merge pull request #1344 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10607-patches-for-warnings-in-the-core to develop
* commit '14de476c8cb1b797ad43bea3c71dfb32bcd2131c':
  HDFFV-10607 Fixing two compiler warnings in the library.
2018-11-27 14:59:43 -06:00
Dana Robinson
6fccabed2e Missed some function renames in error text. 2018-11-27 11:50:35 -08:00
Dana Robinson
3db8d69424 Merge pull request #1343 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:openmpi_tweaks to develop
* commit '8cf3bfb14bd2a80f13d269a9e84cd99f86f19254':
  Yanked all MPI-1 calls
  Updated H5S to use the MPI-2 function MPI_Type_get_exten() where available. OpenMPI 4.0 removed the deprecated MPI-1 MPI_type_extent() call by default, so this avoids needing a special OpenMPI build.
2018-11-27 13:08:54 -06:00
Dana Robinson
8cf3bfb14b Yanked all MPI-1 calls 2018-11-27 10:31:54 -08:00
Dana Robinson
bd820f7861 Merge branch 'develop' into openmpi_tweaks 2018-11-27 09:39:23 -08:00
Dana Robinson
b087f675e2 Merge pull request #1341 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'd517bdf9d36f423e7abad34e109b6ce694fd03c8':
  Pulled the RELEASE.txt note concerning HDFFV-10633 since that change was pushed to hdf5_1_10 in case we release the Windows VFD in 1.10.5.
2018-11-27 11:38:29 -06:00
Songyu Lu
14de476c8c HDFFV-10607 Fixing two compiler warnings in the library. 2018-11-27 09:04:42 -06:00
Dana Robinson
38c202df4d Updated H5S to use the MPI-2 function MPI_Type_get_exten()
where available. OpenMPI 4.0 removed the deprecated MPI-1
MPI_type_extent() call by default, so this avoids needing
a special OpenMPI build.
2018-11-26 22:10:06 -08:00
Dana Robinson
d517bdf9d3 Pulled the RELEASE.txt note concerning HDFFV-10633 since that
change was pushed to hdf5_1_10 in case we release the Windows VFD
in 1.10.5.
2018-11-24 11:56:28 -08:00
Quincey Koziol
3217ffa1ac Add using FAPL from h5_fileaccess() to more tests. 2018-11-22 01:21:50 -06:00
Quincey Koziol
340b7a4fb8 Remove unused test for unimplemented routine. 2018-11-22 01:08:47 -06:00
Quincey Koziol
f9b625ef5d Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-21 23:13:04 -06:00
Quincey Koziol
3055e499d5 Switch loc_params to VOL callbacks to pass struct by pointer instead of by
value.
2018-11-21 23:12:24 -06:00
Larry Knox
9c7161e105 Merge pull request #1334 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '7bf6e98bd921c4ef1899144ab8a1f0d66a141141':
  Move wait_H5init.cmake up to config/cmake.
  Changes to CMake code to pause cmake/ctest, waiting for batch jobs to run and finish.
  Really don't run parallel tests without option specifying script.
  Add script and changes to wait for H5Tinit.c Add more sample batch scripts, specifically for sbatch, not for knl cross compile. Don't run parallel tests when no parallel test script is configured in HDF5options.cmake.
2018-11-21 09:55:08 -06:00
Quincey Koziol
8939a2190f Add info_to_str and str_to_info "management" callbacks for serializing and
deserializing a connector's info object.
2018-11-21 00:56:13 -06:00
Larry Knox
7bf6e98bd9 Move wait_H5init.cmake up to config/cmake. 2018-11-20 12:09:14 -06:00
Larry Knox
8544aae3e8 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2018-11-20 11:58:27 -06:00
Larry Knox
720bbdfe61 Changes to CMake code to pause cmake/ctest, waiting for batch jobs to
run and finish.
2018-11-20 11:03:58 -06:00
Larry Knox
5a90dd3cae Merge pull request #1338 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '3dc4055aaf2c0917569cba38d47df051cc0eeb79':
  Fix typo
  Standardize script
  add max count to options file
  Check PARALLEL_LEVEL maximum
2018-11-20 06:54:11 -06:00
Quincey Koziol
23ff0240ae Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-19 21:09:28 -06:00
Ray Lu
160107a97c Merge pull request #1335 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10571-cve-2018-17237-divided-by-zero to develop
* commit 'c923cdad6e515c842f3795a5b6d754ad94021e09':
  HDFFV-10571: Minor format changes.
  HDFFV-10571: Minor change - reformatting the error check.
  HDFFV-10571: Minor change - adding the error check right after decoding of chunk dimension for safeguard.
  HDFFV-10571: Minor change - revised the comment to be clearer.
  HDFFV-10571 Divided by Zero vulnerability.  Minor fix: I added an error check to make sure the chunk size is not zero.
2018-11-19 17:20:06 -06:00
Jacob Smith
1fed1a7be7 Incorporate minimized dset ohdr tests into extant suite. 2018-11-19 14:08:31 -06:00
Allen Byrne
3dc4055aaf Fix typo 2018-11-19 11:41:11 -06:00
Allen Byrne
4bc283a0f2 Standardize script 2018-11-19 11:03:42 -06:00
Allen Byrne
d9fbacff90 add max count to options file 2018-11-19 11:02:20 -06:00
Allen Byrne
a26aedce04 Check PARALLEL_LEVEL maximum 2018-11-19 10:03:18 -06:00
mainzer
8cb185cb08 Merge branch 'feature/vfd_swmr' of https://bitbucket.hdfgroup.org/scm/~vchoi/my_hdf5_fork into feature/vfd_swmr
This merge necessary to access Vailin's latest bug fixes and updates
to the existing SWMR test code.
2018-11-19 02:07:42 -06:00
mainzer
2f2cf050e6 local commit of first cut at vfd swmr writer EOT code.
This is necessary to allow access to Vailin's recent changes

This version passes non-swmr tests in a serial / debug build on charis.
2018-11-19 02:05:37 -06:00
Quincey Koziol
6c99961bb2 Revert some of the changes to support the original property list value of
metadata read attempts.
2018-11-18 00:57:09 -06:00
Quincey Koziol
d0d360ff2d Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-18 00:39:27 -06:00
Quincey Koziol
59c28780d3 Add VOL connector info to the flie access property list returned from
H5Fget_access_plist().  Also, other misc. cleanups, etc.
2018-11-18 00:38:29 -06:00
Ray Lu
e9125d6a99 Merge pull request #1337 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10601-issues-with-chunk-cache-hash2 to develop
* commit '4f5a52e595194562644517b7600f3b96d4008c17':
  HDFFV-10601: Adding the new hdf5/tools/test/perform/chunk_cache.c to MANIFEST.
  HDFFV-10601: Some compiler doesn't support clock_gettime().  So I changed to use gettimeofday (HDgettimeofday in the HDF5 library).
2018-11-17 19:03:30 -06:00
Songyu Lu
4f5a52e595 HDFFV-10601: Adding the new hdf5/tools/test/perform/chunk_cache.c to MANIFEST. 2018-11-16 16:25:50 -06:00
Songyu Lu
d25afb294c HDFFV-10601: Some compiler doesn't support clock_gettime(). So I changed to use gettimeofday (HDgettimeofday in the HDF5 library). 2018-11-16 12:06:30 -06:00
Songyu Lu
c923cdad6e HDFFV-10571: Minor format changes. 2018-11-15 16:50:13 -06:00
Songyu Lu
198bc059b0 HDFFV-10571: Minor change - reformatting the error check. 2018-11-15 15:05:23 -06:00
Songyu Lu
c132cb5565 HDFFV-10571: Minor change - adding the error check right after decoding of chunk dimension for safeguard. 2018-11-15 14:57:26 -06:00
Ray Lu
e07d097da1 Merge pull request #1316 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10601-issues-with-chunk-cache-hash to develop
* commit 'cd13d24e5140578a880aebe4e2d8b899179d0870':
  HDFFV-10601: I added error checking to the HDF5 functions.
  HDFFV10601: Adding performance test to verify the improvement.
  HDFFV-10601: I changed to a better way to calculate the number of chunks in a dataset.
  HDFFV-10601 Issues with chunk cache hash value calcuation:
2018-11-15 09:43:46 -06:00
Scot Breitenfeld
73f881a838 Merge pull request #1325 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:J10511 to develop
* commit '9bbaca66ca1f987ede2f5c7e9c5938523a47262f':
  fixed sp.
  HDFFV-10511 -- Make fortran specific subroutines names PRIVATE
2018-11-15 09:27:16 -06:00
Songyu Lu
cd13d24e51 HDFFV-10601: I added error checking to the HDF5 functions. 2018-11-14 17:30:23 -06:00
Dana Robinson
e890eb89d2 Merge pull request #1336 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:sec2_to_posix to develop
* commit '3edd97731e90b7fc3a378e2c6e9c043a23327d93':
  Renamed h5repart's -family_to_sec2 to -family_to_single.
2018-11-14 16:21:08 -06:00
Dana Robinson
3edd97731e Renamed h5repart's -family_to_sec2 to -family_to_single. 2018-11-14 13:37:31 -08:00
Vailin Choi
ce2748f011 (A) Fixes for the assertion failures described in issue #2 (see John Mainzer's last checkin message):
--src/H5PB.c: checks for size >= page size
--src/H5MF.c: disable/enable page buffering in H5MF_tidy_self_referential_fsm_hack()
--src/H5MFsection.c: call H5PB_remove_entry() for both raw/metadata pages in H5MF__sect_small_merge()
(B) Port and modify existing concurrent swmr tests to VFD SWMR. Also modify the following:
--remove flushes from VFD SWMR writer tests
--set Nreaders to 0 in test/testvfdswmr.sh.in to test for writers only
Please enter the commit message for your changes. Lines starting
2018-11-14 15:35:35 -06:00
Songyu Lu
1d89a55590 HDFFV-10571: Minor change - revised the comment to be clearer. 2018-11-14 14:54:03 -06:00
Songyu Lu
78af4c21cb HDFFV-10571 Divided by Zero vulnerability. Minor fix: I added an error check to make sure the chunk size is not zero. 2018-11-14 14:31:37 -06:00
Larry Knox
9620069142 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2018-11-14 11:37:49 -06:00
Larry Knox
38f7e3c86b Really don't run parallel tests without option specifying script. 2018-11-14 11:35:36 -06:00
Larry Knox
6cbd463d41 Add script and changes to wait for H5Tinit.c
Add more sample batch scripts, specifically for sbatch, not for knl
cross compile.
Don't run parallel tests when no parallel test script is configured in
HDF5options.cmake.
2018-11-14 11:19:28 -06:00
Dana Robinson
ca1788e082 Merge pull request #1332 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:java_test_error_stack to develop
* commit '110c1b671ea7f2f5e8154d66f6ca6fcfb00b2bb2':
  The Java tests will no longer fail when the zlib is not present.
2018-11-13 16:38:43 -06:00
Songyu Lu
2fe10c647c HDFFV10601: Adding performance test to verify the improvement. 2018-11-13 11:37:29 -06:00
Dana Robinson
110c1b671e The Java tests will no longer fail when the zlib is not present. 2018-11-13 07:45:56 -08:00
Quincey Koziol
e2ed2edf6e Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-12 16:23:54 -06:00
Dana Robinson
f515574dcf Merge pull request #1331 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:java_test_error_stack to develop
* commit 'ef29549f0d66612fcdeefc763785c6826c67ad8b':
  Updated the Java tests so that they don't fail when the error stack changes.
2018-11-12 16:05:16 -06:00
Dana Robinson
ef29549f0d Updated the Java tests so that they don't fail when the
error stack changes.
2018-11-12 13:31:10 -08:00
Allen Byrne
c2ceeb02b6 Merge pull request #1327 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '7e204759f861f4f482db2032127a4dc406fcd1d6':
  Fix generate file commands
  Fix target depends
  Fix target files for commands
2018-11-12 13:45:05 -06:00
Allen Byrne
7e204759f8 Fix generate file commands 2018-11-12 12:26:11 -06:00
Quincey Koziol
17f9cb4158 Switch tool error output to match VOL changes within library 2018-11-12 12:14:25 -06:00
Quincey Koziol
a442ce607b Fix a few error messages 2018-11-12 12:13:18 -06:00
Allen Byrne
ba609275d8 Fix target depends 2018-11-12 11:52:46 -06:00
Allen Byrne
fde902cb45 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '6a2e97bead3c4d366f28b6a1e4e338fc07014954':
  HDFFV-10537: Remove installation of Fortran test mod files
2018-11-12 08:55:11 -06:00
Quincey Koziol
1118672e8c Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-10 11:54:58 -06:00
Quincey Koziol
ca1b9025fe Switch switch remainder of API routines to use VOL callbacks. 2018-11-10 11:54:20 -06:00
Scot Breitenfeld
6a2e97bead Merge pull request #1329 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:J10537 to develop
* commit 'cd73b837db95493de0641b2c63537b42b8b57a84':
  HDFFV-10537: Remove installation of Fortran test mod files
2018-11-09 16:51:24 -06:00
M. Scot Breitenfeld
cd73b837db HDFFV-10537: Remove installation of Fortran test mod files
Removed from autools install, cmake does not have this issue.
2018-11-09 16:00:34 -06:00
Allen Byrne
6b959b1e21 Fix target files for commands 2018-11-09 14:38:11 -06:00
Allen Byrne
6e74d2f2ed Merge pull request #1324 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '1d2f7ca4901d126d677a32ecb4e2bc60b3b41182':
  TRILAB-36 only copy shared generated
2018-11-09 14:05:59 -06:00
M. Scot Breitenfeld
9bbaca66ca fixed sp. 2018-11-09 11:29:24 -06:00
M. Scot Breitenfeld
4fbd6bb8a5 HDFFV-10511 -- Make fortran specific subroutines names PRIVATE
Made non-public APIs private.
2018-11-09 11:24:42 -06:00
Allen Byrne
1d2f7ca490 TRILAB-36 only copy shared generated 2018-11-09 11:20:48 -06:00
Songyu Lu
3a13bb72e8 HDFFV-10601: I changed to a better way to calculate the number of chunks in a dataset. 2018-11-08 15:41:49 -06:00
Songyu Lu
709704528c Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~songyulu/hdf5_ray into bugfix/HDFFV-10601-issues-with-chunk-cache-hash 2018-11-08 10:16:47 -06:00
Quincey Koziol
140f72b748 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-07 15:20:28 -06:00
Allen Byrne
40338b9e40 Merge pull request #1298 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '4616c1e863ab756d22af696672ba9bc2fe0eea25':
  Add custom target to force wait on generated file
  TRILAB-81 fix typo
  TRILAB-82 fixed errors found in review
  Update windows test machine info
  TRILAB-81 Output error if filename length is greater then 255
  TRILAB-81 check for func success before using value
  TRILAB-81 Coverity fix
  Move options to root CMakeLists.txt
  TRILAB-34 fix required through testing
  TRILAB-34 add batch option (also patch2 from 10633)
  TRILAB-81 coverity fixes
2018-11-07 10:02:49 -06:00
Allen Byrne
4616c1e863 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '1652a60fcbe9894d7c34a778fb24dce1979fb9a9':
  HDFFV-10605 Only test plugins if SHARED enabled
  Correct platforms
  Correct extlib depends
  Commit version changes for additional files for 1.11.3 snapshot release.
2018-11-06 16:01:35 -06:00
Allen Byrne
1652a60fcb Merge pull request #1319 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '81cb24ac1db0f4936b19067cdb7fa4e14e0d00db':
  Commit version changes for additional files for 1.11.3 snapshot release.
2018-11-06 16:01:16 -06:00
Allen Byrne
0f4f4cf5dd Merge pull request #1320 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '79903575e64e1e8f46ce27e6212d5d5939a8a900':
  HDFFV-10605 Only test plugins if SHARED enabled
  Correct platforms
  Correct extlib depends
2018-11-06 15:47:10 -06:00
Allen Byrne
79903575e6 HDFFV-10605 Only test plugins if SHARED enabled 2018-11-06 15:45:58 -06:00
Allen Byrne
c77d044dd0 Correct platforms 2018-11-06 15:30:15 -06:00
Allen Byrne
b9b89705c3 Correct extlib depends 2018-11-06 15:10:55 -06:00
Allen Byrne
7f5d91fa8f Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '9f299a6eeb91b8bc59196ccbb7067285b23e6085':
  TRILAB-36 add custom target on generated files
  Fix typo in whitespace area
2018-11-06 15:08:36 -06:00
Allen Byrne
9f299a6eeb Merge pull request #1318 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '1bd3a2885865f4745209233ea84045a22e6dce9c':
  TRILAB-36 add custom target on generated files
  Fix typo in whitespace area
2018-11-06 15:07:37 -06:00
Larry Knox
81cb24ac1d Commit version changes for additional files for 1.11.3 snapshot release. 2018-11-06 10:56:36 -06:00
Quincey Koziol
ef9ffc630a Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-06 10:44:17 -06:00
Allen Byrne
1bd3a28858 TRILAB-36 add custom target on generated files 2018-11-06 09:35:11 -06:00
Allen Byrne
a6a46fb27f Add custom target to force wait on generated file 2018-11-06 09:32:34 -06:00
Allen Byrne
e753904d0b Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'e6545faa5699aae4d5dca23ed40e3080fa9dc72d':
  Update HDF5-Examples version to be included in CMake-* tar/zip files.
  Snapshot version 1.11 release 3.
2018-11-05 16:57:51 -06:00
Allen Byrne
05419b19fc Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'e6545faa5699aae4d5dca23ed40e3080fa9dc72d':
  Update HDF5-Examples version to be included in CMake-* tar/zip files.
  Snapshot version 1.11 release 3.
2018-11-05 16:57:39 -06:00
Larry Knox
e6545faa56 Merge pull request #1317 in HDFFV/hdf5 from ~HDFTEST/hdf5_hft:develop to develop
* commit 'be0d6b206aaa04f7d9cb406a71aeeb458ba67975':
  Update HDF5-Examples version to be included in CMake-* tar/zip files.
  Snapshot version 1.11 release 3.
2018-11-05 15:49:11 -06:00
hdftest
be0d6b206a Update HDF5-Examples version to be included in CMake-* tar/zip files. 2018-11-05 12:40:04 -06:00
hdftest
db48399bd8 Snapshot version 1.11 release 3. 2018-11-05 12:21:13 -06:00
Allen Byrne
550674d28a Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '20ad15a1a8e9008103fe7d30401408eaa2aff6e5':
  Fixed exit() to HDexit() in use_append_chunk.c and use_append_mchunks.c
  Fixed fprintf to HDfprintf in the following routines: 1) read_uc_file() in use_common.c 2) main() of use_append_chunk.c and use_append_mchunks.c
  Fix for HDFFV-10554 use_append_chunks in swmr use case test failure Fix the timing issue of the test by moving the open/close of the test file for the writer to use_append_chunk.c and use_append_mchunks.c.
2018-11-05 09:09:26 -06:00
Allen Byrne
9e0eb2fdca Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '20ad15a1a8e9008103fe7d30401408eaa2aff6e5':
  Fixed exit() to HDexit() in use_append_chunk.c and use_append_mchunks.c
  Fixed fprintf to HDfprintf in the following routines: 1) read_uc_file() in use_common.c 2) main() of use_append_chunk.c and use_append_mchunks.c
  Fix for HDFFV-10554 use_append_chunks in swmr use case test failure Fix the timing issue of the test by moving the open/close of the test file for the writer to use_append_chunk.c and use_append_mchunks.c.
2018-11-05 09:09:09 -06:00
mainzer
e62f4bd4fa Initial checkin of page buffer re-implementation to support VFD SWMR.
Tested serial / debug on Charis and Jelly.

Two known issues:

1) New page buffer seems to expose issues in the accumulator code.

   For whatever reason, fheap with the new page buffer exposes corruption
   issues if the page buffer uses H5F__accum_read/write(), but the problems
   go away if the page buffers uses H5FD_read/write() instead.

   Need to either chase this or dis-able page bufffer in combination with
   the accumulator.

2) Encountered a number of assertion failures that are explainable by the
   free space manager code not telling the page buffer to discard pages
   when they are freed.

   Wrote code to handle this -- once the free space manager is modified,
   this code should be removed and the original assertions restored.
2018-11-04 17:54:01 -06:00
Quincey Koziol
afd54bbe5c Remove most debugging shims & scaffolding. 2018-11-04 02:09:27 -06:00
Quincey Koziol
1daa7b830a Switch driver | plugin => connector. 2018-11-04 01:27:23 -05:00
Quincey Koziol
deb75622ca Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-04 00:25:36 -05:00
Quincey Koziol
df7cf2a9d3 Refactor, standardize, and revise the async request callbacks. 2018-11-04 00:05:08 -05:00
Songyu Lu
6fa26d7e49 HDFFV-10601 Issues with chunk cache hash value calcuation:
1. H5D__chunk_hash_val: When the number of chunks in the fastest changing dimension is larger than the number of slots in the hash table, H5D__chunk_hash_val abandons the normal hash value calculation algorithm and simply uses the scaled dimension.  This will cause chunks a selection that cuts across chunks in dimensions other than the fastest changing to all have the same hash value, and they will therefore always evict each other from the cache, having an obvious major performance impact. Eliminated the check  for the number of slots in this function and always use the full algorithm.

2. H5D__chunk_init: When the scaled dimensions (number of chunks in each dimension) are calculated in H5D__chunk_init, a simple divide ("/") operator is used with the dataset size in elements and the chunk size in elements. While this is fine when the dataset size is an exact multiple of the chunk size, in other cases, since "/" rounds down, it results in a scaled dimension one less than it should (it ignores the partial edge chunk). This has trickle down effects on hash value calculation that can cause excess hash value collisions and therefore performance issues. Changed the calculation to (((dataset_size - 1) / chunk_size) + 1).

Tested the build with Autotool and CMake.
2018-11-02 14:53:35 -05:00
Quincey Koziol
4806d29d9f Refactor and standardize named datatype VOL callbacks. 2018-11-01 17:02:27 -05:00
Vailin Choi
20ad15a1a8 Merge pull request #1314 in HDFFV/hdf5 from ~VCHOI/my_hdf5_fork:develop to develop
* commit '51076d40617aa6f0236809c2c919cc6921b3bbc1':
  Fixed exit() to HDexit() in use_append_chunk.c and use_append_mchunks.c
  Fixed fprintf to HDfprintf in the following routines: 1) read_uc_file() in use_common.c 2) main() of use_append_chunk.c and use_append_mchunks.c
  Fix for HDFFV-10554 use_append_chunks in swmr use case test failure Fix the timing issue of the test by moving the open/close of the test file for the writer to use_append_chunk.c and use_append_mchunks.c.
2018-11-01 16:12:07 -05:00
Vailin Choi
51076d4061 Fixed exit() to HDexit() in use_append_chunk.c and use_append_mchunks.c 2018-11-01 15:00:40 -05:00
Quincey Koziol
1b00d04080 Refactor and standardize object VOL callbacks. 2018-11-01 14:54:44 -05:00
Vailin Choi
4f62c084f1 Fixed fprintf to HDfprintf in the following routines:
1) read_uc_file() in use_common.c
2) main() of use_append_chunk.c and use_append_mchunks.c
2018-11-01 12:03:34 -05:00
Quincey Koziol
a5cc4e272b Refactor and standardize the link VOL callbacks. Also fix error stack for
testing.
2018-11-01 11:22:54 -05:00
Allen Byrne
2c266f2cb6 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '3fcc1e7929d99272cf3d29883de78b1ad544ea38':
  A trivial change to reformat a comment.  The purpose is simply to try out Git.
2018-11-01 08:40:53 -05:00
Allen Byrne
0e1c2d1c9e Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '3fcc1e7929d99272cf3d29883de78b1ad544ea38':
  A trivial change to reformat a comment.  The purpose is simply to try out Git.
2018-11-01 08:40:38 -05:00
Quincey Koziol
a39486a341 Refactor and standardize group VOL callbacks. 2018-10-31 19:17:37 -05:00
Quincey Koziol
ef7c458d73 Update for change in error stack when opening a dataset. 2018-10-31 18:41:19 -05:00
Quincey Koziol
d66d5e01c0 Refactor and standarize file object callbacks, including some fixes on the
dataset callbacks.
2018-10-31 18:18:45 -05:00
Ray Lu
3fcc1e7929 Merge pull request #1315 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/ray_test to develop
* commit 'b72e926ed0c981d14d5219b32042c3d0b938d1e1':
  A trivial change to reformat a comment.  The purpose is simply to try out Git.
2018-10-31 10:43:22 -05:00
Songyu Lu
b72e926ed0 A trivial change to reformat a comment. The purpose is simply to try out Git. 2018-10-31 09:54:08 -05:00
Allen Byrne
3042976b65 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '99c1e577da3a2dd45fbfee748220986c42962921':
  Removed a couple of extraneous commas from VOL example.
  Cleaned up VOL example.
  Updated MANIFEST file.
  Fixed VOL example to use a platform-independent format specifier for size_t.
2018-10-31 08:49:58 -05:00
Allen Byrne
a5e33551d7 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '99c1e577da3a2dd45fbfee748220986c42962921':
  Removed a couple of extraneous commas from VOL example.
  Cleaned up VOL example.
  Updated MANIFEST file.
  Fixed VOL example to use a platform-independent format specifier for size_t.
2018-10-31 08:49:45 -05:00
Dana Robinson
99c1e577da Merge pull request #1313 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_tweaks to develop
* commit 'ee12aff2ca89e92b99590f29096794a84c6bacdc':
  Removed a couple of extraneous commas from VOL example.
  Cleaned up VOL example.
  Updated MANIFEST file.
  Fixed VOL example to use a platform-independent format specifier for size_t.
2018-10-30 18:54:05 -05:00
Vailin Choi
d1d2cf776d Fix for HDFFV-10554 use_append_chunks in swmr use case test failure
Fix the timing issue of the test by moving the open/close of the test file for the writer to
use_append_chunk.c and use_append_mchunks.c.
2018-10-30 16:53:09 -05:00
Dana Robinson
ee12aff2ca Removed a couple of extraneous commas from VOL example. 2018-10-30 14:44:54 -07:00
Dana Robinson
7a5e632c0d Cleaned up VOL example. 2018-10-30 10:32:17 -07:00
Allen Byrne
98353c18bd Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '3145690c9590778b857def090489c6d890e42a5b':
  Add script to run tests with sbatch when not cross compiling. Add new files to MANIFEST.
2018-10-30 12:03:50 -05:00
Allen Byrne
b2147800a8 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '3145690c9590778b857def090489c6d890e42a5b':
  Add script to run tests with sbatch when not cross compiling. Add new files to MANIFEST.
2018-10-30 12:03:39 -05:00
Dana Robinson
ab9e964c3e Updated MANIFEST file. 2018-10-30 09:53:20 -07:00
Dana Robinson
12e929e1ec Fixed VOL example to use a platform-independent format
specifier for size_t.
2018-10-29 16:06:22 -07:00
Quincey Koziol
4c6d8d376c Remove erroneous call. 2018-10-29 17:26:33 -05:00
Quincey Koziol
8c37f531a9 Switch to using VOL callbacks, instead of direct calls to internal routines. 2018-10-29 17:24:33 -05:00
Larry Knox
3145690c95 Merge pull request #1312 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '41faaf271ca1de929c1e12ae13c40fc67a53edff':
  Add script to run tests with sbatch when not cross compiling. Add new files to MANIFEST.
2018-10-29 17:11:15 -05:00
Quincey Koziol
aaaf1acc08 Add ref counter to VOL object wrapping in API contexts, so that re-entrant /
recursive routines work correctly.  Another minor cleanup in the attribute code.
2018-10-29 16:52:00 -05:00
Vailin Choi
d4d7687ad1 1) Add concurrent test for VFD SWMR reader
2) Bug fixes in H5FDvfd_swmr.c
2018-10-29 16:46:39 -05:00
Allen Byrne
89bd227aeb Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'ff34cd0a0506ca16f4971cf03bd1b6e33bfa132c':
  Updated RELEASE.txt to reflect HDFFV-10609 work (H5Xpkg.h files being incorrectly installed).
  Add files and changes to cross compile with CrayLinuxEnvironment and run ctest tests with a batch job on knl compute nodes.
2018-10-29 16:44:09 -05:00
Larry Knox
41faaf271c Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2018-10-29 16:18:27 -05:00
Larry Knox
f031cc7b7a Add script to run tests with sbatch when not cross compiling.
Add new files to MANIFEST.
2018-10-29 16:17:10 -05:00
Allen Byrne
ae0f4a23c0 Fix typo in whitespace area 2018-10-29 15:52:39 -05:00
Dana Robinson
ff34cd0a05 Merge pull request #1311 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:cmake_tweaks to develop
* commit 'c9273522e9a7e946802d8545b2532f9129b459a9':
  Updated RELEASE.txt to reflect HDFFV-10609 work (H5Xpkg.h files being incorrectly installed).
2018-10-29 15:35:55 -05:00
Dana Robinson
c9273522e9 Updated RELEASE.txt to reflect HDFFV-10609 work (H5Xpkg.h files
being incorrectly installed).
2018-10-29 12:59:25 -07:00
Larry Knox
81c0357645 Merge pull request #1309 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'b24259ed8cdb273273f82c2b3f3a2dcac60b32ba':
  Add files and changes to cross compile with CrayLinuxEnvironment and run ctest tests with a batch job on knl compute nodes.
2018-10-29 14:57:00 -05:00
Larry Knox
b24259ed8c Add files and changes to cross compile with CrayLinuxEnvironment and run
ctest tests with a batch job on knl compute nodes.
2018-10-29 14:24:08 -05:00
Quincey Koziol
ca5ff0c0c2 Convert dataset callbacks to standard form, for wrapping object IDs, etc.
Also, fix a few attribute issues that I missed.
2018-10-29 13:15:56 -05:00
Allen Byrne
2c48f6bd00 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '7db3ea76da5d3b5c237a707b09d1618d3206ba83':
  Makes the installed header files the same between the autotools and CMake.
2018-10-29 11:10:27 -05:00
Dana Robinson
7db3ea76da Merge pull request #1305 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:cmake_tweaks to develop
* commit '62b92ddf4096d9b8f6235587ec16f34f6c6fa119':
  Makes the installed header files the same between the autotools and CMake.
2018-10-29 09:16:23 -05:00
Quincey Koziol
8fd2e1d36e Convert attribute VOL callbacks to a standard form that sets up the wrapper
object info in a single place.
2018-10-28 20:51:16 -05:00
Quincey Koziol
ad92351809 Clean up va_list properly on error. 2018-10-28 02:03:08 -05:00
Quincey Koziol
58202337dd Minor coding style cleanups 2018-10-28 02:02:45 -05:00
Quincey Koziol
8ee361f185 Move all callback-related routines into the callback source file, standardizing
their coding style
2018-10-28 01:31:28 -05:00
Quincey Koziol
50dd616eb5 Correct error with parsing of "FUNC_ENTER_API_NOINIT" 2018-10-27 17:38:32 -05:00
Quincey Koziol
9bc6644ed1 Duplicate name of VOL plugin class, to avoid continuing to refer to the caller's
string when making a copy of the class for internal use.
2018-10-27 16:15:39 -05:00
Quincey Koziol
fb6ecf33b0 Fix names of VOL API routines. 2018-10-27 02:43:40 -05:00
Quincey Koziol
9c7b96b42f Move (final?) file operation from directly calling into library code to using
the file_optional VOL callback.
2018-10-27 02:21:48 -05:00
Quincey Koziol
43ffc1deb5 Remove some VOL-specific internal coding. 2018-10-27 02:06:43 -05:00
Quincey Koziol
83e03772eb Add VOL object wrapping to API context when refreshing groups, named datatypes
and objects.
2018-10-27 01:55:31 -05:00
Quincey Koziol
6e84fd8327 Remove virtual dataset refresh code's direct use of native VOL plugin's ID. 2018-10-27 01:33:07 -05:00
Dana Robinson
b29101c971 Merge branch 'develop' into cmake_tweaks 2018-10-26 20:49:07 -07:00
Dana Robinson
62b92ddf40 Makes the installed header files the same between the autotools
and CMake.

* CMake will no longer install private generated headers and tools
  library headers.
* Several empty public header files (which represent internal packages)
  were removed. These were only installed by CMake.
* Autotools installs will install H5FDwindows.h.

Fixes HDFFV-10614.
2018-10-26 20:44:29 -07:00
Quincey Koziol
ce3d1ec9ea Eliminate last call to H5VL_native_register, shifting everything over to
the VOL plugin wrapping code.
2018-10-26 17:27:10 -05:00
Quincey Koziol
171deaa588 Checkpoint progress on stacking VOL plugins - all standalone regression tests
in the 'test' directory appear to be working.
2018-10-26 16:09:06 -05:00
Quincey Koziol
305997501d Updates after merging changes from develop. 2018-10-26 00:54:29 -05:00
Quincey Koziol
4a32895724 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-10-25 18:32:13 -05:00
Quincey Koziol
0df6e44a6e Squashed commit of private branch changes to support stackable VOL plugins.
modified:   test/dsets.c
2018-10-24 23:52:47 -05:00
Allen Byrne
29afe82e79 TRILAB-81 fix typo 2018-10-24 15:39:09 -05:00
Allen Byrne
ee54368066 TRILAB-82 fixed errors found in review 2018-10-24 14:55:16 -05:00
Allen Byrne
f8b5d40c76 Update windows test machine info 2018-10-23 10:15:03 -05:00
Allen Byrne
1d06bbe523 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '47f30b474bdc498c20bd6d2a0ba7e8947ab389f0':
  HDFFV-10608 Move toolchain files into a subfolder
  TRILAB-36 add option for test script batch command
  Fixed warnings in the VOL example and run it from the script.
  Split H5VLnative.h into public and private files and updated
2018-10-23 09:32:00 -05:00
Allen Byrne
47f30b474b Merge pull request #1301 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '096279caf76a542306b840fb90e1e753e8bbf748':
  HDFFV-10608 Move toolchain files into a subfolder
  TRILAB-36 add option for test script batch command
2018-10-22 16:33:43 -05:00
Allen Byrne
096279caf7 HDFFV-10608 Move toolchain files into a subfolder 2018-10-22 16:08:52 -05:00
Allen Byrne
164bae2439 TRILAB-36 add option for test script batch command 2018-10-22 15:39:03 -05:00
Vailin Choi
a1bd33ad08 (1) Add tests for VFD SWMR writer
(2) Bug fixes
2018-10-22 13:43:55 -05:00
Dana Robinson
8a12b57483 Merge pull request #1300 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_tweaks to develop
* commit 'b33a2e7dfe76a2947c12462adb40c88af9c92e75':
  Fixed warnings in the VOL example and run it from the script.
  Split H5VLnative.h into public and private files and updated
2018-10-22 10:59:07 -05:00
Dana Robinson
b33a2e7dfe Fixed warnings in the VOL example and run it from the script. 2018-10-21 10:08:26 -07:00
Dana Robinson
46c5b059f1 Split H5VLnative.h into public and private files and updated 2018-10-20 13:06:37 -07:00
Allen Byrne
9838dba4a4 TRILAB-81 Output error if filename length is greater then 255 2018-10-19 14:53:18 -05:00
Allen Byrne
cce1727525 TRILAB-81 check for func success before using value 2018-10-19 14:45:04 -05:00
Allen Byrne
6e84657314 TRILAB-81 Coverity fix 2018-10-19 14:03:51 -05:00
Allen Byrne
e1308fc432 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5f99891e6dc59524fb6e43ca96a86df22b403c61':
  Move options to root cmake file
  EED-258 Add modules uses toolchain files
  Updates to the VOL ID and object API calls.
2018-10-19 13:49:55 -05:00
Allen Byrne
5f99891e6d Merge pull request #1299 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '494d39f1c2f6225c732cb857c860d6b475d03226':
  Move options to root cmake file
  EED-258 Add modules uses toolchain files
2018-10-19 13:49:33 -05:00
Allen Byrne
494d39f1c2 Move options to root cmake file 2018-10-19 13:34:31 -05:00
Allen Byrne
cd7a896ee4 Move options to root CMakeLists.txt 2018-10-19 13:33:12 -05:00
Dana Robinson
4e575a0865 Merge pull request #1297 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '2d6d5cad0cc426cd53b9d4fda15e53d8021e4c7b':
  Updates to the VOL ID and object API calls.
2018-10-18 16:05:40 -05:00
Allen Byrne
7e00924d1b EED-258 Add modules uses toolchain files 2018-10-18 14:44:27 -05:00
Allen Byrne
e3e0289d43 TRILAB-34 fix required through testing 2018-10-17 11:06:45 -05:00
Allen Byrne
e769ee8b5d TRILAB-34 add batch option (also patch2 from 10633) 2018-10-17 11:01:01 -05:00
Allen Byrne
633b7f93ce TRILAB-81 coverity fixes 2018-10-17 10:57:56 -05:00
Allen Byrne
a82aee9a5f Merge pull request #1292 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '2e28fad2d007841c08cdb3f06a3bd177d12ce30e':
  TRILAB-34 remove extra arg
  TRILAB-34 Add batch script config command
  TRILAB-36 Revert to target_file and correct property
  Add generated propoerty to H5lib_settings
  HDFFV-10603 patch 6
  TRILAB-34 batch command options
  Correct quote char
  Add more descriptive option name
  HDFFV-10603 fixup cmake usage
  TRILABS-34 add batch option. Also fix cmakedefine01 usage
2018-10-17 10:54:10 -05:00
Dana Robinson
2d6d5cad0c Updates to the VOL ID and object API calls.
This brings the H5VL code in line with the H5I code regarding
naming, parameter order, etc.

Several public API calls were affected by this change.

These changed names to reflect their use with VOL drivers:
    H5VLregister()          -->     H5VLregister_driver()
    H5VLregister_by_name()  -->     H5VLregister_driver_by_name()
    H5VLunregister()        -->     H5VLunregister_driver()
    H5VLis_registered()     -->     H5VLis_driver_registered()

This call was renamed to match H5Iregister(). The order of the first
two parameters also reversed and the object pointer is now const.
    H5VLobject_register()   -->     H5VLregister()
2018-10-17 02:06:28 -07:00
Allen Byrne
2e28fad2d0 TRILAB-34 remove extra arg 2018-10-16 16:46:45 -05:00
Allen Byrne
c39449fa12 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '1e8ef703cdc057211b3587be776a6e9f62e8f76f':
  Fixed a C++ style commenting issue and removed an unused field from H5F_trav_obj_ids_t.
  Fixed a memory issue in H5Drefresh() where the dataset's H5VL_object_t gets closed but we try to use it to find the driver.
2018-10-16 13:10:48 -05:00
Allen Byrne
6b65a1b78f TRILAB-34 Add batch script config command 2018-10-16 12:06:07 -05:00
Allen Byrne
77f284a175 TRILAB-36 Revert to target_file and correct property 2018-10-16 11:33:44 -05:00
Allen Byrne
db3fe90abd Add generated propoerty to H5lib_settings 2018-10-15 16:57:50 -05:00
Allen Byrne
2e4e4f38e6 HDFFV-10603 patch 6 2018-10-15 13:49:53 -05:00
Allen Byrne
689f184345 TRILAB-34 batch command options 2018-10-12 13:55:29 -05:00
Dana Robinson
1e8ef703cd Merge pull request #1294 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'b0b9eda809282f362eb0e49bebd2956ba5a11bbc':
  Fixed a C++ style commenting issue and removed an unused field from H5F_trav_obj_ids_t.
2018-10-12 13:24:08 -05:00
Dana Robinson
b0b9eda809 Fixed a C++ style commenting issue and removed an unused field
from H5F_trav_obj_ids_t.
2018-10-12 10:47:47 -07:00
Dana Robinson
bb9e268782 Merge pull request #1293 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'c3a813a37fb700d2d1039d6fdc54d8e377412b76':
  Fixed a memory issue in H5Drefresh() where the dataset's H5VL_object_t gets closed but we try to use it to find the driver.
2018-10-12 11:41:31 -05:00
Dana Robinson
c3a813a37f Fixed a memory issue in H5Drefresh() where the dataset's H5VL_object_t
gets closed but we try to use it to find the driver.
2018-10-11 15:08:02 -07:00
Allen Byrne
42c8dd66d7 Correct quote char 2018-10-11 14:34:34 -05:00
Allen Byrne
46e7e5f8f2 Add more descriptive option name 2018-10-11 12:35:53 -05:00
Allen Byrne
4659e43a6b HDFFV-10603 fixup cmake usage 2018-10-11 12:24:15 -05:00
Allen Byrne
d69b541c20 TRILABS-34 add batch option. Also fix cmakedefine01 usage 2018-10-11 11:31:09 -05:00
Dana Robinson
39b3b52a94 Merge pull request #1291 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_squash to develop
* commit 'e962df1591bc6eaee5b9e318de83b9c6698bc7b6':
  VOL FEATURE
2018-10-10 16:26:21 -05:00
Dana Robinson
e962df1591 VOL FEATURE 2018-10-10 08:10:15 -07:00
Dana Robinson
471150151d Merge pull request #1282 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5I_debug to develop
* commit '75b84b09bd249b36a063fd51ecd3383801b0118b':
  Updated the H5I debug dump to not segfault when types are not initialized or contain zero IDs in the skip list.
  The H5I debug ID dump function is now always available instead of hidden behind an H5_DEBUG_OUTPUT ifdef.
2018-10-06 22:35:29 -05:00
Dana Robinson
75b84b09bd Updated the H5I debug dump to not segfault when types are not initialized
or contain zero IDs in the skip list.
2018-10-05 22:16:51 -07:00
Dana Robinson
1b2c820b4b The H5I debug ID dump function is now always available instead
of hidden behind an H5_DEBUG_OUTPUT ifdef.
2018-10-05 21:47:51 -07:00
Allen Byrne
cd69ff0181 Merge pull request #1278 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '299852b6b565c906938ffaad5bb8e841b82118ab':
  Update examples version
  Fix typo
  Reconciled docs with 1.10 branch
  TRILABS-34 improve cross compile with emulator
  TRILABS-34 Cleanup try_run
  TRILABS-34 avoid try-run output capture
2018-10-04 17:00:35 -05:00
Allen Byrne
299852b6b5 Update examples version 2018-10-04 16:59:22 -05:00
Allen Byrne
7d5ced1d23 Fix typo 2018-10-04 16:56:44 -05:00
Allen Byrne
1fc646e52b Reconciled docs with 1.10 branch 2018-10-04 16:48:34 -05:00
Allen Byrne
4442b5b743 TRILABS-34 improve cross compile with emulator 2018-10-04 16:06:31 -05:00
Allen Byrne
a5301ee6b8 TRILABS-34 Cleanup try_run 2018-10-04 15:34:29 -05:00
Allen Byrne
9c39016e1d TRILABS-34 avoid try-run output capture 2018-10-04 14:00:49 -05:00
Allen Byrne
36594716c3 Merge pull request #1277 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '2a95ab5acbe032f58891b653f56b9db8a4938d95':
  TRILABS-21 add toolchain related info and files
  TRILABS-21 Add intel compiler support
  Fix undef for Xl compilers
  TRILAB-21 Intel flags
2018-10-04 13:04:53 -05:00
Allen Byrne
2a95ab5acb TRILABS-21 add toolchain related info and files 2018-10-04 11:40:33 -05:00
Allen Byrne
284cb8ffc0 TRILABS-21 Add intel compiler support 2018-10-04 10:42:44 -05:00
Allen Byrne
d581cbeb9e Merge pull request #1276 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '1cac34fc5bdae7f6cc265a4f94f82048642e5de7':
  Fix defines for XL compiler
2018-10-03 16:42:56 -05:00
Allen Byrne
1cac34fc5b Fix defines for XL compiler 2018-10-03 16:39:50 -05:00
Allen Byrne
c5256dcd9d Fix undef for Xl compilers 2018-10-03 16:24:46 -05:00
Allen Byrne
3209d1278f TRILAB-21 Intel flags 2018-10-02 18:13:21 -05:00
Jacob Smith
f5114fcddb Remove unnecessary H5_now() call; remove ohdr v2 mtime addition. 2018-10-02 10:50:37 -05:00
Vailin Choi
5c7ca8afff Third batch of checkin:
1) Free space manager for the metadata file
2) Delayed free space release linked list
3) H5F_update_vfd_swmr_metadata_file()
3) VFD SWMR driver: read callback
4) Flushing for VFD SWMR
5) Port one concurrent test from swmr test set
6) Bug fixes and refactoring
2018-09-28 11:29:02 -05:00
Allen Byrne
40179a9496 Merge pull request #1261 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'a2da9930af38a86387466a2021b71a2cc7484f1b':
  replace page chars
  Remove obsolete comment
2018-09-27 13:41:31 -05:00
Allen Byrne
a2da9930af replace page chars 2018-09-27 11:50:22 -05:00
Allen Byrne
8e48f6ec3a Remove obsolete comment 2018-09-27 09:58:27 -05:00
Allen Byrne
cc8538e1ed Merge pull request #1258 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'd26bb4d26ce5a23804a80c16dcb53e5f3eb957e4':
  HDFFV-10594 - mac must be space separated
  HDFFV-10594 - Add rpath configuration note
  Add extra path option for build location
  Use relative RPATH paths
2018-09-26 15:47:19 -05:00
Allen Byrne
d26bb4d26c HDFFV-10594 - mac must be space separated 2018-09-26 15:12:44 -05:00
Vailin Choi
06fa8a9455 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~vchoi/my_hdf5_fork into feature/vfd_swmr
Conflicts:
	src/H5AC.c
	src/H5F.c
	src/H5Pfapl.c
Resolve conflicts for H5AC.c, H5F.c and H5Pfapl.c
2018-09-26 12:45:07 -05:00
Allen Byrne
ebec5c6117 HDFFV-10594 - Add rpath configuration note 2018-09-26 12:25:02 -05:00
Allen Byrne
5527dbfac2 Add extra path option for build location 2018-09-26 12:05:43 -05:00
Allen Byrne
01e40b31fe Use relative RPATH paths 2018-09-26 09:40:03 -05:00
Larry Knox
ab84c029c4 Merge pull request #1257 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '532a8df687e6acff18453fec6b8fe22f4bc65ebe':
  HDFFV-10531 document option for external libs
2018-09-25 15:05:47 -05:00
Allen Byrne
532a8df687 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '8e3b094bad1706b444554cd23591fd1c4431c1f1':
  Remainder of vol_normalization changes (dataset, attribute, files, objects).
2018-09-25 09:13:50 -05:00
Dana Robinson
8e3b094bad Merge pull request #1255 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '8a4695ed590809754794864d0473d15f8c1c69e3':
  Remainder of vol_normalization changes (dataset, attribute, files, objects).
2018-09-24 18:21:48 -05:00
Dana Robinson
8a4695ed59 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '2618dc314b9e4875e6ece7ee8696846ac2d02183':
  Remove extra unneeded
  Remove libsettings from pregenerated block
  CMake changes for SKIPPED and flush tests
  Correct $withval usage in configure
  HDFFV-10332 Adjust checks and generation of files
  HDFFV-10332 Use pre-generated files
2018-09-24 17:52:56 -05:00
Allen Byrne
ed6cfe8ee6 HDFFV-10531 document option for external libs 2018-09-24 16:18:42 -05:00
Allen Byrne
2618dc314b Merge pull request #1246 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '96d5da7f1ad681573d42d2a4fd9e422fe049442d':
  Remove extra unneeded
  Remove libsettings from pregenerated block
  Correct $withval usage in configure
  HDFFV-10332 Adjust checks and generation of files
  HDFFV-10332 Use pre-generated files
2018-09-24 16:17:39 -05:00
Allen Byrne
96d5da7f1a Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'e96bd2d46e208e0eb6c62cfcc4f86141f933884e':
  CMake changes for SKIPPED and flush tests
  H5S adjust callbacks now return an herr_t instead of void.
  Normalization with vol_integration (property lists, file drivers, other misc).
2018-09-24 15:55:19 -05:00
Allen Byrne
e96bd2d46e Merge pull request #1256 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '8d7bdb704163327cacf8be3a4e03f02fb88a957b':
  CMake changes for SKIPPED and flush tests
2018-09-24 15:54:31 -05:00
Allen Byrne
9045cf049f Remove extra unneeded 2018-09-24 15:31:39 -05:00
Allen Byrne
a8f46df2c2 Remove libsettings from pregenerated block 2018-09-24 15:29:26 -05:00
Allen Byrne
8d7bdb7041 CMake changes for SKIPPED and flush tests 2018-09-24 14:38:46 -05:00
Dana Robinson
2874af2cac Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into develop 2018-09-24 12:24:28 -07:00
Dana Robinson
a56b4db4ae Remainder of vol_normalization changes (dataset, attribute, files, objects). 2018-09-24 12:23:41 -07:00
Dana Robinson
496de34110 Merge pull request #1254 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '37309c1bd98b3d810f09569c72ac375e75117a91':
  H5S adjust callbacks now return an herr_t instead of void.
2018-09-24 14:06:13 -05:00
Dana Robinson
37309c1bd9 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into develop 2018-09-24 08:35:53 -07:00
Dana Robinson
30cd579a14 H5S adjust callbacks now return an herr_t instead of void. 2018-09-24 08:35:13 -07:00
Dana Robinson
8fb7c5a94f Merge pull request #1253 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '987bca5a34a09cd564445d53f58cf1e428e43276':
  Normalization with vol_integration (property lists, file drivers, other misc).
2018-09-24 10:01:53 -05:00
Allen Byrne
5b07855b2d Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5c99d4e4df67699b81f1323e27a4df935d90e465':
  Normalization with vol_integration (misc internal and datatype)
2018-09-24 07:55:05 -05:00
Dana Robinson
987bca5a34 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into develop 2018-09-21 12:12:49 -07:00
Dana Robinson
265652fe54 Normalization with vol_integration (property lists, file drivers,
other misc).
2018-09-21 12:12:05 -07:00
Dana Robinson
5c99d4e4df Merge pull request #1252 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '1c8916ca0e9fe3447efe205094a2b5d3d5ccf8f6':
  Normalization with vol_integration (misc internal and datatype)
2018-09-21 12:42:06 -05:00
Allen Byrne
d8aa676175 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'f03758613a6ec83e5ddd664590d162ccc888f13e':
  Snapshot version 1.11 release 2.
  Normalization with vol_integration (test code and H5Xtest.c)
2018-09-21 12:17:19 -05:00
Dana Robinson
1c8916ca0e Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into develop 2018-09-20 13:39:31 -07:00
Dana Robinson
b48686febd Normalization with vol_integration (misc internal and datatype) 2018-09-20 13:38:40 -07:00
Allen Byrne
f03758613a Merge pull request #1251 in HDFFV/hdf5 from ~HDFTEST/hdf5_hft:develop to develop
* commit '04a2d68778bc978ac62b03b5b5bfa034e2ced7f7':
  Snapshot version 1.11 release 2.
2018-09-20 15:32:32 -05:00
Jacob Smith
ff7d250093 Remove unused/redundant external file link test 2018-09-20 15:25:10 -05:00
Jacob Smith
9dec62e0ae Modify MTIME size behavior to be closer to expectations (we hope).
Minor code cleanup.
2018-09-20 15:15:49 -05:00
hdftest
04a2d68778 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~hdftest/hdf5_hft into develop 2018-09-20 14:59:17 -05:00
hdftest
e2f6e6f62f Snapshot version 1.11 release 2. 2018-09-20 14:54:10 -05:00
Jacob Smith
5f8f703dec Continued progress in implementing tests. 2018-09-20 14:16:26 -05:00
Dana Robinson
d3074fa8bd Merge pull request #1250 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '67a126c7ba8825ffb193c930c7b8cae939b3446d':
  Normalization with vol_integration (test code and H5Xtest.c)
2018-09-20 14:13:27 -05:00
Dana Robinson
67a126c7ba Normalization with vol_integration (test code and H5Xtest.c) 2018-09-20 10:40:51 -07:00
Allen Byrne
2862c93a2b Correct $withval usage in configure 2018-09-20 10:15:33 -05:00
Allen Byrne
a2da8fc776 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '99299e195b5294549b75b28321ae7f8d2c6f8644':
  Fix missed replacement
2018-09-20 10:01:58 -05:00
Allen Byrne
99299e195b Merge pull request #1248 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'b3ad9e1c0e3d70233518ee84bd68935f5adb3b89':
  Fix missed replacement
2018-09-20 10:01:12 -05:00
Allen Byrne
569682b478 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'bbafe0debae9886988e4b7ec31bb8ef7292e43f9':
  Remove extra constant
  Fix typo
  Add Constants to all ERR STK checks
  Use constants for test comparisons
  Develop normalization with vol_integration. Mostly peripheral things like the tools and wrappers, with just enough core library code to support that.
2018-09-20 09:04:51 -05:00
Allen Byrne
b3ad9e1c0e Fix missed replacement 2018-09-20 09:01:57 -05:00
Allen Byrne
bbafe0deba Merge pull request #1247 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '59f36c5cdef1899742feb1c06ee09886e2d0a220':
  Remove extra constant
  Fix typo
  Add Constants to all ERR STK checks
  Use constants for test comparisons
2018-09-19 17:02:26 -05:00
Dana Robinson
bbde33f6f9 Merge pull request #1245 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_pull_request to develop
* commit 'eb78fd88325d58a95c026129f1e2b4c7c50f621a':
  Develop normalization with vol_integration. Mostly peripheral things like the tools and wrappers, with just enough core library code to support that.
2018-09-19 16:48:52 -05:00
Allen Byrne
59f36c5cde Remove extra constant 2018-09-19 10:52:43 -05:00
Allen Byrne
bd1be52990 Fix typo 2018-09-19 08:59:03 -05:00
Allen Byrne
cd290ddecb Add Constants to all ERR STK checks 2018-09-19 08:58:08 -05:00
Allen Byrne
d2806d4875 HDFFV-10332 Adjust checks and generation of files 2018-09-19 08:52:13 -05:00
Allen Byrne
fe418f6c23 Use constants for test comparisons 2018-09-19 08:06:05 -05:00
Allen Byrne
521eebbce2 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'ec53237fb849042b4a5b276a3e66a98ebb3710ee':
  Removed 'VOL' versions of FUNC_ENTER macros as well as empty functions orginally intended to support the full SWMR feature.
2018-09-19 07:44:32 -05:00
Dana Robinson
eb78fd8832 Develop normalization with vol_integration.
Mostly peripheral things like the tools and wrappers,
with just enough core library code to support that.
2018-09-18 22:57:37 -07:00
Dana Robinson
ec53237fb8 Merge pull request #1244 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_pull_request to develop
* commit '680cf4d946fd10d50e0f7acdc5bc93f91037fb4f':
  Removed 'VOL' versions of FUNC_ENTER macros as well as empty functions orginally intended to support the full SWMR feature.
2018-09-18 20:48:50 -05:00
Allen Byrne
deaa1db852 HDFFV-10332 Use pre-generated files 2018-09-18 17:31:40 -05:00
Allen Byrne
44de4ee2e5 Merge pull request #1243 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '6c78869c19a88edfd7b6a2a99a8fb8f5febf0b7a':
  Fix whitespace and exit status
  HDFFV-9059 take file as argument
  HDFFV-9059 Allow detect to take a file as an argument
2018-09-18 16:39:28 -05:00
Dana Robinson
680cf4d946 Removed 'VOL' versions of FUNC_ENTER macros as well as empty functions
orginally intended to support the full SWMR feature.
2018-09-18 14:10:14 -07:00
Allen Byrne
6c78869c19 Fix whitespace and exit status 2018-09-18 13:22:48 -05:00
Larry Knox
cb5b36e4dc Merge pull request #1241 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'dfa58496a1f8d667de72a11affe0f5a2e3ae4558':
  Update COPYING file with new HDF5 license.
2018-09-18 13:03:17 -05:00
Allen Byrne
595b2d54ed HDFFV-9059 take file as argument 2018-09-18 12:35:17 -05:00
Allen Byrne
99f743ed1a HDFFV-9059 Allow detect to take a file as an argument 2018-09-18 10:29:12 -05:00
Larry Knox
dfa58496a1 Update COPYING file with new HDF5 license. 2018-09-17 16:09:59 -05:00
Jacob Smith
4e4d737eca Change H5F internals access 2018-09-14 15:49:45 -05:00
Jacob Smith
e1f3a10c52 Make questionable tests fail with TODOs 2018-09-14 15:24:00 -05:00
Jacob Smith
14c044f1b1 Change to use internal routines to get dcpl minimize setting.
Fix external file/link problem:
    Include H5Fpkg.h to access file private variables directly.
2018-09-14 15:10:01 -05:00
Jacob Smith
6af06e74be Add modtime dataset to explicitly not track 2018-09-14 13:55:56 -05:00
Jacob Smith
1e3efbcf52 Refactor file- and dataset-creation code for easier reading.
Add modification message test logic.
Minor formatting tweaks.
2018-09-14 13:34:34 -05:00
Jacob Smith
dbf6afee39 Remove redundant code and refactor 2018-09-12 15:40:26 -05:00
Jacob Smith
5beeb64c29 Add presumptive test for external links. 2018-09-12 15:38:32 -05:00
Jacob Smith
dde5666f42 Add additional tests (or placeholders for same).
Tests use h5_fixname().
Small changes.
2018-09-12 14:06:55 -05:00
Jacob Smith
7ef8d1d848 Add new test file 2018-09-11 16:45:33 -05:00
Jacob Smith
602dd3ac15 Stash work on object header reduction code and tests.
CMake stuff is not verified.
2018-09-11 16:37:14 -05:00
Allen Byrne
fbf837eac3 Merge pull request #1233 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'c9771263ae300a65f6f9ae518da766a314002bed':
  Minor text corrections
  HDFFV-10569 Add unsupported option notes to docs
2018-09-10 09:29:46 -05:00
Allen Byrne
c9771263ae Minor text corrections 2018-09-05 16:30:09 -05:00
Vailin Choi
c8b38985ff Bug fixes for the previous checkin. 2018-09-04 16:53:45 -05:00
Allen Byrne
1d2beee51f HDFFV-10569 Add unsupported option notes to docs 2018-09-04 11:43:15 -05:00
Vailin Choi
1daccbded7 Second batch of checkin:
1) Define driver for the VFD SWMR reader
2) Implement VFD SWMR open callback
3) Implement H5FD_vfd_swmr_get_tick_and_idx()
4) Load and decode metadata file header and index
4) Closing for VFD SWMR
2018-09-03 23:11:36 -05:00
Vailin Choi
d926ddb1a2 Merge pull request #10 in ~VCHOI/my_hdf5_fork from develop to feature/vfd_swmr
* commit 'c834d9f99d45e5b9752e8525fe8761ea5592bf2c': (41 commits)
  HDFFV-10568 fix hdf5_java library dependency
  Remove another extra path var
  Move muti-config dir setting to root process
  Fix one more intermediate location
  Use different variable
  Cleanup and add intermediate dir for java
  Java must use shared libs to allow dlopen calls
  Correct names
  Call new function
  Correct default API version for develop to 112.
  Fix typo
  HD prefix and whitespace
  Update RELEASE.txt with suggested changes
  Update MANIFEST file for new t_coll_md_read.c file
  Remove now-unused local variable
  Add fix for HDFFV-10501
  Revert testfile FILE change
  change FILE path
  Add testfiles to data copy
  Same changes needed for examples as test
  ...
2018-09-03 22:36:44 -05:00
Allen Byrne
c834d9f99d Merge pull request #1232 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'fddbbc158d170b4e3a7ffd663f9799fd7e01a6a0':
  HDFFV-10568 fix hdf5_java library dependency
  Remove another extra path var
  Move muti-config dir setting to root process
  Fix one more intermediate location
  Use different variable
  Cleanup and add intermediate dir for java
2018-08-31 21:40:32 -05:00
Allen Byrne
fddbbc158d HDFFV-10568 fix hdf5_java library dependency 2018-08-31 21:00:16 -05:00
Allen Byrne
b951d1eae2 Remove another extra path var 2018-08-31 20:52:15 -05:00
Allen Byrne
fed65c435a Move muti-config dir setting to root process 2018-08-31 19:01:43 -05:00
Allen Byrne
a20168db02 Fix one more intermediate location 2018-08-31 14:45:32 -05:00
Allen Byrne
55e0b1e81e Use different variable 2018-08-31 14:05:25 -05:00
Allen Byrne
05c5d40dd5 Cleanup and add intermediate dir for java 2018-08-31 13:29:36 -05:00
Larry Knox
031088fc12 Merge pull request #1230 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '67220d101fbea90eab1c5bda0af531d39829c170':
  Java must use shared libs to allow dlopen calls
2018-08-30 22:18:25 -05:00
Allen Byrne
67220d101f Java must use shared libs to allow dlopen calls 2018-08-30 18:54:10 -05:00
Allen Byrne
e12f770b3e Merge pull request #1229 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'cd35778542c3c6e51ad334e6e4cf4be9f08bcaf8':
  Correct names
  Call new function
2018-08-30 13:00:21 -05:00
Larry Knox
fd2e588122 Merge pull request #1228 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'e6f8a55d8c42270efd7c870b7cee07b0d4ba7d08':
  Correct default API version for develop to 112.
2018-08-30 12:58:37 -05:00
Allen Byrne
cd35778542 Correct names 2018-08-30 08:38:28 -05:00
Allen Byrne
370db827ee Call new function 2018-08-30 08:29:21 -05:00
Larry Knox
e6f8a55d8c Correct default API version for develop to 112. 2018-08-29 23:06:50 -05:00
Allen Byrne
80c9c77d2e Merge pull request #1226 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ff13ed67a9ce20e5f598bd46cd6dd544b5237e22':
  Fix typo
  HD prefix and whitespace
2018-08-28 15:09:31 -05:00
Allen Byrne
ff13ed67a9 Fix typo 2018-08-28 12:08:06 -05:00
Allen Byrne
27af9a7922 HD prefix and whitespace 2018-08-28 10:54:54 -05:00
Larry Knox
553b1a01f8 Merge pull request #1224 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '763b95c6b0f027025a5a5bfb203b77317ffa2368':
  Update RELEASE.txt with suggested changes
  Update MANIFEST file for new t_coll_md_read.c file
  Remove now-unused local variable
  Add fix for HDFFV-10501
2018-08-27 16:24:20 -05:00
Jordan Henderson
763b95c6b0 Update RELEASE.txt with suggested changes 2018-08-27 15:13:54 -05:00
Jordan Henderson
556bfd498c Update MANIFEST file for new t_coll_md_read.c file
Remove old line from copyright notice
2018-08-27 08:56:17 -05:00
Jordan Henderson
726642498c Remove now-unused local variable 2018-08-25 23:05:55 -05:00
Jordan Henderson
4cd10fa88e Add fix for HDFFV-10501
Add test for HDFFV-10501 fix

Add release note for HDFFV-10501 fix
2018-08-25 22:54:30 -05:00
Allen Byrne
cb9797f497 Merge pull request #1222 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'a02414cc24e01096a239fc774ce94c38655f53ce':
  Revert testfile FILE change
  change FILE path
  Add testfiles to data copy
  Same changes needed for examples as test
  Correct name of test jar
  Only remove test jars
  Remove obsolete var
  Correct name of osx installer
  DT location incorrect
2018-08-24 10:27:42 -05:00
Allen Byrne
a02414cc24 Revert testfile FILE change 2018-08-23 21:27:32 -05:00
Allen Byrne
c9b37b93e9 change FILE path 2018-08-23 21:22:32 -05:00
Allen Byrne
510950623a Add testfiles to data copy 2018-08-23 17:26:33 -05:00
Allen Byrne
958c7bd833 Same changes needed for examples as test 2018-08-23 16:30:13 -05:00
Allen Byrne
22eda96a9c Correct name of test jar 2018-08-23 14:53:05 -05:00
Allen Byrne
d9d78f705e Only remove test jars 2018-08-23 14:21:16 -05:00
Allen Byrne
0651432031 Remove obsolete var 2018-08-23 13:19:35 -05:00
Larry Knox
0f7e13cdb5 Merge pull request #1219 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'd20fd310e42b73e9037fb1a3bcc5e55d5e5c5162':
  Change prefix in example scripts to relative path to bin. This was done for 1.8, and works wherever installed without the need to replace the original prefix.
2018-08-23 10:41:02 -05:00
Allen Byrne
a87f597d89 Correct name of osx installer 2018-08-23 09:40:22 -05:00
Allen Byrne
2417775bb3 DT location incorrect 2018-08-23 08:58:35 -05:00
Allen Byrne
8ba735e1c3 Merge pull request #1218 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '0483f47192df44235154954256fa0b927fb7c94f':
  Use project vars
  Fix for packaging prefix in examples
2018-08-23 08:07:47 -05:00
Larry Knox
d20fd310e4 Change prefix in example scripts to relative path to bin. This was done
for 1.8, and works wherever installed without the need to replace the
original prefix.
2018-08-23 07:37:00 -05:00
Allen Byrne
0483f47192 Use project vars 2018-08-22 14:10:38 -05:00
Allen Byrne
9d1dae5daf Fix for packaging prefix in examples 2018-08-22 12:13:53 -05:00
Allen Byrne
9dd922a75c Merge pull request #1217 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'fbd17f62ea505face5fb650d78a47135e288f0b6':
  Add installib path to test command
  Fix OSX SIP for libs
2018-08-22 10:37:28 -05:00
Allen Byrne
fbd17f62ea Add installib path to test command 2018-08-21 10:22:15 -05:00
Allen Byrne
085ec19a21 Fix OSX SIP for libs 2018-08-21 10:03:26 -05:00
Allen Byrne
6bfc56056a Merge pull request #1213 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f356d587a286f6407c9693c34201c89ea3adbbe1':
  Update fortran windows 10 version
2018-08-21 07:31:55 -05:00
Allen Byrne
f356d587a2 Update fortran windows 10 version 2018-08-20 18:26:57 -05:00
Allen Byrne
45603a6cdf Merge pull request #1211 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '732aae11c53fb63cdab58735604babbfd4d5db44':
  HDFFV-10547 develop needs 1.12 default option
  Fix quote
  HDFFV-10547 requires updated examples version
2018-08-20 18:08:11 -05:00
Allen Byrne
732aae11c5 HDFFV-10547 develop needs 1.12 default option 2018-08-20 15:07:19 -05:00
Allen Byrne
c78f43b25e Fix quote 2018-08-20 12:01:49 -05:00
Allen Byrne
b33fdb17c3 HDFFV-10547 requires updated examples version 2018-08-20 11:25:09 -05:00
Allen Byrne
91e9ba76c9 Merge pull request #1210 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'caa4324217914227ad5a9ea83215a0508226d725':
  HDFFV-10553 Update html tags
2018-08-20 11:22:13 -05:00
Allen Byrne
caa4324217 HDFFV-10553 Update html tags 2018-08-20 08:19:02 -05:00
Allen Byrne
965f673cea Merge pull request #1206 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'ae7da889ece8ea6cfe3207f146ee991951b5ce66':
  HDFFV-10552 Add missing HDF5_USE_110[2]_API_DEFAULT option
2018-08-17 14:56:45 -05:00
Allen Byrne
ae7da889ec HDFFV-10552 Add missing HDF5_USE_110[2]_API_DEFAULT option 2018-08-17 14:48:43 -05:00
Allen Byrne
105a05cb90 Merge pull request #1205 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'a6100a3445921480a9d65dbfc49e7600e7923bd5':
  HDFFV-10536 callback crash fixed by using stack structure
2018-08-17 14:25:10 -05:00
Allen Byrne
a6100a3445 HDFFV-10536 callback crash fixed by using stack structure 2018-08-17 14:12:11 -05:00
Allen Byrne
a7a814fa83 Merge pull request #1204 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '454b04176ae8daeadcd26bb532ed77c4c051a9c3':
  Update cmake warnings to match the autotools files better
2018-08-17 13:47:48 -05:00
Allen Byrne
454b04176a Update cmake warnings to match the autotools files better 2018-08-16 15:45:31 -05:00
Larry Knox
7d7929d43f Merge pull request #1198 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '201d1722dc14f5adb0ab5c42b11fac15e9da8454':
  Fix JIRA number format
2018-08-16 15:32:30 -05:00
Allen Byrne
201d1722dc Fix JIRA number format 2018-08-16 15:31:02 -05:00
Allen Byrne
42b1c08ee0 Merge pull request #1196 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '12adeedf6b817d99d00051d0549448f52a65c6a4':
  HDFFV-10552 fix version script (missed when 1.11 created)
2018-08-16 15:12:11 -05:00
Allen Byrne
12adeedf6b HDFFV-10552 fix version script (missed when 1.11 created) 2018-08-16 15:06:29 -05:00
Binh-Minh Ribler
8e92fd2b36 Merge pull request #1192 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_cpp4:develop to develop
Add CVE issues.

* commit '7c2d969e85eac7c72f3a289385b2707ea3e77217':
  Added notes about CVE issues.
2018-08-14 23:05:47 -05:00
Binh-Minh Ribler
7c2d969e85 Added notes about CVE issues. 2018-08-14 18:22:10 -05:00
Vailin Choi
45be06a387 Preliminary checkins for implementation done so far:
1) Public routines: H5Pget/set_vfd_swmr_config
2) Public routine: H5Fvfd_swmr_end_tick
3) Initialization when opening a file with VFD SWMR writer
4) Tests in test/vfd_swmr.c for VFD SWMR
5) Fix a bug in src/H5Fint.c: when error is encountered after the root group is created
Note the following:
--This is WORK IN PROGRESS and will subject to change as implementation goes.
--There is test failure form enc_dec_plist.c: I will fix this when changes to the property list are settled.
--The branch is updated with the latest from develop as of 8/14/2018
2018-08-14 13:21:00 -05:00
Vailin Choi
ce1e816295 Merge pull request #9 in ~VCHOI/my_hdf5_fork from HDFFV/hdf5:develop to feature/vfd_swmr
* commit '5647dea421be9dc8429f08632aa72a8a22904292': (47 commits)
  Rearrange issues by date order
  RELEASE.txt changes for MPI updates
  Update Drop Site options and Coverage settings
  Reorder bugfix release notes from latest to earliest, and miscellaneous format cleanup.
  Add RELEASE.txt entry for HDFFV-10475
  HDFFV-10544 Add more descriptive text
  HDFFV-10544 Correct var name
  HDFFV-10544 remove native from class function
  HDFFV-10544 correct typo
  HDFFV-10544 add release note
  HDFFV-10544 add class name to error text
  HDFFV-10544 exception variable as local class
  Improve error handling of exceptions
  Typo fix
  Set CMAKE_REQUIRED_INCLUDES instead of using path in call
  Add Autotools and CMake checks for big I/O MPI-3 functions
  Add hdf5settings section for parallel compression status in CMake builds
  HDFFV-10508 rework sentence
  HDFFV-10508 clarify library differences
  HDFFV-10508 spelling and grammer
  ...
2018-08-14 12:10:04 -05:00
Jordan Henderson
5647dea421 Merge pull request #1186 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '4f4f177b0af6063c0c22ec2e1a9ca99549bc8aac':
  Rearrange issues by date order
  RELEASE.txt changes for MPI updates
2018-08-09 13:08:02 -05:00
Jordan Henderson
4f4f177b0a Rearrange issues by date order 2018-08-09 11:38:23 -05:00
Jordan Henderson
f82395f2db Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~jhenderson/hdf5 into develop 2018-08-09 11:26:29 -05:00
Jordan Henderson
90699af5f4 RELEASE.txt changes for MPI updates 2018-08-09 11:26:10 -05:00
Larry Knox
9c52453657 Merge pull request #1185 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '01c9aa1e76857bf22771342dadf87af08979aa33':
  Update Drop Site options and Coverage settings
2018-08-09 11:09:36 -05:00
Allen Byrne
01c9aa1e76 Update Drop Site options and Coverage settings 2018-08-09 10:59:32 -05:00
Larry Knox
b5c6121a5d Merge pull request #1178 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'a3385675b3cdc2102457a9f91877cc27778ab29a':
  Reorder bugfix release notes from latest to earliest, and miscellaneous format cleanup.
  Add RELEASE.txt entry for HDFFV-10475
2018-08-07 15:25:13 -05:00
Larry Knox
a3385675b3 Reorder bugfix release notes from latest to earliest, and miscellaneous
format cleanup.
2018-08-07 13:18:56 -05:00
Larry Knox
bd27f0d419 Add RELEASE.txt entry for HDFFV-10475 2018-08-07 11:45:23 -05:00
Allen Byrne
f455ac063f Merge pull request #1176 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f9074881cdfe04e96e7faa43e955b42428d9fcb9':
  HDFFV-10544 Add more descriptive text
2018-08-06 11:56:19 -05:00
Allen Byrne
f9074881cd HDFFV-10544 Add more descriptive text 2018-08-06 11:31:20 -05:00
Allen Byrne
fe7aaff8cc Merge pull request #1175 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6e4c036d5dc476396428f4b044e23043a80e8df7':
  HDFFV-10544 Correct var name
  HDFFV-10544 remove native from class function
  HDFFV-10544 correct typo
  HDFFV-10544 add release note
  HDFFV-10544 add class name to error text
  HDFFV-10544 exception variable as local class
  Improve error handling of exceptions
2018-08-06 11:00:48 -05:00
Allen Byrne
6e4c036d5d HDFFV-10544 Correct var name 2018-08-06 11:00:28 -05:00
Allen Byrne
4d5255106c HDFFV-10544 remove native from class function 2018-08-06 09:56:01 -05:00
Allen Byrne
9efb9b7426 HDFFV-10544 correct typo 2018-08-06 09:44:41 -05:00
Allen Byrne
565ee9e7f9 HDFFV-10544 add release note 2018-08-06 09:39:44 -05:00
Allen Byrne
2f4832fe09 HDFFV-10544 add class name to error text 2018-08-06 09:23:21 -05:00
Allen Byrne
ca7d4f85a5 HDFFV-10544 exception variable as local class 2018-08-06 09:15:08 -05:00
Allen Byrne
762c14fde5 Improve error handling of exceptions 2018-08-06 08:14:04 -05:00
Allen Byrne
51d31c5ff8 Merge pull request #1173 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b4571f619018f428569cbae5d025935ac5f1788e':
  Typo fix
  Set CMAKE_REQUIRED_INCLUDES instead of using path in call
2018-08-02 11:48:02 -05:00
Allen Byrne
b4571f6190 Typo fix 2018-08-02 10:38:54 -05:00
Allen Byrne
2c17b19861 Set CMAKE_REQUIRED_INCLUDES instead of using path in call 2018-08-02 10:22:37 -05:00
Jordan Henderson
70de0b18e3 Merge pull request #1167 in HDFFV/hdf5 from ~JHENDERSON/hdf5:bugfix/MPI2_only_fixes to develop
* commit '9aa2eaeb9ed9c94f63973cb55f13de256558497c':
  Add Autotools and CMake checks for big I/O MPI-3 functions
  Add hdf5settings section for parallel compression status in CMake builds
  Switch to CheckSymbolExists in CMake
  Add configure check for MPI_Mprobe and MPI_Imrecv functions
2018-08-02 09:25:00 -05:00
Jordan Henderson
9aa2eaeb9e Add Autotools and CMake checks for big I/O MPI-3 functions 2018-07-31 13:42:19 -05:00
Jordan Henderson
5e138dc1e9 Add hdf5settings section for parallel compression status in CMake builds 2018-07-31 10:45:43 -05:00
Allen Byrne
cca9fbcff0 Merge pull request #1163 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '77cb2dca17bf739fe8cf0979793bb0f00347a692':
  HDFFV-10508 rework sentence
  HDFFV-10508 clarify library differences
  HDFFV-10508 spelling and grammer
  HDFFV-10508 more config fixes
  HDFFV-10508 correct sizeof
  HDFFV-10508 pubconf changes found
  HDFFV-10508 Document binary diffs
  HDFFV-9755 Document BUILD_STATIC_EXECS
2018-07-31 09:56:44 -05:00
Allen Byrne
77cb2dca17 HDFFV-10508 rework sentence 2018-07-31 09:56:12 -05:00
Allen Byrne
2822921c23 HDFFV-10508 clarify library differences 2018-07-31 09:41:11 -05:00
Allen Byrne
b8945eac22 HDFFV-10508 spelling and grammer 2018-07-31 09:28:17 -05:00
Scot Breitenfeld
3c781c18c9 Merge pull request #1165 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '2b41860efdd24a003a0981505553cf8b1040ea0a':
  Removed FORTRAN_SIZEOF_LONG_DOUBLE from public .h files
2018-07-30 17:15:36 -05:00
Allen Byrne
496372dc18 HDFFV-10508 more config fixes 2018-07-30 17:10:00 -05:00
M. Scot Breitenfeld
2b41860efd Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2018-07-30 17:01:54 -05:00
M. Scot Breitenfeld
d105690263 Removed FORTRAN_SIZEOF_LONG_DOUBLE from public .h files 2018-07-30 17:01:44 -05:00
Allen Byrne
323635f2b5 HDFFV-10508 correct sizeof 2018-07-30 16:31:39 -05:00
Allen Byrne
63fa8acbac Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b6d1e9abdc2571f6d7b56ebab26a245d2f036516':
  Fixed typo in H5_H5CONFIG_F_IKIND name
2018-07-30 16:30:51 -05:00
Allen Byrne
b6d1e9abdc Merge pull request #1164 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '8f79022bc63c7eca3af66eec7c2a99585a7c5397':
  Fixed typo in H5_H5CONFIG_F_IKIND name
2018-07-30 16:29:55 -05:00
M. Scot Breitenfeld
8f79022bc6 Fixed typo in H5_H5CONFIG_F_IKIND name 2018-07-30 16:17:27 -05:00
Allen Byrne
2770f0bf9f HDFFV-10508 pubconf changes found 2018-07-30 15:46:42 -05:00
Allen Byrne
c0ff42f676 HDFFV-10508 Document binary diffs 2018-07-30 15:09:50 -05:00
Allen Byrne
b33ba00c9c HDFFV-9755 Document BUILD_STATIC_EXECS 2018-07-30 12:39:38 -05:00
Allen Byrne
958cc1a969 Merge pull request #1161 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '91f20982daf2f76d4b8f3ba4f4659db7cd62c821':
  HDFFV-10534 add note
2018-07-30 12:10:10 -05:00
Allen Byrne
91f20982da HDFFV-10534 add note 2018-07-30 11:51:20 -05:00
Allen Byrne
882e59d1b3 Merge pull request #1157 in HDFFV/hdf5 from ~JHENDERSON/hdf5:bugfix/CMake_MPI_libs_fix to develop
* commit 'd075c0854d1ffb5a8eae23c5eb9a4456067f30c9':
  Add quotes to places where MPI_C_LIBRARIES are linked against
2018-07-30 11:45:55 -05:00
Binh-Minh Ribler
94e96737a7 Merge pull request #1158 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_cpp4:develop to develop
Typos in comments

* commit '7d9f5ed49a560fe8801b77cce8ffb60a2ec5e846':
  Fixed document format Platforms tested:     Linux/64 (jelly) (only in comment sections)
  Fixed missing backslash
2018-07-30 11:04:16 -05:00
Allen Byrne
7fe579d1f5 Merge pull request #1160 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '49a8da4ea79677804131aef87287f80b30658fd1':
  HDFFV-10534
  Add missing test option
  Add test file with unwritten datasets
2018-07-30 10:41:51 -05:00
Allen Byrne
49a8da4ea7 HDFFV-10534 2018-07-30 08:57:12 -05:00
Binh-Minh Ribler
7d9f5ed49a Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5_bmr_cpp4 into develop 2018-07-28 08:05:16 -05:00
Binh-Minh Ribler
4578eb0fc1 Fixed document format
Platforms tested:
    Linux/64 (jelly) (only in comment sections)
2018-07-28 08:00:32 -05:00
Jordan Henderson
d075c0854d Add quotes to places where MPI_C_LIBRARIES are linked against 2018-07-27 14:58:01 -05:00
Jordan Henderson
256fc4754b Switch to CheckSymbolExists in CMake 2018-07-27 12:49:42 -05:00
Allen Byrne
e4741cd8f2 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '272eb4b8bffd2ab732d268c421583587317b8dc2':
  RELEASE.txt updates for HDFFV-10467 and HDFFV-10509
  Update HDF5 examples to correct version.
  Correct a few typos.
  Correct typo in comment in config/gnu-flags.
  Update bine/release to create batch scripts and build-unix-sh, and to put files in a subdirectory.
2018-07-27 10:15:25 -05:00
Larry Knox
272eb4b8bf Merge pull request #1152 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '5550fb330a00ef75b6ab6daa6d8dae8bcf832185':
  RELEASE.txt updates for HDFFV-10467 and HDFFV-10509
2018-07-26 17:05:59 -05:00
Jordan Henderson
e1e10743cf Add configure check for MPI_Mprobe and MPI_Imrecv functions
Add line to libhdf5settings file for status of Parallel writes to
filtered datasets status

Surround Parallel Compression code in MPI_VERSION >= 3 checks

Add disabled message for Parallel Compression built w/ MPI-2

Modify Parallel Compression tests to only run the parallel filtered read
tests when parallel filtered writes are disabled

Update big I/O code to handle being built with MPI-2

Add checks to CMakeLists.txt for MPI_Mprobe and MPI_Imrecv
2018-07-26 12:50:26 -05:00
Jordan Henderson
5550fb330a RELEASE.txt updates for HDFFV-10467 and HDFFV-10509 2018-07-25 13:16:41 -05:00
Allen Byrne
14c060bbeb Add missing test option 2018-07-24 14:15:32 -05:00
Allen Byrne
b14c8bdb1c Add test file with unwritten datasets 2018-07-24 12:00:07 -05:00
Binh-Minh Ribler
f5551a9602 Fixed missing backslash 2018-07-24 08:39:16 -05:00
Quincey Koziol
949649a2b6 Correct mistake in H5_now_usec calculation for clock_gettime. 2017-09-24 14:08:40 -05:00
Quincey Koziol
395473b2f4 Remove detection for mach/mach/time.h, since we're no longer using the
time routines from that header.
2017-09-23 21:47:36 -05:00
Quincey Koziol
e70dc43d6b Update H5_now_usec to prefer using clock_gettime. 2017-09-23 21:47:07 -05:00
Quincey Koziol
6718b90009 Merge remote-tracking branch 'origin/develop' into monotonic_timer 2017-09-03 02:54:27 -05:00
Quincey Koziol
d5c3ec8b93 Changes to make timers within the library monotonic. 2017-09-03 02:53:28 -05:00
1789 changed files with 467046 additions and 139056 deletions

6
.gitattributes vendored
View File

@@ -216,10 +216,10 @@ java/src/hdf/hdf5lib/callbacks/H5D_iterate_cb.java -text
java/src/hdf/hdf5lib/callbacks/H5D_iterate_t.java -text
java/src/hdf/hdf5lib/callbacks/H5E_walk_cb.java -text
java/src/hdf/hdf5lib/callbacks/H5E_walk_t.java -text
java/src/hdf/hdf5lib/callbacks/H5L_iterate_cb.java -text
java/src/hdf/hdf5lib/callbacks/H5L_iterate_t.java -text
java/src/hdf/hdf5lib/callbacks/H5O_iterate_cb.java -text
java/src/hdf/hdf5lib/callbacks/H5L_iterate_opdata_t.java -text
java/src/hdf/hdf5lib/callbacks/H5O_iterate_t.java -text
java/src/hdf/hdf5lib/callbacks/H5O_iterate_opdata_t.java -text
java/src/hdf/hdf5lib/callbacks/H5P_cls_close_func_cb.java -text
java/src/hdf/hdf5lib/callbacks/H5P_cls_close_func_t.java -text
java/src/hdf/hdf5lib/callbacks/H5P_cls_copy_func_cb.java -text
@@ -267,6 +267,8 @@ java/src/hdf/hdf5lib/structs/H5G_info_t.java -text
java/src/hdf/hdf5lib/structs/H5L_info_t.java -text
java/src/hdf/hdf5lib/structs/H5O_hdr_info_t.java -text
java/src/hdf/hdf5lib/structs/H5O_info_t.java -text
java/src/hdf/hdf5lib/structs/H5O_native_info_t.java -text
java/src/hdf/hdf5lib/structs/H5O_token_t.java -text
java/src/hdf/hdf5lib/structs/H5_ih_info_t.java -text
java/src/hdf/overview.html -text
java/src/jni/CMakeLists.txt -text

80
.github/workflows/main.yml vendored Normal file
View File

@@ -0,0 +1,80 @@
name: hdf5 dev CI
# Controls when the action will run. Triggers the workflow on push or pull request
on:
push:
branches: [ develop, hdf5_1_12, hdf5_1_10, hdf5_1_8 ]
pull_request:
branches: [ develop, hdf5_1_12, hdf5_1_10, hdf5_1_8 ]
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
build:
strategy:
# fail-fast: false
matrix:
name: ["Windows Latest MSVC", "Ubuntu Latest GCC", "macOS Latest Clang"]
include:
- name: "Windows Latest MSVC"
artifact: "Windows-MSVC.tar.xz"
os: windows-latest
build_type: "Release"
toolchain: ""
fortran: OFF
generator: "-G \"Visual Studio 16 2019\" -A x64"
- name: "Ubuntu Latest GCC"
artifact: "Linux.tar.xz"
os: ubuntu-latest
build_type: "Release"
fortran: OFF
toolchain: "config/toolchain/GCC.cmake"
generator: "-G Ninja"
- name: "macOS Latest Clang"
artifact: "macOS.tar.xz"
os: macos-latest
build_type: "Release"
fortran: OFF
toolchain: "config/toolchain/clang.cmake"
generator: "-G Ninja"
name: ${{ matrix.name }}
# The type of runner that the job will run on
runs-on: ${{ matrix.os }}
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
- name: Install Dependencies (Linux)
run: sudo apt-get install ninja-build
if: matrix.os == 'ubuntu-latest'
- name: Install Dependencies (Windows)
run: choco install ninja
if: matrix.os == 'windows-latest'
- name: Install Dependencies (macOS)
run: brew install ninja
if: matrix.os == 'macos-latest'
- name: Set environment for MSVC (Windows)
if: matrix.os == 'windows-latest'
run: |
# Set these env vars so cmake picks the correct compiler
echo "::set-env name=CXX::cl.exe"
echo "::set-env name=CC::cl.exe"
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- name: Get Sources
uses: actions/checkout@v2
- name: Configure
run: |
mkdir "${{ runner.workspace }}/build"
cd "${{ runner.workspace }}/build"
cmake ${{ matrix.generator }} -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DCMAKE_TOOLCHAIN_FILE=${{ matrix.toolchain }} -DBUILD_SHARED_LIBS=ON -DHDF5_ENABLE_ALL_WARNINGS=ON -DHDF5_BUILD_FORTRAN=${{ matrix.fortran }} -DHDF5_BUILD_JAVA=ON $GITHUB_WORKSPACE
shell: bash
- name: Build
run: cmake --build . --config ${{ matrix.build_type }}
working-directory: ${{ runner.workspace }}/build
- name: Test
run: ctest --build . -C ${{ matrix.build_type }} -V
working-directory: ${{ runner.workspace }}/build

6
.gitignore vendored
View File

@@ -1,5 +1,11 @@
# .gitignore file for HDF5
# ctags
**/tags
# vim swap files
**/.*.swp
# Makefile.in files
**/Makefile.in

View File

@@ -9,6 +9,7 @@
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
option (USE_LIBAEC "Use AEC library as SZip Filter" OFF)
include (ExternalProject)
#option (HDF5_ALLOW_EXTERNAL_SUPPORT "Allow External Library Building (NO GIT TGZ)" "NO")
@@ -27,7 +28,18 @@ if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT" OR HDF5_ALLOW_EXTERNAL_SUPPORT MAT
set (TGZPATH ${HDF5_SOURCE_DIR})
endif ()
set (ZLIB_URL ${TGZPATH}/${ZLIB_TGZ_NAME})
if (NOT EXISTS "${ZLIB_URL}")
set (HDF5_ENABLE_Z_LIB_SUPPORT OFF CACHE BOOL "" FORCE)
message (STATUS "Filter ZLIB file ${ZLIB_URL} not found")
endif ()
set (SZIP_URL ${TGZPATH}/${SZIP_TGZ_NAME})
if (USE_LIBAEC)
set (SZIP_URL ${TGZPATH}/${SZAEC_TGZ_NAME})
endif ()
if (NOT EXISTS "${SZIP_URL}")
set (HDF5_ENABLE_SZIP_SUPPORT OFF CACHE BOOL "" FORCE)
message (STATUS "Filter SZIP file ${SZIP_URL} not found")
endif ()
else ()
set (ZLIB_USE_EXTERNAL 0)
set (SZIP_USE_EXTERNAL 0)
@@ -46,7 +58,6 @@ if (HDF5_ENABLE_Z_LIB_SUPPORT)
find_package (ZLIB) # Legacy find
if (ZLIB_FOUND)
set (LINK_COMP_LIBS ${LINK_COMP_LIBS} ${ZLIB_LIBRARIES})
set (LINK_COMP_SHARED_LIBS ${LINK_COMP_SHARED_LIBS} ${ZLIB_LIBRARIES})
endif ()
endif ()
endif ()
@@ -77,9 +88,6 @@ if (HDF5_ENABLE_Z_LIB_SUPPORT)
if (H5_HAVE_FILTER_DEFLATE)
set (EXTERNAL_FILTERS "${EXTERNAL_FILTERS} DEFLATE")
endif ()
if (BUILD_SHARED_LIBS)
set (LINK_COMP_SHARED_LIBS ${LINK_COMP_SHARED_LIBS} ${ZLIB_SHARED_LIBRARY})
endif ()
set (LINK_COMP_LIBS ${LINK_COMP_LIBS} ${ZLIB_STATIC_LIBRARY})
INCLUDE_DIRECTORIES (${ZLIB_INCLUDE_DIRS})
message (STATUS "Filter ZLIB is ON")
@@ -97,7 +105,6 @@ if (HDF5_ENABLE_SZIP_SUPPORT)
find_package (SZIP) # Legacy find
if (SZIP_FOUND)
set (LINK_COMP_LIBS ${LINK_COMP_LIBS} ${SZIP_LIBRARIES})
set (LINK_COMP_SHARED_LIBS ${LINK_COMP_SHARED_LIBS} ${SZIP_LIBRARIES})
endif ()
endif ()
endif ()
@@ -114,13 +121,16 @@ if (HDF5_ENABLE_SZIP_SUPPORT)
set (H5_HAVE_SZLIB_H 1)
set (H5_HAVE_LIBSZ 1)
message (STATUS "Filter SZIP is built")
if (USE_LIBAEC)
message (STATUS "... with library AEC")
set (SZ_PACKAGE_NAME ${LIBAEC_PACKAGE_NAME})
else ()
set (SZ_PACKAGE_NAME ${SZIP_PACKAGE_NAME})
endif ()
else ()
message (FATAL_ERROR "SZIP is Required for SZIP support in HDF5")
endif ()
endif ()
if (BUILD_SHARED_LIBS)
set (LINK_COMP_SHARED_LIBS ${LINK_COMP_SHARED_LIBS} ${SZIP_SHARED_LIBRARY})
endif ()
set (LINK_COMP_LIBS ${LINK_COMP_LIBS} ${SZIP_STATIC_LIBRARY})
INCLUDE_DIRECTORIES (${SZIP_INCLUDE_DIRS})
message (STATUS "Filter SZIP is ON")

View File

@@ -33,7 +33,7 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED)
EXPORT ${HDF5_EXPORTED_TARGETS}
DESTINATION ${HDF5_INSTALL_CMAKE_DIR}/hdf5
FILE ${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-targets.cmake
NAMESPACE ${HDF5_PACKAGE}::
NAMESPACE ${HDF_PACKAGE_NAMESPACE}
COMPONENT configinstall
)
endif ()
@@ -41,13 +41,11 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED)
#-----------------------------------------------------------------------------
# Export all exported targets to the build tree for use by parent project
#-----------------------------------------------------------------------------
if (NOT HDF5_EXTERNALLY_CONFIGURED)
export (
TARGETS ${HDF5_LIBRARIES_TO_EXPORT} ${HDF5_LIB_DEPENDENCIES} ${HDF5_UTILS_TO_EXPORT}
FILE ${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-targets.cmake
NAMESPACE ${HDF5_PACKAGE}::
)
endif ()
export (
TARGETS ${HDF5_LIBRARIES_TO_EXPORT} ${HDF5_LIB_DEPENDENCIES} ${HDF5_UTILS_TO_EXPORT}
FILE ${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-targets.cmake
NAMESPACE ${HDF_PACKAGE_NAMESPACE}
)
endif ()
#-----------------------------------------------------------------------------
@@ -104,10 +102,15 @@ endif ()
# Configure the hdf5-config-version .cmake file for the install directory
#-----------------------------------------------------------------------------
if (NOT HDF5_EXTERNALLY_CONFIGURED)
configure_file (
${HDF_RESOURCES_DIR}/hdf5-config-version.cmake.in
${HDF5_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-config-version.cmake @ONLY
write_basic_package_version_file (
"${HDF5_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-config-version.cmake"
VERSION ${HDF5_PACKAGE_VERSION}
COMPATIBILITY SameMinorVersion
)
#configure_file (
# ${HDF_RESOURCES_DIR}/hdf5-config-version.cmake.in
# ${HDF5_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-config-version.cmake @ONLY
#)
install (
FILES ${HDF5_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-config-version.cmake
DESTINATION ${HDF5_INSTALL_CMAKE_DIR}/hdf5
@@ -125,7 +128,7 @@ else ()
endif ()
configure_file (
${HDF_RESOURCES_DIR}/libhdf5.settings.cmake.in
${HDF5_BINARY_DIR}/libhdf5.settings @ONLY
${HDF5_BINARY_DIR}/libhdf5.settings ESCAPE_QUOTES @ONLY
)
install (
FILES ${HDF5_BINARY_DIR}/libhdf5.settings
@@ -134,7 +137,7 @@ install (
)
#-----------------------------------------------------------------------------
# Configure the HDF518_Examples.cmake file and the examples
# Configure the HDF5_Examples.cmake file and the examples
#-----------------------------------------------------------------------------
option (HDF5_PACK_EXAMPLES "Package the HDF5 Library Examples Compressed File" OFF)
if (HDF5_PACK_EXAMPLES)
@@ -186,7 +189,7 @@ HDF_README_PROPERTIES(HDF5_BUILD_FORTRAN)
#-----------------------------------------------------------------------------
# Configure the COPYING.txt file for the windows binary package
#-----------------------------------------------------------------------------
if (WIN32)
if (WIN32 OR MINGW)
configure_file (${HDF5_SOURCE_DIR}/COPYING ${HDF5_BINARY_DIR}/COPYING.txt @ONLY)
endif ()
@@ -195,8 +198,7 @@ endif ()
#-----------------------------------------------------------------------------
if (NOT HDF5_EXTERNALLY_CONFIGURED)
install (
FILES
${HDF5_SOURCE_DIR}/COPYING
FILES ${HDF5_SOURCE_DIR}/COPYING
DESTINATION ${HDF5_INSTALL_DATA_DIR}
COMPONENT hdfdocuments
)
@@ -206,7 +208,7 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED)
${HDF5_SOURCE_DIR}/release_docs/COPYING
${HDF5_SOURCE_DIR}/release_docs/RELEASE.txt
)
if (WIN32)
if (WIN32 OR MINGW)
set (release_files
${release_files}
${HDF5_SOURCE_DIR}/release_docs/USING_HDF5_VS.txt
@@ -215,11 +217,12 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED)
if (HDF5_PACK_INSTALL_DOCS)
set (release_files
${release_files}
${HDF5_SOURCE_DIR}/release_docs/INSTALL_Warnings.txt
${HDF5_SOURCE_DIR}/release_docs/INSTALL_CMake.txt
${HDF5_SOURCE_DIR}/release_docs/HISTORY-1_8.txt
${HDF5_SOURCE_DIR}/release_docs/INSTALL
)
if (WIN32)
if (WIN32 OR MINGW)
set (release_files
${release_files}
${HDF5_SOURCE_DIR}/release_docs/INSTALL_Windows.txt
@@ -287,7 +290,7 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED AND NOT HDF5_NO_PACKAGES)
set (CPACK_PACKAGE_ICON "${HDF_RESOURCES_EXT_DIR}/hdf.bmp")
set (CPACK_GENERATOR "TGZ")
if (WIN32)
if (WIN32 OR MINGW)
set (CPACK_GENERATOR "ZIP")
if (NSIS_EXECUTABLE)
@@ -452,7 +455,7 @@ The HDF5 data model, file format, API, library, and tools are open and distribut
if (HDF5_PACKAGE_EXTLIBS)
if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT" OR HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "TGZ")
if (ZLIB_FOUND AND ZLIB_USE_EXTERNAL)
if (WIN32)
if (WIN32 OR MINGW)
set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${ZLIB_INCLUDE_DIR_GEN};ZLIB;ALL;/")
else ()
set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${ZLIB_INCLUDE_DIR_GEN};ZLIB;libraries;/")
@@ -461,7 +464,7 @@ The HDF5 data model, file format, API, library, and tools are open and distribut
endif ()
endif ()
if (SZIP_FOUND AND SZIP_USE_EXTERNAL)
if (WIN32)
if (WIN32 OR MINGW)
set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${SZIP_INCLUDE_DIR_GEN};SZIP;ALL;/")
else ()
set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${SZIP_INCLUDE_DIR_GEN};SZIP;libraries;/")
@@ -551,6 +554,13 @@ The HDF5 data model, file format, API, library, and tools are open and distribut
)
endif ()
cpack_add_component (utilsapplications
DISPLAY_NAME "HDF5 Utility Applications"
DEPENDS libraries
GROUP Applications
INSTALL_TYPES Full Developer User
)
if (HDF5_BUILD_TOOLS)
cpack_add_component (toolsapplications
DISPLAY_NAME "HDF5 Tools Applications"

View File

@@ -1,6 +1,14 @@
cmake_minimum_required (VERSION 3.10)
cmake_minimum_required (VERSION 3.12)
project (HDF5 C)
if (POLICY CMP0074)
cmake_policy (SET CMP0074 NEW)
endif ()
if (POLICY CMP0083)
cmake_policy (SET CMP0083 NEW)
endif ()
#-----------------------------------------------------------------------------
# Instructions for use : Normal Build
#
@@ -10,8 +18,8 @@ project (HDF5 C)
# set CMAKE_INSTALL_PREFIX to the required install path.
# Make install can be used to install all components for system-wide use.
#
if ("${CMAKE_CURRENT_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
MESSAGE(FATAL_ERROR "\nERROR! ${PROJECT_NAME} DOES NOT SUPPORT IN SOURCE BUILDS!\n"
if (CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_CURRENT_BINARY_DIR)
message (FATAL_ERROR "\nERROR! ${PROJECT_NAME} DOES NOT SUPPORT IN SOURCE BUILDS!\n"
"CMAKE_CURRENT_SOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR}"
" == CMAKE_CURRENT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}\n"
"NEXT STEPS:\n"
@@ -28,6 +36,17 @@ if ("${CMAKE_CURRENT_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
)
endif ()
# CMake version 3.14 added option --ignore-eol to compare files
# cmake -E compare_files --ignore-eol file1 file2
set (CMAKE_IGNORE_EOL "--ignore-eol")
if (CMAKE_VERSION VERSION_LESS "3.14.0")
set (CMAKE_IGNORE_EOL "")
if (WIN32)
message (FATAL_ERROR "Windows builds requires a minimum of CMake 3.14")
endif()
else ()
endif ()
#-----------------------------------------------------------------------------
# Instructions for use : Sub-Project Build
#
@@ -46,6 +65,9 @@ endif ()
# dependencies of the HDF5 libs may be 'incomplete', add additional
# dependencies to this variable so that external projects pick them up
#
#option (HDF5_EXTERNAL_LIB_PREFIX "Use prefix for custom library naming." "")
set (HDF5_EXTERNAL_LIB_PREFIX "" CACHE STRING "Use prefix for custom library naming.")
mark_as_advanced (HDF5_EXTERNAL_LIB_PREFIX)
# HDF5_EXTERNAL_LIB_PREFIX :
# If the parent project needs to install hdf libraries, but avoid
# name conflicts with system versions, then a prefix may be added
@@ -87,7 +109,7 @@ endif ()
# # Add the sub project
# add_subdirectory (Utilities/hdf5-1.8)
#-----------------------------------------------------------------------------
string(TIMESTAMP CONFIG_DATE "%Y-%m-%d")
string (TIMESTAMP CONFIG_DATE "%Y-%m-%d")
#-----------------------------------------------------------------------------
# Allow Visual Studio solution directories
@@ -115,6 +137,7 @@ set (HDF5_CPP_LIB_CORENAME "hdf5_cpp")
set (HDF5_HL_LIB_CORENAME "hdf5_hl")
set (HDF5_HL_CPP_LIB_CORENAME "hdf5_hl_cpp")
set (HDF5_TOOLS_LIB_CORENAME "hdf5_tools")
set (HDF5_UTILS_LIB_CORENAME "hdf5_utils")
set (HDF5_F90_LIB_CORENAME "hdf5_fortran")
set (HDF5_F90_C_LIB_CORENAME "hdf5_f90cstub")
set (HDF5_F90_TEST_LIB_CORENAME "hdf5_test_fortran")
@@ -134,6 +157,7 @@ set (HDF5_CPP_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_CPP_LIB_COREN
set (HDF5_HL_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_HL_LIB_CORENAME}")
set (HDF5_HL_CPP_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_HL_CPP_LIB_CORENAME}")
set (HDF5_TOOLS_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_TOOLS_LIB_CORENAME}")
set (HDF5_UTILS_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_UTILS_LIB_CORENAME}")
set (HDF5_F90_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_F90_LIB_CORENAME}")
set (HDF5_F90_C_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_F90_C_LIB_CORENAME}")
set (HDF5_F90_TEST_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_F90_TEST_LIB_CORENAME}")
@@ -153,6 +177,7 @@ set (HDF5_CPP_LIB_TARGET "${HDF5_CPP_LIB_CORENAME}-static")
set (HDF5_HL_LIB_TARGET "${HDF5_HL_LIB_CORENAME}-static")
set (HDF5_HL_CPP_LIB_TARGET "${HDF5_HL_CPP_LIB_CORENAME}-static")
set (HDF5_TOOLS_LIB_TARGET "${HDF5_TOOLS_LIB_CORENAME}-static")
set (HDF5_UTILS_LIB_TARGET "${HDF5_UTILS_LIB_CORENAME}-static")
set (HDF5_F90_LIB_TARGET "${HDF5_F90_LIB_CORENAME}-static")
set (HDF5_F90_C_LIB_TARGET "${HDF5_F90_C_LIB_CORENAME}-static")
set (HDF5_F90_TEST_LIB_TARGET "${HDF5_F90_TEST_LIB_CORENAME}-static")
@@ -168,6 +193,7 @@ set (HDF5_CPP_LIBSH_TARGET "${HDF5_CPP_LIB_CORENAME}-shared")
set (HDF5_HL_LIBSH_TARGET "${HDF5_HL_LIB_CORENAME}-shared")
set (HDF5_HL_CPP_LIBSH_TARGET "${HDF5_HL_CPP_LIB_CORENAME}-shared")
set (HDF5_TOOLS_LIBSH_TARGET "${HDF5_TOOLS_LIB_CORENAME}-shared")
set (HDF5_UTILS_LIBSH_TARGET "${HDF5_UTILS_LIB_CORENAME}-shared")
set (HDF5_F90_LIBSH_TARGET "${HDF5_F90_LIB_CORENAME}-shared")
set (HDF5_F90_C_LIBSH_TARGET "${HDF5_F90_C_LIB_CORENAME}-shared")
set (HDF5_F90_TEST_LIBSH_TARGET "${HDF5_F90_TEST_LIB_CORENAME}-shared")
@@ -190,6 +216,7 @@ set (HDF5_HL_TOOLS_DIR ${HDF5_SOURCE_DIR}/hl/tools)
set (HDF5_TOOLS_DIR ${HDF5_SOURCE_DIR}/tools)
set (HDF5_TOOLS_SRC_DIR ${HDF5_SOURCE_DIR}/tools/src)
set (HDF5_PERFORM_SRC_DIR ${HDF5_SOURCE_DIR}/tools/src/perform)
set (HDF5_UTILS_DIR ${HDF5_SOURCE_DIR}/utils)
set (HDF5_F90_SRC_DIR ${HDF5_SOURCE_DIR}/fortran)
set (HDF5_JAVA_JNI_SRC_DIR ${HDF5_SOURCE_DIR}/java/src/jni)
set (HDF5_JAVA_HDF5_SRC_DIR ${HDF5_SOURCE_DIR}/java/src/hdf)
@@ -311,7 +338,7 @@ set (HDF5_PACKAGE_NAME "HDF5")
set (HDF5_PACKAGE_VERSION "${H5_VERS_MAJOR}.${H5_VERS_MINOR}.${H5_VERS_RELEASE}")
set (HDF5_PACKAGE_VERSION_MAJOR "${H5_VERS_MAJOR}.${H5_VERS_MINOR}")
set (HDF5_PACKAGE_VERSION_MINOR "${H5_VERS_RELEASE}")
if (NOT "${H5_VERS_SUBRELEASE}" STREQUAL "")
if (H5_VERS_SUBRELEASE)
set (HDF5_PACKAGE_VERSION_STRING "${HDF5_PACKAGE_VERSION}-${H5_VERS_SUBRELEASE}")
else ()
set (HDF5_PACKAGE_VERSION_STRING "${HDF5_PACKAGE_VERSION}")
@@ -413,24 +440,48 @@ set (CMAKE_INCLUDE_CURRENT_DIR_IN_INTERFACE ON)
# Mac OS X Options
#-----------------------------------------------------------------------------
if (HDF5_BUILD_FRAMEWORKS AND NOT BUILD_SHARED_LIBS)
set (BUILD_SHARED_LIBS ON CACHE BOOL "Build Shared Libraries")
set (BUILD_SHARED_LIBS ON CACHE BOOL "Build Shared Libraries" FORCE)
endif ()
#-----------------------------------------------------------------------------
# Option to Build Shared and Static libs, default is both
#-----------------------------------------------------------------------------
option (BUILD_STATIC_LIBS "Build Static Libraries" ON)
set (H5_ENABLE_STATIC_LIB NO)
option (BUILD_SHARED_LIBS "Build Shared Libraries" ON)
set (H5_ENABLE_SHARED_LIB NO)
option (ONLY_SHARED_LIBS "Only Build Shared Libraries" OFF)
mark_as_advanced (ONLY_SHARED_LIBS)
if (BUILD_STATIC_LIBS)
set (H5_ENABLE_STATIC_LIB YES)
endif ()
if (BUILD_SHARED_LIBS)
set (H5_ENABLE_SHARED_LIB YES)
endif ()
set (H5_ENABLE_STATIC_LIB YES)
# Force only shared libraries if all OFF
if (NOT BUILD_STATIC_LIBS AND NOT BUILD_SHARED_LIBS)
set (ONLY_SHARED_LIBS ON CACHE BOOL "Only Build Shared Libraries" FORCE)
endif ()
if (ONLY_SHARED_LIBS)
set (H5_ENABLE_STATIC_LIB NO)
set (BUILD_SHARED_LIBS ON CACHE BOOL "Build Shared Libraries")
endif ()
set (CMAKE_POSITION_INDEPENDENT_CODE ON)
if (NOT BUILD_SHARED_LIBS)
set (tgt_file_ext "")
else ()
set (tgt_file_ext "-shared")
endif ()
#-----------------------------------------------------------------------------
# Option to Build Static executables
#-----------------------------------------------------------------------------
option (BUILD_STATIC_EXECS "Build Static Executabless" OFF)
option (BUILD_STATIC_EXECS "Build Static Executables" OFF)
if (BUILD_STATIC_EXECS)
if (NOT WIN32)
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -static")
@@ -438,14 +489,31 @@ if (BUILD_STATIC_EXECS)
endif ()
endif ()
if (HDF5_ENABLE_ANALYZER_TOOLS)
include (${HDF5_SOURCE_DIR}/config/sanitizer/tools.cmake)
endif ()
if (HDF5_ENABLE_SANITIZERS)
include (${HDF5_SOURCE_DIR}/config/sanitizer/sanitizers.cmake)
endif ()
#-----------------------------------------------------------------------------
# Option to use code coverage
#-----------------------------------------------------------------------------
option (HDF5_ENABLE_COVERAGE "Enable code coverage for Libraries and Programs" OFF)
if (HDF5_ENABLE_COVERAGE)
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage")
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage")
set (LDFLAGS "${LDFLAGS} -fprofile-arcs -ftest-coverage")
include (${HDF5_SOURCE_DIR}/config/sanitizer/code-coverage.cmake)
if(CODE_COVERAGE AND CODE_COVERAGE_ADDED)
add_code_coverage () # Adds instrumentation to all targets
else ()
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0 --coverage -fprofile-arcs -ftest-coverage")
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g --coverage -O0 -fprofile-arcs -ftest-coverage")
if (CMAKE_C_COMPILER_ID STREQUAL "GNU")
set (LDFLAGS "${LDFLAGS} -fprofile-arcs -ftest-coverage")
link_libraries (gcov)
else ()
set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --coverage")
endif ()
endif ()
endif ()
#-----------------------------------------------------------------------------
@@ -473,6 +541,15 @@ if (HDF5_MEMORY_ALLOC_SANITY_CHECK)
set (H5_MEMORY_ALLOC_SANITY_CHECK 1)
endif ()
#-----------------------------------------------------------------------------
# Option to enable/disable using pread/pwrite for VFDs
#-----------------------------------------------------------------------------
option (HDF5_ENABLE_PREADWRITE "Use pread/pwrite in sec2/log/core VFDs in place of read/write (when available)" ON)
mark_as_advanced (HDF5_ENABLE_PREADWRITE)
if (HDF5_ENABLE_PREADWRITE AND H5_HAVE_PREAD AND H5_HAVE_PWRITE)
set (H5_HAVE_PREADWRITE 1)
endif ()
#-----------------------------------------------------------------------------
# Option to use deprecated public API symbols
#-----------------------------------------------------------------------------
@@ -490,11 +567,9 @@ endif ()
# and we need to call the executable from inside the CMake configuration
#-----------------------------------------------------------------------------
set (EXE_EXT "")
if (WIN32)
if (WIN32 OR MINGW)
set (EXE_EXT ".exe")
add_definitions (-D_BIND_TO_CURRENT_VCLIBS_VERSION=1)
add_definitions (-D_CRT_SECURE_NO_WARNINGS)
add_definitions (-D_CONSOLE)
add_compile_definitions (_BIND_TO_CURRENT_VCLIBS_VERSION=1 _CRT_SECURE_NO_WARNINGS _CONSOLE)
endif ()
if (MSVC)
@@ -543,11 +618,32 @@ else ()
endif ()
include (${HDF_RESOURCES_DIR}/HDFCompilerFlags.cmake)
set (CMAKE_MODULE_PATH ${HDF_RESOURCES_DIR} ${HDF_RESOURCES_EXT_DIR} ${CMAKE_MODULE_PATH})
#-----------------------------------------------------------------------------
# Option to Enable HDFS
#-----------------------------------------------------------------------------
option (HDF5_ENABLE_HDFS "Enable HDFS" OFF)
if (HDF5_ENABLE_HDFS)
find_package(JNI REQUIRED)
if (JNI_FOUND)
set (H5_HAVE_LIBJVM 1)
endif ()
find_package(HDFS REQUIRED)
if (HDFS_FOUND)
set (H5_HAVE_LIBHDFS 1)
set (H5_HAVE_HDFS_H 1)
if (NOT MSVC)
list (APPEND LINK_LIBS -pthread)
endif ()
else ()
message (FATAL_ERROR "Set to use libhdfs library, but could not find or use libhdfs. Please verify that the path to HADOOP_HOME is valid, and/or reconfigure without HDF5_ENABLE_HDFS")
endif ()
endif ()
#-----------------------------------------------------------------------------
# Option to Enable MPI Parallel
#-----------------------------------------------------------------------------
set (CMAKE_MODULE_PATH ${HDF_RESOURCES_DIR} ${HDF_RESOURCES_EXT_DIR} ${CMAKE_MODULE_PATH})
option (HDF5_ENABLE_PARALLEL "Enable parallel build (requires MPI)" OFF)
if (HDF5_ENABLE_PARALLEL)
find_package(MPI REQUIRED)
@@ -555,12 +651,33 @@ if (HDF5_ENABLE_PARALLEL)
set (H5_HAVE_PARALLEL 1)
# MPI checks, only do these if MPI_C_FOUND is true, otherwise they always fail
# and once set, they are cached as false and not regenerated
set (CMAKE_REQUIRED_LIBRARIES "${MPI_C_LIBRARIES}" )
set (CMAKE_REQUIRED_LIBRARIES "${MPI_C_LIBRARIES}")
set (CMAKE_REQUIRED_INCLUDES "${MPI_C_INCLUDE_DIRS}")
# Used by Fortran + MPI
CHECK_SYMBOL_EXISTS (MPI_Comm_c2f "${MPI_C_INCLUDE_DIRS}/mpi.h" H5_HAVE_MPI_MULTI_LANG_Comm)
CHECK_SYMBOL_EXISTS (MPI_Info_c2f "${MPI_C_INCLUDE_DIRS}/mpi.h" H5_HAVE_MPI_MULTI_LANG_Info)
CHECK_SYMBOL_EXISTS (MPI_Comm_c2f "mpi.h" H5_HAVE_MPI_MULTI_LANG_Comm)
CHECK_SYMBOL_EXISTS (MPI_Info_c2f "mpi.h" H5_HAVE_MPI_MULTI_LANG_Info)
# Used by Parallel Compression feature
set (PARALLEL_FILTERED_WRITES ON)
CHECK_SYMBOL_EXISTS (MPI_Mprobe "mpi.h" H5_HAVE_MPI_Mprobe)
CHECK_SYMBOL_EXISTS (MPI_Imrecv "mpi.h" H5_HAVE_MPI_Imrecv)
if (NOT H5_HAVE_MPI_Mprobe OR NOT H5_HAVE_MPI_Imrecv)
message (WARNING "The MPI_Mprobe and/or MPI_Imrecv functions could not be located.
Parallel writes of filtered data will be disabled.")
set (PARALLEL_FILTERED_WRITES OFF)
endif ()
# Used by big I/O feature
set (LARGE_PARALLEL_IO ON)
CHECK_SYMBOL_EXISTS (MPI_Get_elements_x "mpi.h" H5_HAVE_MPI_Get_elements_x)
CHECK_SYMBOL_EXISTS (MPI_Type_size_x "mpi.h" H5_HAVE_MPI_Type_size_x)
if (NOT H5_HAVE_MPI_Get_elements_x OR NOT H5_HAVE_MPI_Type_size_x)
message (WARNING "The MPI_Get_elements_x and/or MPI_Type_size_x functions could not be located.
Reading/Writing >2GB of data in a single parallel I/O operation will be disabled.")
set (LARGE_PARALLEL_IO OFF)
endif ()
else ()
message (STATUS "Parallel libraries not found")
message (FATAL_ERROR "Parallel libraries not found")
endif ()
endif ()
@@ -572,25 +689,53 @@ if (H5_HAVE_PARALLEL)
endif ()
endif ()
set (DEFAULT_API_VERSION "v110")
#option (DEFAULT_API_VERSION "Enable v1.14 API (v16, v18, v110, v112, v114)" "v114")
set (DEFAULT_API_VERSION "v114" CACHE STRING "Enable v1.14 API (v16, v18, v110, v112, v114)")
set_property (CACHE DEFAULT_API_VERSION PROPERTY STRINGS v16 v18 v110 v112 v114)
#-----------------------------------------------------------------------------
# Option to use 1.6.x API
#-----------------------------------------------------------------------------
option (HDF5_USE_16_API_DEFAULT "Use the HDF5 1.6.x API by default" OFF)
set (H5_USE_16_API_DEFAULT 0)
if (HDF5_USE_16_API_DEFAULT)
if (DEFAULT_API_VERSION MATCHES "v16")
set (H5_USE_16_API_DEFAULT 1)
set (DEFAULT_API_VERSION "v16")
endif ()
#-----------------------------------------------------------------------------
# Option to use 1.8.x API
#-----------------------------------------------------------------------------
option (HDF5_USE_18_API_DEFAULT "Use the HDF5 1.8.x API by default" OFF)
set (H5_USE_18_API_DEFAULT 0)
if (HDF5_USE_18_API_DEFAULT)
if (DEFAULT_API_VERSION MATCHES "v18")
set (H5_USE_18_API_DEFAULT 1)
set (DEFAULT_API_VERSION "v18")
endif ()
#-----------------------------------------------------------------------------
# Option to use 1.10.x API
#-----------------------------------------------------------------------------
set (H5_USE_110_API_DEFAULT 0)
if (DEFAULT_API_VERSION MATCHES "v110")
set (H5_USE_110_API_DEFAULT 1)
endif ()
#-----------------------------------------------------------------------------
# Option to use 1.12.x API
#-----------------------------------------------------------------------------
if (NOT DEFAULT_API_VERSION)
set (DEFAULT_API_VERSION "v112")
endif ()
set (H5_USE_112_API_DEFAULT 0)
if (DEFAULT_API_VERSION MATCHES "v112")
set (H5_USE_112_API_DEFAULT 1)
endif ()
#-----------------------------------------------------------------------------
# Option to use 1.14.x API
#-----------------------------------------------------------------------------
if (NOT DEFAULT_API_VERSION)
set (DEFAULT_API_VERSION "v114")
endif ()
set (H5_USE_114_API_DEFAULT 0)
if (DEFAULT_API_VERSION MATCHES "v114")
set (H5_USE_114_API_DEFAULT 1)
endif ()
#-----------------------------------------------------------------------------
@@ -619,38 +764,41 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED)
endif ()
endif ()
endif ()
#-----------------------------------------------------------------------------
# Option to use threadsafe
#-----------------------------------------------------------------------------
option (HDF5_ENABLE_THREADSAFE "Enable thread-safety" OFF)
if (HDF5_ENABLE_THREADSAFE)
# check for unsupported options
message (STATUS " **** thread-safety option not supported with static library **** ")
message (STATUS " **** thread-safety option will not be used building static library **** ")
if (WIN32 OR MINGW)
message (STATUS " **** thread-safety option not supported with static library **** ")
message (STATUS " **** thread-safety option will not be used building static library **** ")
endif ()
if (HDF5_ENABLE_PARALLEL)
if (NOT ALLOW_UNSUPPORTED)
message (FATAL_ERROR " **** parallel and thread-safety options are not supported **** ")
message (FATAL_ERROR " **** parallel and thread-safety options are not supported, override with ALLOW_UNSUPPORTED option **** ")
else ()
message (STATUS " **** Allowing unsupported parallel and thread-safety options **** ")
endif ()
endif ()
if (HDF5_BUILD_FORTRAN)
if (NOT ALLOW_UNSUPPORTED)
message (FATAL_ERROR " **** Fortran and thread-safety options are not supported **** ")
message (FATAL_ERROR " **** Fortran and thread-safety options are not supported, override with ALLOW_UNSUPPORTED option **** ")
else ()
message (STATUS " **** Allowing unsupported Fortran and thread-safety options **** ")
endif ()
endif ()
if (HDF5_BUILD_CPP_LIB)
if (NOT ALLOW_UNSUPPORTED)
message (FATAL_ERROR " **** C++ and thread-safety options are not supported **** ")
message (FATAL_ERROR " **** C++ and thread-safety options are not supported, override with ALLOW_UNSUPPORTED option **** ")
else ()
message (STATUS " **** Allowing unsupported C++ and thread-safety options **** ")
endif ()
endif ()
if (HDF5_BUILD_HL_LIB)
if (NOT ALLOW_UNSUPPORTED)
message (FATAL_ERROR " **** HL and thread-safety options are not supported **** ")
message (FATAL_ERROR " **** HL and thread-safety options are not supported, override with ALLOW_UNSUPPORTED option **** ")
else ()
message (STATUS " **** Allowing unsupported HL and thread-safety options **** ")
endif ()
@@ -663,13 +811,21 @@ if (HDF5_ENABLE_THREADSAFE)
message (FATAL_ERROR " **** thread-safe option requires Win32 threads or Pthreads **** ")
endif ()
endif ()
set(THREADS_PREFER_PTHREAD_FLAG ON)
find_package(Threads)
if (NOT Threads_FOUND)
message (STATUS " **** thread-safe package not found - threads still might work **** ")
set (THREADS_PREFER_PTHREAD_FLAG ON)
find_package (Threads REQUIRED)
if (Threads_FOUND)
set (H5_HAVE_THREADSAFE 1)
endif ()
endif ()
#-----------------------------------------------------------------------------
# Option to build the map API
#-----------------------------------------------------------------------------
option (HDF5_ENABLE_MAP_API "Build the map API" OFF)
if (HDF5_ENABLE_MAP_API)
set (H5_HAVE_MAP_API 1)
endif ()
#-----------------------------------------------------------------------------
# Add the HDF5 Library Target to the build
#-----------------------------------------------------------------------------
@@ -677,13 +833,17 @@ add_subdirectory (src)
if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT" OR HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "TGZ")
if (ZLIB_FOUND AND ZLIB_USE_EXTERNAL)
add_dependencies (${HDF5_LIB_TARGET} ZLIB)
if (NOT ONLY_SHARED_LIBS)
add_dependencies (${HDF5_LIB_TARGET} ZLIB)
endif ()
if (BUILD_SHARED_LIBS)
add_dependencies (${HDF5_LIBSH_TARGET} ZLIB)
endif ()
endif ()
if (SZIP_FOUND AND SZIP_USE_EXTERNAL)
add_dependencies (${HDF5_LIB_TARGET} SZIP)
if (NOT ONLY_SHARED_LIBS)
add_dependencies (${HDF5_LIB_TARGET} SZIP)
endif ()
if (BUILD_SHARED_LIBS)
add_dependencies (${HDF5_LIBSH_TARGET} SZIP)
endif ()
@@ -696,10 +856,15 @@ endif ()
option (BUILD_TESTING "Build HDF5 Unit Testing" ON)
if (BUILD_TESTING)
set (DART_TESTING_TIMEOUT 1200
CACHE INTEGER
CACHE STRING
"Timeout in seconds for each test (default 1200=20minutes)"
)
# Generate a list of timeouts based on DART_TESTING_TIMEOUT
math (EXPR CTEST_SHORT_TIMEOUT "${DART_TESTING_TIMEOUT} / 2")
math (EXPR CTEST_LONG_TIMEOUT "${DART_TESTING_TIMEOUT} * 2")
math (EXPR CTEST_VERY_LONG_TIMEOUT "${DART_TESTING_TIMEOUT} * 3")
option (HDF5_TEST_VFD "Execute tests with different VFDs" OFF)
mark_as_advanced (HDF5_TEST_VFD)
if (HDF5_TEST_VFD)
@@ -707,6 +872,13 @@ if (BUILD_TESTING)
mark_as_advanced (HDF5_TEST_FHEAP_VFD)
endif ()
option (HDF5_TEST_PASSTHROUGH_VOL "Execute tests with different passthrough VOL connectors" OFF)
mark_as_advanced (HDF5_TEST_PASSTHROUGH_VOL)
if (HDF5_TEST_PASSTHROUGH_VOL)
option (HDF5_TEST_FHEAP_PASSTHROUGH_VOL "Execute fheap test with different passthrough VOL connectors" ON)
mark_as_advanced (HDF5_TEST_FHEAP_PASSTHROUGH VOL)
endif ()
option (HDF_TEST_EXPRESS "Control testing framework (0-3)" "0")
mark_as_advanced (HDF_TEST_EXPRESS)
@@ -716,6 +888,30 @@ if (BUILD_TESTING)
include (${HDF5_SOURCE_DIR}/CTestConfig.cmake)
configure_file (${HDF_RESOURCES_DIR}/CTestCustom.cmake ${HDF5_BINARY_DIR}/CTestCustom.ctest @ONLY)
option (HDF5_TEST_SERIAL "Execute non-parallel tests" ON)
mark_as_advanced (HDF5_TEST_SERIAL)
option (HDF5_TEST_TOOLS "Execute tools tests" ON)
mark_as_advanced (HDF5_TEST_TOOLS)
option (HDF5_TEST_EXAMPLES "Execute tests on examples" ON)
mark_as_advanced (HDF5_TEST_EXAMPLES)
option (HDF5_TEST_SWMR "Execute SWMR tests" ON)
mark_as_advanced (HDF5_TEST_SWMR)
option (HDF5_TEST_PARALLEL "Execute parallel tests" ON)
mark_as_advanced (HDF5_TEST_PARALLEL)
option (HDF5_TEST_FORTRAN "Execute fortran tests" ON)
mark_as_advanced (HDF5_TEST_FORTRAN)
option (HDF5_TEST_CPP "Execute cpp tests" ON)
mark_as_advanced (HDF5_TEST_CPP)
option (HDF5_TEST_JAVA "Execute java tests" ON)
mark_as_advanced (HDF5_TEST_JAVA)
if (NOT HDF5_EXTERNALLY_CONFIGURED)
if (EXISTS "${HDF5_SOURCE_DIR}/test" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/test")
add_subdirectory (test)
@@ -728,6 +924,16 @@ if (BUILD_TESTING)
endif ()
endif ()
#-----------------------------------------------------------------------------
# Option to build HDF5 Utilities
#-----------------------------------------------------------------------------
if (EXISTS "${HDF5_SOURCE_DIR}/utils" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/utils")
option (HDF5_BUILD_UTILS "Build HDF5 Utils" ON)
if (HDF5_BUILD_UTILS)
add_subdirectory (utils)
endif ()
endif ()
#-----------------------------------------------------------------------------
# Option to build HDF5 Tools
#-----------------------------------------------------------------------------
@@ -770,25 +976,15 @@ set (H5_FC_FUNC_ "H5_FC_FUNC_(name,NAME) name ## _")
if (EXISTS "${HDF5_SOURCE_DIR}/fortran" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/fortran")
option (HDF5_BUILD_FORTRAN "Build FORTRAN support" OFF)
if (HDF5_BUILD_FORTRAN)
option (HDF5_ENABLE_F2003 "Enable FORTRAN 2003 Standard" ON)
include (${HDF_RESOURCES_EXT_DIR}/HDFUseFortran.cmake)
message (STATUS "Fortran compiler ID is ${CMAKE_Fortran_COMPILER_ID}")
# Building with PGI requires CMake 3.3 or greater because previous versions
# of CMake add the wrong compiler flag for the PGI Fortran compiler.
if ("${CMAKE_Fortran_COMPILER_ID}" MATCHES "PGI" AND "${CMAKE_VERSION}" VERSION_LESS "3.3")
message (FATAL_ERROR " **** PGI FORTRAN REQUIRES CMAKE VERSION 3.3 OR GREATER **** ")
endif ()
include (${HDF_RESOURCES_DIR}/HDFFortranCompilerFlags.cmake)
include (${HDF_RESOURCES_DIR}/HDF5UseFortran.cmake)
set (LINK_Fortran_LIBS ${LINK_LIBS})
if (HDF5_ENABLE_F2003)
if (NOT FORTRAN_HAVE_ISO_C_BINDING)
set (HDF5_ENABLE_F2003 OFF)
endif ()
if (NOT H5_FORTRAN_HAVE_ISO_C_BINDING)
message (FATAL_ERROR " **** Fortran compiler lacks required Fortran 2003 features; unsupported Fortran 2003 compiler, disable HDF5_BUILD_FORTRAN **** ")
endif ()
# Parallel IO usage requires MPI to be Linked and Included
@@ -799,6 +995,17 @@ if (EXISTS "${HDF5_SOURCE_DIR}/fortran" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/for
endif ()
endif ()
#option (HDF5_INSTALL_MOD_FORTRAN "Copy FORTRAN mod files to include directory (NO SHARED STATIC)" "NO")
set (HDF5_INSTALL_MOD_FORTRAN "SHARED" CACHE STRING "Copy FORTRAN mod files to include directory (NO SHARED STATIC)")
set_property (CACHE HDF5_INSTALL_MOD_FORTRAN PROPERTY STRINGS NO SHARED STATIC)
if (NOT HDF5_INSTALL_MOD_FORTRAN MATCHES "NO")
if (NOT BUILD_SHARED_LIBS AND BUILD_STATIC_LIBS)
set (HDF5_INSTALL_MOD_FORTRAN "STATIC")
elseif (BUILD_SHARED_LIBS AND NOT BUILD_STATIC_LIBS)
set (HDF5_INSTALL_MOD_FORTRAN "SHARED")
endif ()
endif ()
add_subdirectory (fortran)
if (HDF5_BUILD_HL_LIB)
if (EXISTS "${HDF5_SOURCE_DIR}/hl/fortran" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/hl/fortran")
@@ -818,13 +1025,14 @@ if (EXISTS "${HDF5_SOURCE_DIR}/c++" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/c++")
# check for unsupported options
if (HDF5_ENABLE_PARALLEL)
if (NOT ALLOW_UNSUPPORTED)
message (FATAL_ERROR " **** Parallel and C++ options are mutually exclusive **** ")
message (FATAL_ERROR " **** Parallel and C++ options are mutually exclusive, override with ALLOW_UNSUPPORTED option **** ")
else ()
message (STATUS " **** Allowing unsupported Parallel and C++ options **** ")
endif ()
endif ()
include (${HDF_RESOURCES_EXT_DIR}/HDFUseCXX.cmake)
include (${HDF_RESOURCES_DIR}/HDFCXXCompilerFlags.cmake)
if (CMAKE_NO_STD_NAMESPACE)
set (H5_NO_STD 1)
@@ -864,4 +1072,10 @@ endif ()
#-----------------------------------------------------------------------------
configure_file (${HDF_RESOURCES_DIR}/H5pubconf.h.in ${HDF5_BINARY_DIR}/H5pubconf.h @ONLY)
#-----------------------------------------------------------------------------
# Options for use by cross compiling and toolchains
#-----------------------------------------------------------------------------
option (HDF5_USE_PREGEN "Use pre-generated Files" OFF)
option (HDF5_BATCH_H5DETECT "Use a batch command for running h5detect" OFF)
include (CMakeInstallation.cmake)

173
COPYING
View File

@@ -3,10 +3,10 @@ HDF5 (Hierarchical Data Format 5) Software Library and Utilities
-----------------------------------------------------------------------------
HDF5 (Hierarchical Data Format 5) Software Library and Utilities
Copyright (c) 2006, The HDF Group.
Copyright 2006 by The HDF Group.
NCSA HDF5 (Hierarchical Data Format 5) Software Library and Utilities
Copyright (c) 1998-2006, The Board of Trustees of the University of Illinois.
Copyright 1998-2006 by The Board of Trustees of the University of Illinois.
All rights reserved.
@@ -21,27 +21,27 @@ provided that the following conditions are met:
this list of conditions, and the following disclaimer in the documentation
and/or materials provided with the distribution.
3. In addition, redistributions of modified forms of the source or binary
code must carry prominent notices stating that the original code was
changed and the date of the change.
4. All publications or advertising materials mentioning features or use of
this software are asked, but not required, to acknowledge that it was
developed by The HDF Group and by the National Center for Supercomputing
Applications at the University of Illinois at Urbana-Champaign and
credit the contributors.
5. Neither the name of The HDF Group, the name of the University, nor the
3. Neither the name of The HDF Group, the name of the University, nor the
name of any Contributor may be used to endorse or promote products derived
from this software without specific prior written permission from
The HDF Group, the University, or the Contributor, respectively.
DISCLAIMER:
THIS SOFTWARE IS PROVIDED BY THE HDF GROUP AND THE CONTRIBUTORS
"AS IS" WITH NO WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED. In no
event shall The HDF Group or the Contributors be liable for any damages
suffered by the users arising out of the use of this software, even if
advised of the possibility of such damage.
"AS IS" WITH NO WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED. IN NO
EVENT SHALL THE HDF GROUP OR THE CONTRIBUTORS BE LIABLE FOR ANY DAMAGES
SUFFERED BY THE USERS ARISING OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
You are under no obligation whatsoever to provide any bug fixes, patches, or
upgrades to the features, functionality or performance of the source code
("Enhancements") to anyone; however, if you choose to make your Enhancements
available either publicly, or directly to The HDF Group, without imposing a
separate written license agreement for such Enhancements, then you hereby
grant the following license: a non-exclusive, royalty-free perpetual license
to install, use, modify, prepare derivative works, incorporate into other
computer software, distribute, and sublicense such enhancements or derivative
works thereof, in binary and source code form.
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
@@ -54,10 +54,110 @@ http://support.hdfgroup.org/ftp/HDF5/releases/COPYING_LBNL_HDF5.
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
Portions of HDF5 are Copyright (c) David Young. The applicable copyright
notice and licensing terms are reproduced here:
Copyright (c) 2004, 2005, 2006, 2007 David Young. All rights reserved.
This file contains code contributed by David Young.
Redistribution and use in source and binary forms, with or
without modification, are permitted provided that the following
conditions are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided
with the distribution.
THIS SOFTWARE IS PROVIDED BY DAVID YOUNG ``AS IS'' AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL DAVID
YOUNG BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
OF SUCH DAMAGE.
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
Portions of HDF5 are Copyright (c) Urbana-Champaign Independent Media Center.
The applicable copyright notice and licensing terms are reproduced here:
Copyright (c) 2004 Urbana-Champaign Independent Media Center.
All rights reserved.
Redistribution and use in source and binary forms, with or
without modification, are permitted provided that the following
conditions are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided
with the distribution.
THIS SOFTWARE IS PROVIDED BY THE URBANA-CHAMPAIGN INDEPENDENT
MEDIA CENTER ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE URBANA-CHAMPAIGN INDEPENDENT
MEDIA CENTER BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
Portions of HDF5 are Copyright (c) The Regents of the University of
California. The applicable copyright notice and licensing terms are
reproduced here:
Copyright (c) 1991, 1993
The Regents of the University of California. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. Neither the name of the University nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
Contributors: National Center for Supercomputing Applications (NCSA) at
the University of Illinois, Fortner Software, Unidata Program Center (netCDF),
The Independent JPEG Group (JPEG), Jean-loup Gailly and Mark Adler (gzip),
and Digital Equipment Corporation (DEC).
the University of Illinois, Fortner Software, Unidata Program Center
(netCDF), The Independent JPEG Group (JPEG), Jean-loup Gailly and Mark Adler
(gzip), and Digital Equipment Corporation (DEC).
-----------------------------------------------------------------------------
@@ -80,26 +180,27 @@ and/or accompanying materials:
for the operation of UC LLNL.
DISCLAIMER:
This work was prepared as an account of work sponsored by an agency of
the United States Government. Neither the United States Government nor
the University of California nor any of their employees, makes any
warranty, express or implied, or assumes any liability or responsibility
for the accuracy, completeness, or usefulness of any information,
apparatus, product, or process disclosed, or represents that its use
would not infringe privately- owned rights. Reference herein to any
specific commercial products, process, or service by trade name,
trademark, manufacturer, or otherwise, does not necessarily constitute
or imply its endorsement, recommendation, or favoring by the United
States Government or the University of California. The views and
opinions of authors expressed herein do not necessarily state or reflect
those of the United States Government or the University of California,
and shall not be used for advertising or product endorsement purposes.
THIS WORK WAS PREPARED AS AN ACCOUNT OF WORK SPONSORED BY AN AGENCY OF
THE UNITED STATES GOVERNMENT. NEITHER THE UNITED STATES GOVERNMENT NOR
THE UNIVERSITY OF CALIFORNIA NOR ANY OF THEIR EMPLOYEES, MAKES ANY
WARRANTY, EXPRESS OR IMPLIED, OR ASSUMES ANY LIABILITY OR RESPONSIBILITY
FOR THE ACCURACY, COMPLETENESS, OR USEFULNESS OF ANY INFORMATION,
APPARATUS, PRODUCT, OR PROCESS DISCLOSED, OR REPRESENTS THAT ITS USE
WOULD NOT INFRINGE PRIVATELY- OWNED RIGHTS. REFERENCE HEREIN TO ANY
SPECIFIC COMMERCIAL PRODUCTS, PROCESS, OR SERVICE BY TRADE NAME,
TRADEMARK, MANUFACTURER, OR OTHERWISE, DOES NOT NECESSARILY CONSTITUTE
OR IMPLY ITS ENDORSEMENT, RECOMMENDATION, OR FAVORING BY THE UNITED
STATES GOVERNMENT OR THE UNIVERSITY OF CALIFORNIA. THE VIEWS AND
OPINIONS OF AUTHORS EXPRESSED HEREIN DO NOT NECESSARILY STATE OR REFLECT
THOSE OF THE UNITED STATES GOVERNMENT OR THE UNIVERSITY OF CALIFORNIA,
AND SHALL NOT BE USED FOR ADVERTISING OR PRODUCT ENDORSEMENT PURPOSES.
-----------------------------------------------------------------------------
HDF5 is available with the SZIP compression library but SZIP is not part
of HDF5 and has separate copyright and license terms. See “Szip Compression
in HDF Products (https://support.hdfgroup.org/doc_resource/SZIP/) for further details.
of HDF5 and has separate copyright and license terms. See SZIP Compression
in HDF Products (www.hdfgroup.org/doc_resource/SZIP/) for further details.
-----------------------------------------------------------------------------

View File

@@ -19,25 +19,34 @@ set (CTEST_PROJECT_NAME "HDF5")
set (CTEST_NIGHTLY_START_TIME "18:00:00 CST")
set (CTEST_DROP_METHOD "http")
if (CDASH_LOCAL)
set (CTEST_DROP_SITE "cdash-internal.hdfgroup.org")
set (CTEST_DROP_LOCATION "/submit.php?project=HDF5Trunk")
if (CTEST_DROP_SITE_INIT)
set (CTEST_DROP_SITE "${CTEST_DROP_SITE_INIT}")
else ()
set (CTEST_DROP_SITE "cdash.hdfgroup.org")
set (CTEST_DROP_LOCATION "/submit.php?project=HDF5")
if (CDASH_LOCAL)
set (CTEST_DROP_SITE "cdash-internal.hdfgroup.org")
else ()
set (CTEST_DROP_SITE "cdash.hdfgroup.org")
endif ()
endif ()
if (CTEST_DROP_LOCATION_INIT)
set (CTEST_DROP_LOCATION "${CTEST_DROP_LOCATION_INIT}")
else ()
if (CDASH_LOCAL)
set (CTEST_DROP_LOCATION "/submit.php?project=HDF5Trunk")
else ()
set (CTEST_DROP_LOCATION "/submit.php?project=HDF5")
endif ()
endif ()
set (CTEST_DROP_SITE_CDASH TRUE)
set (UPDATE_TYPE git)
set (VALGRIND_COMMAND "/usr/bin/valgrind")
set (VALGRIND_COMMAND_OPTIONS "-v --tool=memcheck --leak-check=full --track-fds=yes --num-callers=50 --show-reachable=yes --track-origins=yes --malloc-fill=0xff --free-fill=0xfe")
set (CTEST_MEMORYCHECK_COMMAND "/usr/bin/valgrind")
set (CTEST_MEMORYCHECK_COMMAND_OPTIONS "-v --tool=memcheck --leak-check=full --track-fds=yes --num-callers=50 --show-reachable=yes --track-origins=yes --malloc-fill=0xff --free-fill=0xfe")
set (CTEST_TEST_TIMEOUT 600 CACHE STRING
set (CTEST_TEST_TIMEOUT 1200 CACHE STRING
"Maximum time allowed before CTest will kill the test.")
set (DART_TESTING_TIMEOUT 600 CACHE STRING
set (DART_TESTING_TIMEOUT 1200 CACHE STRING
"Maximum time allowed before CTest will kill the test." FORCE)
SET(CTEST_SUBMIT_RETRY_DELAY 20 CACHE STRING
set (CTEST_SUBMIT_RETRY_DELAY 20 CACHE STRING
"How long to wait between timed-out CTest submissions.")

447
MANIFEST

File diff suppressed because it is too large Load Diff

View File

@@ -13,7 +13,7 @@
## Makefile.am
## Run automake to generate a Makefile.in from this file.
##
#
#
# This makefile mostly just reinvokes make in the various subdirectories
# but does so in the correct order. You can alternatively invoke make from
# each subdirectory manually.
@@ -45,15 +45,10 @@ include $(top_srcdir)/config/commence.am
# Since we're explicitly listing DIST_SUBDIRS, we also need to list
# directories that are only conditionally built (so that their Makefiles
# are cleaned as well).
# Note that `make clean' will not affect the examples or doc directories.
# Note that `make clean' will not affect the examples or doc directories.
# Conditionals. These conditionals are defined during configure
# Define each variable to empty if it is not used to placate pmake
if BUILD_PARALLEL_CONDITIONAL
TESTPARALLEL_DIR =testpar
else
TESTPARALLEL_DIR=
endif
if BUILD_CXX_CONDITIONAL
CXX_DIR =c++
else
@@ -74,10 +69,25 @@ if BUILD_HDF5_HL_CONDITIONAL
else
HDF5_HL_DIR=
endif
if BUILD_TESTS_CONDITIONAL
TESTSERIAL_DIR =test
else
TESTSERIAL_DIR=
endif
if BUILD_TESTS_PARALLEL_CONDITIONAL
TESTPARALLEL_DIR =testpar
else
TESTPARALLEL_DIR=
endif
if BUILD_TOOLS_CONDITIONAL
TOOLS_DIR =tools
else
TOOLS_DIR=
endif
SUBDIRS = src test $(TESTPARALLEL_DIR) tools . $(CXX_DIR) $(FORTRAN_DIR) \
$(JAVA_DIR) $(HDF5_HL_DIR)
DIST_SUBDIRS = src test testpar tools . c++ fortran hl examples java
SUBDIRS = src $(TESTSERIAL_DIR) $(TESTPARALLEL_DIR) bin utils $(TOOLS_DIR) . \
$(CXX_DIR) $(FORTRAN_DIR) $(JAVA_DIR) $(HDF5_HL_DIR)
DIST_SUBDIRS = src test testpar utils tools . c++ fortran hl examples java
# Some files generated during configure that should be cleaned
DISTCLEANFILES=config/stamp1 config/stamp2
@@ -123,7 +133,7 @@ mostlyclean-local:
# 'make install' will now install examples, the same as 'make install-all'.
# 'make-install-all' will be redundant but will still work.
install: install-recursive install-examples
uninstall: uninstall-recursive uninstall-examples
uninstall: uninstall-recursive uninstall-examples
# 'make install-all' also installs examples
install-all:
@@ -144,7 +154,7 @@ install-doc:
uninstall-doc:
@echo "docs no longer live in this tree. Use install-examples to install examples."
# `make check-install' or `make installcheck' checks that examples can
# `make check-install' or `make installcheck' checks that examples can
# be successfully built
installcheck-local:
if test -n "${DESTDIR}"; then \
@@ -180,7 +190,17 @@ trace:
# Run tests with different Virtual File Drivers.
# Currently, only invoke check-vfd in the test directory.
check-vfd:
for d in src test; do \
for d in src utils test; do \
if test $$d != .; then \
(cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
fi; \
done
# Run tests with different passthrough Virtual Object Layer Connectors.
# NOTE: Will only succeed with passthrough VOL connectors that use
# the native VOL connector as the terminal connector.
check-passthrough-vol:
for d in $(SUBDIRS); do \
if test $$d != .; then \
(cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
fi; \

1219
Makefile.in Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,4 @@
HDF5 version 1.11.2 currently under development
HDF5 version 1.13.0 currently under development
------------------------------------------------------------------------------
Please refer to the release_docs/INSTALL file for installation instructions.
@@ -7,8 +7,8 @@ Please refer to the release_docs/INSTALL file for installation instructions.
THE HDF GROUP
---------------
The HDF Group is the developer of HDF5®, a high-performance software library and
data format that has been adopted across multiple industries and has become a
The HDF Group is the developer of HDF5®, a high-performance software library and
data format that has been adopted across multiple industries and has become a
de facto standard in scientific and research communities.
More information about The HDF Group, the HDF5 Community and the HDF5 software
@@ -19,21 +19,21 @@ project, tools and services can be found at the Group's website.
DOCUMENTATION
-------------
This release is fully functional for the API described in the documentation.
This release is fully functional for the API described in the documentation.
https://portal.hdfgroup.org/display/HDF5/The+HDF5+API
Full Documentation and Programming Resources for this release can be found at
https://portal.hdfgroup.org/display/HDF5
See the RELEASE.txt file in the release_docs/ directory for information specific
to the features and updates included in this release of the library.
See the RELEASE.txt file in the release_docs/ directory for information specific
to the features and updates included in this release of the library.
Several more files are located within the release_docs/ directory with specific
Several more files are located within the release_docs/ directory with specific
details for several common platforms and configurations.
INSTALL - Start Here. General instructions for compiling and installing the library
INSTALL_CMAKE - instructions for building with CMake (Kitware.com)
INSTALL_parallel - instructions for building and configuring Parallel HDF5
INSTALL_parallel - instructions for building and configuring Parallel HDF5
INSTALL_Windows and INSTALL_Cygwin - MS Windows installations.
@@ -48,7 +48,7 @@ Information regarding Help Desk and Support services is available at
FORUM and NEWS
--------------
The following public forums are provided for public announcements and discussions
The following public forums are provided for public announcements and discussions
of interest to the general HDF5 Community.
Homepage of the Forum
@@ -59,10 +59,10 @@ of interest to the general HDF5 Community.
HDF5 and HDF4 Topics
https://forum.hdfgroup.org/c/hdf5
These forums are provided as an open and public service for searching and reading.
Posting requires completing a simple registration and allows one to join in the
conversation. Please read the following instructions pertaining to the Forum's
These forums are provided as an open and public service for searching and reading.
Posting requires completing a simple registration and allows one to join in the
conversation. Please read the following instructions pertaining to the Forum's
use and configuration
https://forum.hdfgroup.org/t/quickstart-guide-welcome-to-the-new-hdf-forum

1208
aclocal.m4 vendored Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -21,9 +21,9 @@ dnl -------------------------------------------------------------------------
dnl _AC_SYS_LARGEFILE_MACRO_VALUE
dnl
dnl The following macro overrides the autoconf macro of the same name
dnl with this custom definition. This macro performs the same checks as
dnl with this custom definition. This macro performs the same checks as
dnl autoconf's native _AC_SYS_LARGEFILE_MACRO_VALUE, but will also set
dnl AM_CPPFLAGS with the appropriate -D defines so additional configure
dnl AM_CPPFLAGS with the appropriate -D defines so additional configure
dnl sizeof checks do not fail.
dnl
# _AC_SYS_LARGEFILE_MACRO_VALUE(C-MACRO, VALUE,

57
bin/Makefile.am Normal file
View File

@@ -0,0 +1,57 @@
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
##
## Makefile.am
## Run automake to generate a Makefile.in from this file.
#
# HDF5 Library Makefile(.in)
#
include $(top_srcdir)/config/commence.am
# Include src directory
AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/tools/lib
# These are our main targets
bin_SCRIPTS=h5redeploy
# Tell automake to clean h5redeploy script
CLEANFILES=h5redeploy
# These were generated by configure. Remove them only when distclean.
DISTCLEANFILES=h5cc
# All programs rely on hdf5 library and h5tools library
LDADD=$(LIBH5TOOLS) $(LIBHDF5)
# How to build h5redeploy script
h5redeploy: h5redeploy.in
@cp $(srcdir)/$@.in $@
# h5cc needs custom install and uninstall rules, since it may be
# named h5pcc if hdf5 is being built in parallel mode.
if BUILD_PARALLEL_CONDITIONAL
H5CC_NAME=h5pcc
else
H5CC_NAME=h5cc
endif
$(DESTDIR)$(bindir):
echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
$(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1;
install-exec-local: $(DESTDIR)$(bindir)
@$(INSTALL) h5cc $(DESTDIR)$(bindir)/$(H5CC_NAME)
uninstall-local:
@$(RM) $(DESTDIR)$(bindir)/$(H5CC_NAME)
include $(top_srcdir)/config/conclude.am

1406
bin/Makefile.in Normal file

File diff suppressed because it is too large Load Diff

21
bin/batch/ctest.qsub.in.cmake Executable file
View File

@@ -0,0 +1,21 @@
#!/bin/bash -l
if [ $# -gt 0 ]; then
SUMMARY_FILE=$1
fi
ACCOUNT_ID=@ACCOUNT_ID@
echo "Run parallel test command. Test output will be in build/${SUMMARY_FILE}"
CTEST_CMD=`which ctest`
#SKIPTESTS <<KEYWORD:script inserts list of skips tests here -- don't remove>>
cd @HDF5_BINARY_DIR@
if [[ $SUMMARY_FILE == *"ctestS"* ]]; then
CMD="${CTEST_CMD} . -E MPI_TEST_ -C Release -j 32 -T test"
else
CMD="${CTEST_CMD} . -R MPI_TEST_ ${SKIP_TESTS} -C Release -T test"
fi
qsub -t 60 -n 1 -q debug-flat-quad -A ${ACCOUNT_ID} ${CMD} >& ${SUMMARY_FILE}
echo "Done running ctest parallel command."

View File

@@ -0,0 +1,19 @@
#!/bin/tcsh
### LSF syntax
#BSUB -nnodes 1 #number of nodes
#BSUB -W 30 #walltime in minutes
#BSUB -G guests #account
#BSUB -e ctestPerrors.txt #stderr
#BSUB -o ctestPoutput.txt #stdout
#BSUB -J hdf5_ctestP #job
##BSUB -q pbatch #queue to use
#BSUB -q pdebug
##date; hostname
##echo -n 'JobID is '; echo $LSB_JOBID
cd @HDF5_BINARY_DIR@
echo "Run parallel test command. Test output will be in build/ctestP.out"
ctest . -R MPI_TEST_ -C Release -T test >& ctestP.out
echo "Done running ctest parallel command."

View File

@@ -0,0 +1,14 @@
#!/bin/bash
#SBATCH --nodes=1
#SBATCH -t 00:30:00
#SBATCH --mail-type=BEGIN,END,FAIL
##SBATCH --mail-user=<username>@sandia.gov
#SBATCH --export=ALL
#SBATCH --job-name=h5_ctestP
cd @HDF5_BINARY_DIR@
ctest . -R MPI_TEST_ -C Release -T test >& ctestP.out
echo "Done running ctestP.sl"

View File

@@ -0,0 +1,18 @@
#!/bin/tcsh
### LSF syntax
#BSUB -nnodes 1 #number of nodes
#BSUB -W 29 #walltime in minutes
#BSUB -G guests #account
#BSUB -e ctestSerrors.txt #stderr
#BSUB -o ctestSoutput.txt #stdout
#BSUB -J hdf5_ctestS #job
##BSUB -q pbatch #queue to use
#BSUB -q pdebug
cd @HDF5_BINARY_DIR@
echo "Run command. Test output will be in build/ctestS.out"
ctest . -E MPI_TEST_ -C Release -j 32 -T test >& ctestS.out
##$CMD >& ctestS.out
echo "Done running command."

View File

@@ -0,0 +1,15 @@
#!/bin/bash
#SBATCH --nodes=1
#SBATCH -t 00:30:00
#SBATCH --mail-type=BEGIN,END,FAIL
##SBATCH --mail-user=<username>@sandia.gov
#SBATCH --export=ALL
#SBATCH --job-name=h5_ctestS
cd @HDF5_BINARY_DIR@
CMD="ctest . -E MPI_TEST_ -C Release -j 32 -T test"
echo "Run $CMD. Test output will be in build/ctestS.out"
$CMD >& ctestS.out
echo "Done running $CMD"

View File

@@ -0,0 +1,20 @@
#!/bin/bash
#SBATCH -p knl -C quad
#SBATCH --nodes=1
#SBATCH -t 00:10:00
#SBATCH --mail-type=BEGIN,END,FAIL
#SBATCH --mail-user=<username>@sandia.gov
#SBATCH --export=ALL
#SBATCH --job-name=knl_h5detect
# Inputs: Build directory, output file name, executable file name (username/email if available).
PROGNAME=H5detect
OUTPUT=H5Tinit.c
CMD="@HDF5_BINARY_DIR@/bin/${PROGNAME} @HDF5_GENERATED_SOURCE_DIR@/${OUTPUT}"
echo "Run $CMD"
srun -n 1 $CMD
echo "Done running $CMD"

View File

@@ -0,0 +1,16 @@
#!/bin/bash
#SBATCH -p knl -C quad,cache
#SBATCH --nodes=1
#SBATCH -t 00:30:00
#SBATCH --mail-type=BEGIN,END,FAIL
##SBATCH --mail-user=<username>@sandia.gov
#SBATCH --export=ALL
#SBATCH --job-name=h5_ctestP
cd @HDF5_BINARY_DIR@
#run parallel tests except t_cache_image test
ctest . -R MPI_TEST_ -C Release -T test >& ctestP.out
echo "Done running $CMD"

View File

@@ -0,0 +1,17 @@
#!/bin/bash
#SBATCH -p knl -C quad,cache
#SBATCH --nodes=1
#SBATCH -t 00:30:00
#SBATCH --mail-type=BEGIN,END,FAIL
##SBATCH --mail-user=<username>@sandia.gov
#SBATCH --export=ALL
#SBATCH --job-name=h5_ctestS
cd @HDF5_BINARY_DIR@
CMD="ctest . -E MPI_TEST_ -C Release -j 32 -T test"
echo "Run $CMD. Test output will be in build/ctestS.out"
$CMD >& ctestS.out
echo "Done running $CMD"

View File

@@ -0,0 +1,20 @@
#!/bin/tcsh
### LSF syntax
#BSUB -n 6 #number of nodes
#BSUB -R "span[ptile=6]"
#BSUB -W 30 #walltime in minutes
#BSUB -G guests #account
#BSUB -e ctestPerrors.txt #stderr
#BSUB -o ctestPoutput.txt #stdout
#BSUB -J hdf5_ctestP #job
##BSUB -q pbatch #queue to use
#BSUB -q pdebug
##date; hostname
##echo -n 'JobID is '; echo $LSB_JOBID
cd @HDF5_BINARY_DIR@
echo "Run parallel test command. Test output will be in build/ctestP.out"
ctest . -R 'MPI_TEST_' -C Release -T test >& ctestP.out
echo "Done running ctest parallel command."

View File

@@ -0,0 +1,18 @@
#!/bin/tcsh
### LSF syntax
#BSUB -n 1 #number of nodes
#BSUB -W 29 #walltime in minutes
#BSUB -G guests #account
#BSUB -e ctestSerrors.txt #stderr
#BSUB -o ctestSoutput.txt #stdout
#BSUB -J hdf5_ctestS #job
##BSUB -q pbatch #queue to use
#BSUB -q pdebug
cd @HDF5_BINARY_DIR@
echo "Run command. Test output will be in build/ctestS.out"
ctest . -E 'MPI_TEST_' -C Release -j 32 -T test >& ctestS.out
##$CMD >& ctestS.out
echo "Done running command."

7
bin/batch/raybsub Executable file
View File

@@ -0,0 +1,7 @@
#!/bin/tcsh
# ray.llnl.gov requires a '<' with bsub for submitting .lsf batch jobs.
# CMake is reluctant to pass the '<', so we put it in this script and use
# the script to submit the bsub command on ray.
bsub < $1

View File

@@ -1,4 +1,4 @@
#!/usr/bin/perl -w
#!/usr/bin/env perl
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
@@ -13,6 +13,8 @@
#
require 5.003;
use warnings;
# Purpose: insures that API functions aren't called internally.
# Usage: checkapi H5*.c
my $filename = "";

View File

@@ -1,5 +1,6 @@
#!/usr/bin/perl -w
#!/usr/bin/env perl
require 5.003;
use warnings;
#
# Copyright by The HDF Group.
@@ -13,101 +14,165 @@ require 5.003;
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
# Robb Matzke, matzke@llnl.gov
# 30 Aug 1997
# Dana Robinson
# Spring 2019
# (Original by Robb Matzke)
#
# Purpose: Given the names of C source files this script will print the
# file name, line number, and function name of any function that
# doesn't begin with the letter `h' or `H' as stipulated by the
# HDF5 programming style guide.
# Purpose: Given the names of C source files this script will print the
# file name, line number, and function name of any function that
# doesn't begin with the letter 'h' or 'H' as stipulated by the
# HDF5 programming style guide.
#
# Emacs users can run this script as the compile command and
# use `next-error' (usually bound to M-`) to find each name
# violation.
# Emacs users can run this script as the compile command and
# use 'next-error' (usually bound to M-`) to find each name
# violation.
if(<>) {
if($ARGV =~ /\//) {
($filename) = ($ARGV =~ /^.*\/([A-Za-z0-9_]*)\.c$/);
} else {
($filename) = ($ARGV =~ /([A-Za-z0-9_]*)\.c$/);
use File::Basename;
# Loop over all files passed to the function
foreach $arg (@ARGV) {
# Get the filename from the path
$filename = fileparse($arg);
# Skip files that don't include H5private.h
# H5system. has to be inspected by hand since it wraps POSIX files
#
# H5detect and H5make_libsettings are created before the library exists
# so calls that link to function replacements won't work. We'll ignore
# it here.
#
# If a user specifies one file, process it no matter what so people
# can inspect files we normally skip (like H5system.c).
if($#ARGV gt 0 and $filename =~ /H5FDmulti|H5FDstdio|H5VLpassthru|H5system|H5detect|H5make_libsettings/) {
print "$filename is exempt from using Standard library macro wrappers\n";
next;
}
if($filename =~ /H5FDmulti|H5FDstdio/) {
print "$ARGV is exempt from using Standard library macro wrappers\n";
} else {
while (<>) {
# Open the file
open(my $fh, "<", $arg) or do {
warn "NOTE: Unable to open $arg: !$\n";
next;
};
# Get rid of comments by removing the inside part.
s|/\*.*?\*/||g;
if ($in_comment) {
if (/\*\//) {
s|.*?\*/||;
$in_comment = 0;
} else {
$_="\n";
}
} elsif (m|/\*|) {
s|/\*.*||;
$in_comment = 1;
}
# Loop over all lines in the file to find undecorated functions
while (<$fh>) {
# Get rid of string constants if they begin and end on this line.
s/([\'\"])([^\1]|\\\1)*?\1/$1$1/g;
# Get rid of preprocessor directives
s/^\#.*//;
# Skip callbacks invoked as methods in a struct
next if $_ =~ /\b(\)?->|\.)\(?([a-z_A-Z]\w*)\s*\(/;
# Now find all function calls on this line which don't start with 'H'
while (($name)=/\b([a-z_A-GI-Z]\w*)\s*\(/) {
$_ = $';
# Ignore C statements that look sort of like function
# calls.
next if $name =~ /^(if|for|offsetof|return|sizeof|switch|while|void)$/;
# Ignore things that get misdetected because of the simplified
# parsing that takes place here.
next if $name =~ /^(int|herr_t|_term_interface)$/;
# These are really HDF5 functions/macros even though they don't
# start with `h' or `H'.
next if $name =~ /^FUNC_(ENTER|LEAVE)(_(NO)?API|_PACKAGE|_STATIC)?(_NOFS|_NOCLEAR|_NOINIT)?(_NOFUNC|_TAG)?$/;
next if $name =~ /^(BEGIN|END)_FUNC$/;
next if $name =~ /^U?INT(8|16|32|64)(ENCODE|DECODE)(_VAR)?$/;
next if $name =~ /^CI_(PRINT_STATS|INC_SRC|INC_DST)$/;
next if $name =~ /^(ABS|ADDR_OVERFLOW|ALL_MEMBERS|BOUND|CONSTR|DETECT_[I|F|M]|DOWN)$/;
next if $name =~ /^(MIN3?|MAX3?|NELMTS|POWER_OF_TWO|REGION_OVERFLOW)$/;
next if $name =~ /^(UNIQUE_MEMBERS)$/;
next if $name =~ /^addr_defined$/;
# These functions/macros are exempt.
next if $name =~ /^(main|[fs]?printf|va_(start|arg|end))$/;
# These are Windows system calls. Ignore them.
next if $name =~ /^(_get_osfhandle|GetFileInformationByHandle|SetFilePointer|GetLastError|SetEndOfFile)$/;
next if $name =~ /^(FindNextFile|FindClose|_tzset|Wgettimeofday|GetSystemTimeAsFileTime|Wgetlogin|GetUserName)$/;
# These are MPI function calls. Ignore them.
next if $name =~ /^(MPI_|MPE_)/;
# These are POSIX threads function calls. Ignore them.
next if $name =~ /^pthread_/;
# These are Windows threads function calls. Ignore them.
next if $name =~ /^(_beginthread|(Initialize|Enter|Leave)CriticalSection|TlsAlloc)$/;
# These are zlib & szlib function calls. Ignore them.
next if $name =~ /^(inflate|SZ_)/;
next if $name =~ /^compress2$/;
print "$ARGV:$.: $name\n";
}
} continue {
close ARGV if eof; # reset line number
# Get rid of comments by removing the inside part.
s|/\*.*?\*/||g;
if ($in_comment) {
if (/\*\//) {
s|.*?\*/||;
$in_comment = 0;
} else {
$_="\n";
}
} elsif (m|/\*|) {
s|/\*.*||;
$in_comment = 1;
}
# Get rid of string constants if they begin and end on this line.
s/([\'\"])([^\1]|\\\1)*?\1/$1$1/g;
# Get rid of preprocessor directives
s/^\#.*//;
# Skip callbacks invoked as methods in a struct
next if $_ =~ /\b(\)?]?->|\.)\(?([a-z_A-Z]\w*)\s*\(/;
# Now find all function calls on this line which don't start with 'H'
while (($name)=/\b([a-z_A-GI-Z]\w*)\s*\(/) {
$_ = $';
# Ignore C statements that look sort of like function
# calls.
next if $name =~ /^(if|for|offsetof|return|sizeof|switch|while|void)$/;
# Ignore things that get misdetected because of the simplified
# parsing that takes place here.
next if $name =~ /^(int|herr_t|_term_interface|_term_package)$/;
# These are really HDF5 functions/macros even though they don't
# start with `h' or `H'.
next if $name =~ /^FUNC_(ENTER|LEAVE)(_(NO)?API|_PACKAGE|_STATIC)?(_NOFS|_NOCLEAR|_NOINIT)?(_NOFUNC|_TAG)?$/;
next if $name =~ /^(BEGIN|END)_FUNC$/;
next if $name =~ /^U?INT(8|16|32|64)(ENCODE|DECODE)(_VAR)?$/;
next if $name =~ /^CI_(PRINT_STATS|INC_SRC|INC_DST)$/;
next if $name =~ /^(ABS|ADDR_OVERFLOW|ALL_MEMBERS|BOUND|CONSTR|DETECT_[I|F|M]|DOWN)$/;
next if $name =~ /^(MIN3?|MAX3?|NELMTS|POWER_OF_TWO|REGION_OVERFLOW)$/;
next if $name =~ /^(UNIQUE_MEMBERS|S_ISDIR)$/;
next if $name =~ /^addr_defined$/;
# These functions/macros are exempt.
# op, cb, and OP are often spuriously flagged so ignore them.
next if $name =~ /^(main|op|cb|OP)$/;
# This often appears in preprocessor lines that span multiple lines
next if $name =~ /^(defined)$/;
# These are Windows system calls. Ignore them.
next if $name =~ /^(_get_osfhandle|GetFileInformationByHandle|SetFilePointer|GetLastError|SetEndOfFile)$/;
next if $name =~ /^(FindNextFile|FindClose|_tzset|Wgettimeofday|GetSystemTimeAsFileTime|Wgetlogin|GetUserName)$/;
next if $name =~ /^(DeleteCriticalSection|TlsFree|TlsGetValue|CreateThread)$/;
next if $name =~ /^(ExpandEnvironmentStringsA|LockFileEx|UnlockFileEx)$/;
next if $name =~ /^(DllMain|LocalAlloc|LocalFree)$/;
next if $name =~ /^(FindFirstFileA|FindNextFileA)$/;
next if $name =~ /^(_beginthread|(Initialize|Enter|Leave)CriticalSection|TlsAlloc)$/;
# These are MPI function calls. Ignore them.
next if $name =~ /^(MPI_|MPE_)/;
# These are POSIX threads function calls. Ignore them.
next if $name =~ /^pthread_/;
# These are zlib & szlib function calls. Ignore them.
next if $name =~ /^(inflate|SZ_)/;
next if $name =~ /^compress2$/;
# These is an H5Dfill function. Ignore it in this file.
if($filename =~ /H5Dfill/) {
next if $name =~ /^(alloc_func)$/;
}
# These are H5Zscaleoffset functions. Ignore them in this file.
if($filename =~ /H5Zscaleoffset/) {
next if $name =~ /^(pow_fun|round_fun|abs_fun|lround_fun|llround_fun)$/;
}
# TESTING (not comprehensive - just noise reduction)
# Test macros and functions (testhdf5.h)
next if $name =~ /^(AddTest|TestErrPrintf|TestSummary|TestCleanup|TestShutdown)$/;
next if $name =~ /^(CHECK|CHECK_PTR|CHECK_PTR_NULL|CHECK_PTR_EQ|CHECK_I)$/;
next if $name =~ /^(VERIFY|VERIFY_STR|VERIFY|TYPE|MESSAGE|ERROR)$/;
# Test macros and functions (h5test.h)
next if $name =~ /^(TESTING|PASSED|SKIPPED|FAIL_PUTS_ERROR|FAIL_STACK_ERROR|TEST_ERROR)$/;
next if $name =~ /^(GetTestExpress)$/;
# Ignore functions that start with test_ or check_
next if $name =~ /^test_/;
next if $name =~ /^check_/;
# Ignore functions that start with h5_
next if $name =~ /^h5_/;
# Ignore usage functions
next if $name =~ /^usage$/;
print "$filename:$.: $name\n";
}
}
# Close the file
close($fh);
}
if($#ARGV gt 0) {
print "\n";
print "NOTE:\n";
print "If any files were skipped due to being exempt, you can inspect them manually\n";
print "by using this script on them one at a time, which will always process the file.\n";
}

347
bin/compile Executable file
View File

@@ -0,0 +1,347 @@
#! /bin/sh
# Wrapper for compilers which do not understand '-c -o'.
scriptversion=2012-10-14.11; # UTC
# Copyright (C) 1999-2014 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
nl='
'
# We need space, tab and new line, in precisely that order. Quoting is
# there to prevent tools from complaining about whitespace usage.
IFS=" "" $nl"
file_conv=
# func_file_conv build_file lazy
# Convert a $build file to $host form and store it in $file
# Currently only supports Windows hosts. If the determined conversion
# type is listed in (the comma separated) LAZY, no conversion will
# take place.
func_file_conv ()
{
file=$1
case $file in
/ | /[!/]*) # absolute file, and not a UNC file
if test -z "$file_conv"; then
# lazily determine how to convert abs files
case `uname -s` in
MINGW*)
file_conv=mingw
;;
CYGWIN*)
file_conv=cygwin
;;
*)
file_conv=wine
;;
esac
fi
case $file_conv/,$2, in
*,$file_conv,*)
;;
mingw/*)
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
;;
cygwin/*)
file=`cygpath -m "$file" || echo "$file"`
;;
wine/*)
file=`winepath -w "$file" || echo "$file"`
;;
esac
;;
esac
}
# func_cl_dashL linkdir
# Make cl look for libraries in LINKDIR
func_cl_dashL ()
{
func_file_conv "$1"
if test -z "$lib_path"; then
lib_path=$file
else
lib_path="$lib_path;$file"
fi
linker_opts="$linker_opts -LIBPATH:$file"
}
# func_cl_dashl library
# Do a library search-path lookup for cl
func_cl_dashl ()
{
lib=$1
found=no
save_IFS=$IFS
IFS=';'
for dir in $lib_path $LIB
do
IFS=$save_IFS
if $shared && test -f "$dir/$lib.dll.lib"; then
found=yes
lib=$dir/$lib.dll.lib
break
fi
if test -f "$dir/$lib.lib"; then
found=yes
lib=$dir/$lib.lib
break
fi
if test -f "$dir/lib$lib.a"; then
found=yes
lib=$dir/lib$lib.a
break
fi
done
IFS=$save_IFS
if test "$found" != yes; then
lib=$lib.lib
fi
}
# func_cl_wrapper cl arg...
# Adjust compile command to suit cl
func_cl_wrapper ()
{
# Assume a capable shell
lib_path=
shared=:
linker_opts=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
eat=1
case $2 in
*.o | *.[oO][bB][jJ])
func_file_conv "$2"
set x "$@" -Fo"$file"
shift
;;
*)
func_file_conv "$2"
set x "$@" -Fe"$file"
shift
;;
esac
;;
-I)
eat=1
func_file_conv "$2" mingw
set x "$@" -I"$file"
shift
;;
-I*)
func_file_conv "${1#-I}" mingw
set x "$@" -I"$file"
shift
;;
-l)
eat=1
func_cl_dashl "$2"
set x "$@" "$lib"
shift
;;
-l*)
func_cl_dashl "${1#-l}"
set x "$@" "$lib"
shift
;;
-L)
eat=1
func_cl_dashL "$2"
;;
-L*)
func_cl_dashL "${1#-L}"
;;
-static)
shared=false
;;
-Wl,*)
arg=${1#-Wl,}
save_ifs="$IFS"; IFS=','
for flag in $arg; do
IFS="$save_ifs"
linker_opts="$linker_opts $flag"
done
IFS="$save_ifs"
;;
-Xlinker)
eat=1
linker_opts="$linker_opts $2"
;;
-*)
set x "$@" "$1"
shift
;;
*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
func_file_conv "$1"
set x "$@" -Tp"$file"
shift
;;
*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
func_file_conv "$1" mingw
set x "$@" "$file"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -n "$linker_opts"; then
linker_opts="-link$linker_opts"
fi
exec "$@" $linker_opts
exit 1
}
eat=
case $1 in
'')
echo "$0: No command. Try '$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: compile [--help] [--version] PROGRAM [ARGS]
Wrapper for compilers which do not understand '-c -o'.
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
arguments, and rename the output as expected.
If you are trying to build a whole package this is not the
right script to run: please start by reading the file 'INSTALL'.
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "compile $scriptversion"
exit $?
;;
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
func_cl_wrapper "$@" # Doesn't return...
;;
esac
ofile=
cfile=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
# So we strip '-o arg' only if arg is an object.
eat=1
case $2 in
*.o | *.obj)
ofile=$2
;;
*)
set x "$@" -o "$2"
shift
;;
esac
;;
*.c)
cfile=$1
set x "$@" "$1"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -z "$ofile" || test -z "$cfile"; then
# If no '-o' option was seen then we might have been invoked from a
# pattern rule where we don't need one. That is ok -- this is a
# normal compilation that the losing compiler can handle. If no
# '.c' file was seen then we are probably linking. That is also
# ok.
exec "$@"
fi
# Name of file we expect compiler to create.
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
# Create the lock directory.
# Note: use '[/\\:.-]' here to ensure that we don't use the same name
# that we are using for the .o file. Also, base the name on the expected
# object file name, since that is what matters with a parallel build.
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
while true; do
if mkdir "$lockdir" >/dev/null 2>&1; then
break
fi
sleep 1
done
# FIXME: race condition here if user kills between mkdir and trap.
trap "rmdir '$lockdir'; exit 1" 1 2 15
# Run the compile.
"$@"
ret=$?
if test -f "$cofile"; then
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
elif test -f "${cofile}bj"; then
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
fi
rmdir "$lockdir"
exit $ret
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

1480
bin/config.guess vendored Executable file

File diff suppressed because it is too large Load Diff

1801
bin/config.sub vendored Executable file

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,4 @@
#!/usr/bin/perl
#!/usr/bin/env perl
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.

791
bin/depcomp Executable file
View File

@@ -0,0 +1,791 @@
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
scriptversion=2016-01-11.22; # UTC
# Copyright (C) 1999-2017 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
case $1 in
'')
echo "$0: No command. Try '$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
Run PROGRAMS ARGS to compile a file, generating dependencies
as side-effects.
Environment variables:
depmode Dependency tracking mode.
source Source file read by 'PROGRAMS ARGS'.
object Object file output by 'PROGRAMS ARGS'.
DEPDIR directory where to store dependencies.
depfile Dependency file to output.
tmpdepfile Temporary file to use when outputting dependencies.
libtool Whether libtool is used (yes/no).
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "depcomp $scriptversion"
exit $?
;;
esac
# Get the directory component of the given path, and save it in the
# global variables '$dir'. Note that this directory component will
# be either empty or ending with a '/' character. This is deliberate.
set_dir_from ()
{
case $1 in
*/*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;
*) dir=;;
esac
}
# Get the suffix-stripped basename of the given path, and save it the
# global variable '$base'.
set_base_from ()
{
base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`
}
# If no dependency file was actually created by the compiler invocation,
# we still have to create a dummy depfile, to avoid errors with the
# Makefile "include basename.Plo" scheme.
make_dummy_depfile ()
{
echo "#dummy" > "$depfile"
}
# Factor out some common post-processing of the generated depfile.
# Requires the auxiliary global variable '$tmpdepfile' to be set.
aix_post_process_depfile ()
{
# If the compiler actually managed to produce a dependency file,
# post-process it.
if test -f "$tmpdepfile"; then
# Each line is of the form 'foo.o: dependency.h'.
# Do two passes, one to just change these to
# $object: dependency.h
# and one to simply output
# dependency.h:
# which is needed to avoid the deleted-header problem.
{ sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"
sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"
} > "$depfile"
rm -f "$tmpdepfile"
else
make_dummy_depfile
fi
}
# A tabulation character.
tab=' '
# A newline character.
nl='
'
# Character ranges might be problematic outside the C locale.
# These definitions help.
upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
lower=abcdefghijklmnopqrstuvwxyz
digits=0123456789
alpha=${upper}${lower}
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
echo "depcomp: Variables source, object and depmode must be set" 1>&2
exit 1
fi
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
depfile=${depfile-`echo "$object" |
sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
rm -f "$tmpdepfile"
# Avoid interferences from the environment.
gccflag= dashmflag=
# Some modes work just like other modes, but use different flags. We
# parameterize here, but still list the modes in the big case below,
# to make depend.m4 easier to write. Note that we *cannot* use a case
# here, because this file can only contain one case statement.
if test "$depmode" = hp; then
# HP compiler uses -M and no extra arg.
gccflag=-M
depmode=gcc
fi
if test "$depmode" = dashXmstdout; then
# This is just like dashmstdout with a different argument.
dashmflag=-xM
depmode=dashmstdout
fi
cygpath_u="cygpath -u -f -"
if test "$depmode" = msvcmsys; then
# This is just like msvisualcpp but w/o cygpath translation.
# Just convert the backslash-escaped backslashes to single forward
# slashes to satisfy depend.m4
cygpath_u='sed s,\\\\,/,g'
depmode=msvisualcpp
fi
if test "$depmode" = msvc7msys; then
# This is just like msvc7 but w/o cygpath translation.
# Just convert the backslash-escaped backslashes to single forward
# slashes to satisfy depend.m4
cygpath_u='sed s,\\\\,/,g'
depmode=msvc7
fi
if test "$depmode" = xlc; then
# IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.
gccflag=-qmakedep=gcc,-MF
depmode=gcc
fi
case "$depmode" in
gcc3)
## gcc 3 implements dependency tracking that does exactly what
## we want. Yay! Note: for some reason libtool 1.4 doesn't like
## it if -MD -MP comes after the -MF stuff. Hmm.
## Unfortunately, FreeBSD c89 acceptance of flags depends upon
## the command line argument order; so add the flags where they
## appear in depend2.am. Note that the slowdown incurred here
## affects only configure: in makefiles, %FASTDEP% shortcuts this.
for arg
do
case $arg in
-c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
*) set fnord "$@" "$arg" ;;
esac
shift # fnord
shift # $arg
done
"$@"
stat=$?
if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
mv "$tmpdepfile" "$depfile"
;;
gcc)
## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.
## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.
## (see the conditional assignment to $gccflag above).
## There are various ways to get dependency output from gcc. Here's
## why we pick this rather obscure method:
## - Don't want to use -MD because we'd like the dependencies to end
## up in a subdir. Having to rename by hand is ugly.
## (We might end up doing this anyway to support other compilers.)
## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
## -MM, not -M (despite what the docs say). Also, it might not be
## supported by the other compilers which use the 'gcc' depmode.
## - Using -M directly means running the compiler twice (even worse
## than renaming).
if test -z "$gccflag"; then
gccflag=-MD,
fi
"$@" -Wp,"$gccflag$tmpdepfile"
stat=$?
if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
echo "$object : \\" > "$depfile"
# The second -e expression handles DOS-style file names with drive
# letters.
sed -e 's/^[^:]*: / /' \
-e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
## This next piece of magic avoids the "deleted header file" problem.
## The problem is that when a header file which appears in a .P file
## is deleted, the dependency causes make to die (because there is
## typically no way to rebuild the header). We avoid this by adding
## dummy dependencies for each header file. Too bad gcc doesn't do
## this for us directly.
## Some versions of gcc put a space before the ':'. On the theory
## that the space means something, we add a space to the output as
## well. hp depmode also adds that space, but also prefixes the VPATH
## to the object. Take care to not repeat it in the output.
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
tr ' ' "$nl" < "$tmpdepfile" \
| sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
| sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
hp)
# This case exists only to let depend.m4 do its work. It works by
# looking at the text of this script. This case will never be run,
# since it is checked for above.
exit 1
;;
sgi)
if test "$libtool" = yes; then
"$@" "-Wp,-MDupdate,$tmpdepfile"
else
"$@" -MDupdate "$tmpdepfile"
fi
stat=$?
if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
echo "$object : \\" > "$depfile"
# Clip off the initial element (the dependent). Don't try to be
# clever and replace this with sed code, as IRIX sed won't handle
# lines with more than a fixed number of characters (4096 in
# IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
# the IRIX cc adds comments like '#:fec' to the end of the
# dependency line.
tr ' ' "$nl" < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \
| tr "$nl" ' ' >> "$depfile"
echo >> "$depfile"
# The second pass generates a dummy entry for each header file.
tr ' ' "$nl" < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
>> "$depfile"
else
make_dummy_depfile
fi
rm -f "$tmpdepfile"
;;
xlc)
# This case exists only to let depend.m4 do its work. It works by
# looking at the text of this script. This case will never be run,
# since it is checked for above.
exit 1
;;
aix)
# The C for AIX Compiler uses -M and outputs the dependencies
# in a .u file. In older versions, this file always lives in the
# current directory. Also, the AIX compiler puts '$object:' at the
# start of each line; $object doesn't have directory information.
# Version 6 uses the directory in both cases.
set_dir_from "$object"
set_base_from "$object"
if test "$libtool" = yes; then
tmpdepfile1=$dir$base.u
tmpdepfile2=$base.u
tmpdepfile3=$dir.libs/$base.u
"$@" -Wc,-M
else
tmpdepfile1=$dir$base.u
tmpdepfile2=$dir$base.u
tmpdepfile3=$dir$base.u
"$@" -M
fi
stat=$?
if test $stat -ne 0; then
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
exit $stat
fi
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
do
test -f "$tmpdepfile" && break
done
aix_post_process_depfile
;;
tcc)
# tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26
# FIXME: That version still under development at the moment of writing.
# Make that this statement remains true also for stable, released
# versions.
# It will wrap lines (doesn't matter whether long or short) with a
# trailing '\', as in:
#
# foo.o : \
# foo.c \
# foo.h \
#
# It will put a trailing '\' even on the last line, and will use leading
# spaces rather than leading tabs (at least since its commit 0394caf7
# "Emit spaces for -MD").
"$@" -MD -MF "$tmpdepfile"
stat=$?
if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
# Each non-empty line is of the form 'foo.o : \' or ' dep.h \'.
# We have to change lines of the first kind to '$object: \'.
sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile"
# And for each line of the second kind, we have to emit a 'dep.h:'
# dummy dependency, to avoid the deleted-header problem.
sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile"
rm -f "$tmpdepfile"
;;
## The order of this option in the case statement is important, since the
## shell code in configure will try each of these formats in the order
## listed in this file. A plain '-MD' option would be understood by many
## compilers, so we must ensure this comes after the gcc and icc options.
pgcc)
# Portland's C compiler understands '-MD'.
# Will always output deps to 'file.d' where file is the root name of the
# source file under compilation, even if file resides in a subdirectory.
# The object file name does not affect the name of the '.d' file.
# pgcc 10.2 will output
# foo.o: sub/foo.c sub/foo.h
# and will wrap long lines using '\' :
# foo.o: sub/foo.c ... \
# sub/foo.h ... \
# ...
set_dir_from "$object"
# Use the source, not the object, to determine the base name, since
# that's sadly what pgcc will do too.
set_base_from "$source"
tmpdepfile=$base.d
# For projects that build the same source file twice into different object
# files, the pgcc approach of using the *source* file root name can cause
# problems in parallel builds. Use a locking strategy to avoid stomping on
# the same $tmpdepfile.
lockdir=$base.d-lock
trap "
echo '$0: caught signal, cleaning up...' >&2
rmdir '$lockdir'
exit 1
" 1 2 13 15
numtries=100
i=$numtries
while test $i -gt 0; do
# mkdir is a portable test-and-set.
if mkdir "$lockdir" 2>/dev/null; then
# This process acquired the lock.
"$@" -MD
stat=$?
# Release the lock.
rmdir "$lockdir"
break
else
# If the lock is being held by a different process, wait
# until the winning process is done or we timeout.
while test -d "$lockdir" && test $i -gt 0; do
sleep 1
i=`expr $i - 1`
done
fi
i=`expr $i - 1`
done
trap - 1 2 13 15
if test $i -le 0; then
echo "$0: failed to acquire lock after $numtries attempts" >&2
echo "$0: check lockdir '$lockdir'" >&2
exit 1
fi
if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
# Each line is of the form `foo.o: dependent.h',
# or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
# Do two passes, one to just change these to
# `$object: dependent.h' and one to simply `dependent.h:'.
sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
# Some versions of the HPUX 10.20 sed can't process this invocation
# correctly. Breaking it into two sed invocations is a workaround.
sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \
| sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
hp2)
# The "hp" stanza above does not work with aCC (C++) and HP's ia64
# compilers, which have integrated preprocessors. The correct option
# to use with these is +Maked; it writes dependencies to a file named
# 'foo.d', which lands next to the object file, wherever that
# happens to be.
# Much of this is similar to the tru64 case; see comments there.
set_dir_from "$object"
set_base_from "$object"
if test "$libtool" = yes; then
tmpdepfile1=$dir$base.d
tmpdepfile2=$dir.libs/$base.d
"$@" -Wc,+Maked
else
tmpdepfile1=$dir$base.d
tmpdepfile2=$dir$base.d
"$@" +Maked
fi
stat=$?
if test $stat -ne 0; then
rm -f "$tmpdepfile1" "$tmpdepfile2"
exit $stat
fi
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
do
test -f "$tmpdepfile" && break
done
if test -f "$tmpdepfile"; then
sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile"
# Add 'dependent.h:' lines.
sed -ne '2,${
s/^ *//
s/ \\*$//
s/$/:/
p
}' "$tmpdepfile" >> "$depfile"
else
make_dummy_depfile
fi
rm -f "$tmpdepfile" "$tmpdepfile2"
;;
tru64)
# The Tru64 compiler uses -MD to generate dependencies as a side
# effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
# dependencies in 'foo.d' instead, so we check for that too.
# Subdirectories are respected.
set_dir_from "$object"
set_base_from "$object"
if test "$libtool" = yes; then
# Libtool generates 2 separate objects for the 2 libraries. These
# two compilations output dependencies in $dir.libs/$base.o.d and
# in $dir$base.o.d. We have to check for both files, because
# one of the two compilations can be disabled. We should prefer
# $dir$base.o.d over $dir.libs/$base.o.d because the latter is
# automatically cleaned when .libs/ is deleted, while ignoring
# the former would cause a distcleancheck panic.
tmpdepfile1=$dir$base.o.d # libtool 1.5
tmpdepfile2=$dir.libs/$base.o.d # Likewise.
tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504
"$@" -Wc,-MD
else
tmpdepfile1=$dir$base.d
tmpdepfile2=$dir$base.d
tmpdepfile3=$dir$base.d
"$@" -MD
fi
stat=$?
if test $stat -ne 0; then
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
exit $stat
fi
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
do
test -f "$tmpdepfile" && break
done
# Same post-processing that is required for AIX mode.
aix_post_process_depfile
;;
msvc7)
if test "$libtool" = yes; then
showIncludes=-Wc,-showIncludes
else
showIncludes=-showIncludes
fi
"$@" $showIncludes > "$tmpdepfile"
stat=$?
grep -v '^Note: including file: ' "$tmpdepfile"
if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
echo "$object : \\" > "$depfile"
# The first sed program below extracts the file names and escapes
# backslashes for cygpath. The second sed program outputs the file
# name when reading, but also accumulates all include files in the
# hold buffer in order to output them again at the end. This only
# works with sed implementations that can handle large buffers.
sed < "$tmpdepfile" -n '
/^Note: including file: *\(.*\)/ {
s//\1/
s/\\/\\\\/g
p
}' | $cygpath_u | sort -u | sed -n '
s/ /\\ /g
s/\(.*\)/'"$tab"'\1 \\/p
s/.\(.*\) \\/\1:/
H
$ {
s/.*/'"$tab"'/
G
p
}' >> "$depfile"
echo >> "$depfile" # make sure the fragment doesn't end with a backslash
rm -f "$tmpdepfile"
;;
msvc7msys)
# This case exists only to let depend.m4 do its work. It works by
# looking at the text of this script. This case will never be run,
# since it is checked for above.
exit 1
;;
#nosideeffect)
# This comment above is used by automake to tell side-effect
# dependency tracking mechanisms from slower ones.
dashmstdout)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout, regardless of -o.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test "X$1" != 'X--mode=compile'; do
shift
done
shift
fi
# Remove '-o $object'.
IFS=" "
for arg
do
case $arg in
-o)
shift
;;
$object)
shift
;;
*)
set fnord "$@" "$arg"
shift # fnord
shift # $arg
;;
esac
done
test -z "$dashmflag" && dashmflag=-M
# Require at least two characters before searching for ':'
# in the target name. This is to cope with DOS-style filenames:
# a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
"$@" $dashmflag |
sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile"
rm -f "$depfile"
cat < "$tmpdepfile" > "$depfile"
# Some versions of the HPUX 10.20 sed can't process this sed invocation
# correctly. Breaking it into two sed invocations is a workaround.
tr ' ' "$nl" < "$tmpdepfile" \
| sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
| sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
dashXmstdout)
# This case only exists to satisfy depend.m4. It is never actually
# run, as this mode is specially recognized in the preamble.
exit 1
;;
makedepend)
"$@" || exit $?
# Remove any Libtool call
if test "$libtool" = yes; then
while test "X$1" != 'X--mode=compile'; do
shift
done
shift
fi
# X makedepend
shift
cleared=no eat=no
for arg
do
case $cleared in
no)
set ""; shift
cleared=yes ;;
esac
if test $eat = yes; then
eat=no
continue
fi
case "$arg" in
-D*|-I*)
set fnord "$@" "$arg"; shift ;;
# Strip any option that makedepend may not understand. Remove
# the object too, otherwise makedepend will parse it as a source file.
-arch)
eat=yes ;;
-*|$object)
;;
*)
set fnord "$@" "$arg"; shift ;;
esac
done
obj_suffix=`echo "$object" | sed 's/^.*\././'`
touch "$tmpdepfile"
${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
rm -f "$depfile"
# makedepend may prepend the VPATH from the source file name to the object.
# No need to regex-escape $object, excess matching of '.' is harmless.
sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
# Some versions of the HPUX 10.20 sed can't process the last invocation
# correctly. Breaking it into two sed invocations is a workaround.
sed '1,2d' "$tmpdepfile" \
| tr ' ' "$nl" \
| sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
| sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile" "$tmpdepfile".bak
;;
cpp)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test "X$1" != 'X--mode=compile'; do
shift
done
shift
fi
# Remove '-o $object'.
IFS=" "
for arg
do
case $arg in
-o)
shift
;;
$object)
shift
;;
*)
set fnord "$@" "$arg"
shift # fnord
shift # $arg
;;
esac
done
"$@" -E \
| sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
-e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
| sed '$ s: \\$::' > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
cat < "$tmpdepfile" >> "$depfile"
sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
msvisualcpp)
# Important note: in order to support this mode, a compiler *must*
# always write the preprocessed file to stdout.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test "X$1" != 'X--mode=compile'; do
shift
done
shift
fi
IFS=" "
for arg
do
case "$arg" in
-o)
shift
;;
$object)
shift
;;
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
set fnord "$@"
shift
shift
;;
*)
set fnord "$@" "$arg"
shift
shift
;;
esac
done
"$@" -E 2>/dev/null |
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile"
echo "$tab" >> "$depfile"
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
rm -f "$tmpdepfile"
;;
msvcmsys)
# This case exists only to let depend.m4 do its work. It works by
# looking at the text of this script. This case will never be run,
# since it is checked for above.
exit 1
;;
none)
exec "$@"
;;
*)
echo "Unknown depmode $depmode" 1>&2
exit 1
;;
esac
exit 0
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:

View File

@@ -1,4 +1,4 @@
#!/usr/bin/perl -w
#!/usr/bin/env perl
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
@@ -11,6 +11,8 @@
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
use warnings;
my $depend_file;
my $new_depend_file;
my $srcdir;

View File

@@ -1,4 +1,7 @@
#!/usr/bin/perl -p
#!/bin/sh
#! -*-perl-*-
eval 'exec perl -p -x -S $0 ${1+"$@"}'
if 0;
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.

View File

@@ -1,5 +1,6 @@
#!/usr/local/bin/perl -w
#!/usr/bin/env perl
require 5.003;
use warnings;
use Text::Tabs;
# NOTE: THE FORMAT OF HRETURN_ERROR AND HGOTO_ERROR MACROS HAS

View File

@@ -218,7 +218,7 @@ perl -0777 -pi -e 's/int H5LTyyparse/hid_t H5LTyyparse/igs' ${path_to_hl_src}/H5
# will simply ignore them, but we want to avoid those warnings.
for f in ${path_to_hl_src}/H5LTparse.c ${path_to_hl_src}/H5LTanalyze.c
do
echo '#if __GNUC__ >= 4 && __GNUC_MINOR__ >=2 ' >> tmp.out
echo '#if defined __GNUC__ && 402 <= __GNUC__ * 100 + __GNUC_MINOR__ ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wconversion" ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wimplicit-function-declaration" ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wlarger-than=" ' >> tmp.out

View File

@@ -83,10 +83,10 @@ CLINKERBASE="@CC@"
# CFLAGS, CPPFLAGS and LDFLAGS are reserved for use by the script user.
# FLAGS brought from the hdf5 build are put in H5BLD_*FLAGS.
# User's CPPFLAGS and CFLAGS come after their H5BLD counterparts. User's
# LDFLAGS come just before clibpath, user's LIBS come after $link_objs and
# before the hdf5 libraries in $link_args, followed by any external library
# paths and libraries from AM_LDFLAGS, LDFLAGS, AM_LIBS or LIBS carried in
# User's CPPFLAGS and CFLAGS come after their H5BLD counterparts. User's
# LDFLAGS come just before clibpath, user's LIBS come after $link_objs and
# before the hdf5 libraries in $link_args, followed by any external library
# paths and libraries from AM_LDFLAGS, LDFLAGS, AM_LIBS or LIBS carried in
# from the hdf5 build. The order of the flags is intended to give precedence
# to the user's flags.
H5BLD_CFLAGS="@AM_CFLAGS@ @CFLAGS@"
@@ -102,9 +102,9 @@ LDFLAGS="${HDF5_LDFLAGS:-$LDFLAGSBASE}"
LIBS="${HDF5_LIBS:-$LIBSBASE}"
# If a static library is available, the default will be to use it. If the only
# available library is shared, it will be used by default. The user can
# available library is shared, it will be used by default. The user can
# override either default, although choosing an unavailable library will result
# in link errors.
# in link errors.
STATIC_AVAILABLE="@enable_static@"
if test "${STATIC_AVAILABLE}" = "yes"; then
USE_SHARED_LIB="${HDF5_USE_SHLIB:-no}"
@@ -114,13 +114,6 @@ fi
usage() {
# A wonderfully informative "usage" message.
echo "usage: $prog_name [OPTIONS] <compile line>"
echo " OPTIONS:"
echo " -help This help message."
echo " -echo Show all the shell commands executed"
echo " -prefix=DIR Prefix directory to find HDF5 lib/ and include/"
echo " subdirectories [default: $prefix]"
# A wonderfully informative "usage" message.
echo "usage: $prog_name [OPTIONS] <compile line>"
echo " OPTIONS:"
@@ -147,7 +140,7 @@ usage() {
echo " HDF5_CC - use a different C compiler"
echo " HDF5_CLINKER - use a different linker"
echo " HDF5_USE_SHLIB=[yes|no] - use shared or static version of the HDF5 library"
echo " [default: no except when built with only"
echo " [default: no except when built with only"
echo " shared libraries]"
echo " "
echo " You can also add or change paths and flags to the compile line using"
@@ -325,7 +318,7 @@ fi
if test "x$do_link" = "xyes"; then
shared_link=""
# conditionnaly link with the hl library
# conditionnaly link with the hl library
if test "X$HL" = "Xhl"; then
libraries=" $libraries -lhdf5_hl -lhdf5 "
else
@@ -386,10 +379,10 @@ if test "x$do_link" = "xyes"; then
# module. It's okay if they're included twice in the compile line.
link_args="$link_args $H5BLD_LDFLAGS $H5BLD_LIBS"
# User's CPPFLAGS and CFLAGS come after their H5BLD counterparts. User's
# LDFLAGS come just before clibpath, user's LIBS come after $link_objs and
# before the hdf5 libraries in $link_args, followed by any external library
# paths and libraries from AM_LDFLAGS, LDFLAGS, AM_LIBS or LIBS carried in
# User's CPPFLAGS and CFLAGS come after their H5BLD counterparts. User's
# LDFLAGS come just before clibpath, user's LIBS come after $link_objs and
# before the hdf5 libraries in $link_args, followed by any external library
# paths and libraries from AM_LDFLAGS, LDFLAGS, AM_LIBS or LIBS carried in
# from the hdf5 build. The order of the flags is intended to give precedence
# to the user's flags.
$SHOW $CLINKER $H5BLD_CPPFLAGS $CPPFLAGS $H5BLD_CFLAGS $CFLAGS $LDFLAGS $clibpath $link_objs $LIBS $link_args $shared_link

View File

@@ -213,7 +213,7 @@ my (@curver) = getvers $contents;
# Determine the new version number.
my @newver; #new version
if ($set) {
if ($set =~ /(\d+)\.(\d+)\.(\d+)(-([a-zA-Z]\w*))?/) {
if ($set =~ /(\d+)\.(\d+)\.(\d+)(-([\da-zA-Z]\w*))?/) {
@newver = ($1, $2, $3, $5);
} elsif ($set =~ /(\d+)\D+(\d+)\D+(\d+)(\s*\(([a-zA-Z]\w*)\))?\D*$/) {
@newver = ($1, $2, $3, $5);
@@ -377,7 +377,7 @@ if ($H5_JAVA) {
my $version_string2 = sprintf("%d, %d, %d", @newver[0,1,2]);
$data =~ s/\@version HDF5 .* <BR>/\@version HDF5 $version_string1 <BR>/;
$data =~ s/ public final static int LIB_VERSION\[\] = { \d*, \d*, \d* };/ public final static int LIB_VERSION[] = { $version_string2 };/;
$data =~ s/ public final static int LIB_VERSION\[\] = \{ \d*, \d*, \d* \};/ public final static int LIB_VERSION[] = \{ $version_string2 \};/;
write_file($H5_JAVA, $data);
}
@@ -394,7 +394,7 @@ if ($TESTH5_JAVA) {
my $version_string1 = sprintf("%d, %d, %d", @newver[0,1,2]);
my $version_string2 = sprintf("int majnum = %d, minnum = %d, relnum = %d", @newver[0,1,2]);
$data =~ s/ int libversion\[\] = { .* };/ int libversion\[\] = { $version_string1 };/;
$data =~ s/ int libversion\[\] = \{ .* \};/ int libversion\[\] = \{ $version_string1 \};/;
$data =~ s/ int majnum = \d*, minnum = \d*, relnum = \d*;/ $version_string2;/;
write_file($TESTH5_JAVA, $data);
@@ -405,7 +405,7 @@ if ($REPACK_LAYOUT_PLUGIN_VERSION) {
my $data = read_file($REPACK_LAYOUT_PLUGIN_VERSION);
my $version_string = sprintf("%d %d %d", @newver[0,1,2]);
$data =~ s/ PARAMS { 9 \d* \d* \d* }/ PARAMS { 9 $version_string }/g;
$data =~ s/ PARAMS \{ 9 \d* \d* \d* \}/ PARAMS \{ 9 $version_string \}/g;
write_file($REPACK_LAYOUT_PLUGIN_VERSION, $data);
}

508
bin/install-sh Executable file
View File

@@ -0,0 +1,508 @@
#!/bin/sh
# install - install a program, script, or datafile
scriptversion=2014-09-12.12; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
# following copyright and license.
#
# Copyright (C) 1994 X Consortium
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to
# deal in the Software without restriction, including without limitation the
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
# sell copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
# Except as contained in this notice, the name of the X Consortium shall not
# be used in advertising or otherwise to promote the sale, use or other deal-
# ings in this Software without prior written authorization from the X Consor-
# tium.
#
#
# FSF changes to this file are in the public domain.
#
# Calling this script install-sh is preferred over install.sh, to prevent
# 'make' implicit rules from creating a file called install from it
# when there is no Makefile.
#
# This script is compatible with the BSD install script, but was written
# from scratch.
tab=' '
nl='
'
IFS=" $tab$nl"
# Set DOITPROG to "echo" to test this script.
doit=${DOITPROG-}
doit_exec=${doit:-exec}
# Put in absolute file names if you don't have them in your path;
# or use environment vars.
chgrpprog=${CHGRPPROG-chgrp}
chmodprog=${CHMODPROG-chmod}
chownprog=${CHOWNPROG-chown}
cmpprog=${CMPPROG-cmp}
cpprog=${CPPROG-cp}
mkdirprog=${MKDIRPROG-mkdir}
mvprog=${MVPROG-mv}
rmprog=${RMPROG-rm}
stripprog=${STRIPPROG-strip}
posix_mkdir=
# Desired mode of installed file.
mode=0755
chgrpcmd=
chmodcmd=$chmodprog
chowncmd=
mvcmd=$mvprog
rmcmd="$rmprog -f"
stripcmd=
src=
dst=
dir_arg=
dst_arg=
copy_on_change=false
is_target_a_directory=possibly
usage="\
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
or: $0 [OPTION]... SRCFILES... DIRECTORY
or: $0 [OPTION]... -t DIRECTORY SRCFILES...
or: $0 [OPTION]... -d DIRECTORIES...
In the 1st form, copy SRCFILE to DSTFILE.
In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
In the 4th, create DIRECTORIES.
Options:
--help display this help and exit.
--version display version info and exit.
-c (ignored)
-C install only if different (preserve the last data modification time)
-d create directories instead of installing files.
-g GROUP $chgrpprog installed files to GROUP.
-m MODE $chmodprog installed files to MODE.
-o USER $chownprog installed files to USER.
-s $stripprog installed files.
-t DIRECTORY install into DIRECTORY.
-T report an error if DSTFILE is a directory.
Environment variables override the default commands:
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
RMPROG STRIPPROG
"
while test $# -ne 0; do
case $1 in
-c) ;;
-C) copy_on_change=true;;
-d) dir_arg=true;;
-g) chgrpcmd="$chgrpprog $2"
shift;;
--help) echo "$usage"; exit $?;;
-m) mode=$2
case $mode in
*' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*)
echo "$0: invalid mode: $mode" >&2
exit 1;;
esac
shift;;
-o) chowncmd="$chownprog $2"
shift;;
-s) stripcmd=$stripprog;;
-t)
is_target_a_directory=always
dst_arg=$2
# Protect names problematic for 'test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
shift;;
-T) is_target_a_directory=never;;
--version) echo "$0 $scriptversion"; exit $?;;
--) shift
break;;
-*) echo "$0: invalid option: $1" >&2
exit 1;;
*) break;;
esac
shift
done
# We allow the use of options -d and -T together, by making -d
# take the precedence; this is for compatibility with GNU install.
if test -n "$dir_arg"; then
if test -n "$dst_arg"; then
echo "$0: target directory not allowed when installing a directory." >&2
exit 1
fi
fi
if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
# When -d is used, all remaining arguments are directories to create.
# When -t is used, the destination is already specified.
# Otherwise, the last argument is the destination. Remove it from $@.
for arg
do
if test -n "$dst_arg"; then
# $@ is not empty: it contains at least $arg.
set fnord "$@" "$dst_arg"
shift # fnord
fi
shift # arg
dst_arg=$arg
# Protect names problematic for 'test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
done
fi
if test $# -eq 0; then
if test -z "$dir_arg"; then
echo "$0: no input file specified." >&2
exit 1
fi
# It's OK to call 'install-sh -d' without argument.
# This can happen when creating conditional directories.
exit 0
fi
if test -z "$dir_arg"; then
if test $# -gt 1 || test "$is_target_a_directory" = always; then
if test ! -d "$dst_arg"; then
echo "$0: $dst_arg: Is not a directory." >&2
exit 1
fi
fi
fi
if test -z "$dir_arg"; then
do_exit='(exit $ret); exit $ret'
trap "ret=129; $do_exit" 1
trap "ret=130; $do_exit" 2
trap "ret=141; $do_exit" 13
trap "ret=143; $do_exit" 15
# Set umask so as not to create temps with too-generous modes.
# However, 'strip' requires both read and write access to temps.
case $mode in
# Optimize common cases.
*644) cp_umask=133;;
*755) cp_umask=22;;
*[0-7])
if test -z "$stripcmd"; then
u_plus_rw=
else
u_plus_rw='% 200'
fi
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
*)
if test -z "$stripcmd"; then
u_plus_rw=
else
u_plus_rw=,u+rw
fi
cp_umask=$mode$u_plus_rw;;
esac
fi
for src
do
# Protect names problematic for 'test' and other utilities.
case $src in
-* | [=\(\)!]) src=./$src;;
esac
if test -n "$dir_arg"; then
dst=$src
dstdir=$dst
test -d "$dstdir"
dstdir_status=$?
else
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
if test ! -f "$src" && test ! -d "$src"; then
echo "$0: $src does not exist." >&2
exit 1
fi
if test -z "$dst_arg"; then
echo "$0: no destination specified." >&2
exit 1
fi
dst=$dst_arg
# If destination is a directory, append the input filename; won't work
# if double slashes aren't ignored.
if test -d "$dst"; then
if test "$is_target_a_directory" = never; then
echo "$0: $dst_arg: Is a directory" >&2
exit 1
fi
dstdir=$dst
dst=$dstdir/`basename "$src"`
dstdir_status=0
else
dstdir=`dirname "$dst"`
test -d "$dstdir"
dstdir_status=$?
fi
fi
obsolete_mkdir_used=false
if test $dstdir_status != 0; then
case $posix_mkdir in
'')
# Create intermediate dirs using mode 755 as modified by the umask.
# This is like FreeBSD 'install' as of 1997-10-28.
umask=`umask`
case $stripcmd.$umask in
# Optimize common cases.
*[2367][2367]) mkdir_umask=$umask;;
.*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
*[0-7])
mkdir_umask=`expr $umask + 22 \
- $umask % 100 % 40 + $umask % 20 \
- $umask % 10 % 4 + $umask % 2
`;;
*) mkdir_umask=$umask,go-w;;
esac
# With -d, create the new directory with the user-specified mode.
# Otherwise, rely on $mkdir_umask.
if test -n "$dir_arg"; then
mkdir_mode=-m$mode
else
mkdir_mode=
fi
posix_mkdir=false
case $umask in
*[123567][0-7][0-7])
# POSIX mkdir -p sets u+wx bits regardless of umask, which
# is incompatible with FreeBSD 'install' when (umask & 300) != 0.
;;
*)
# $RANDOM is not portable (e.g. dash); use it when possible to
# lower collision chance
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0
# As "mkdir -p" follows symlinks and we work in /tmp possibly; so
# create the $tmpdir first (and fail if unsuccessful) to make sure
# that nobody tries to guess the $tmpdir name.
if (umask $mkdir_umask &&
$mkdirprog $mkdir_mode "$tmpdir" &&
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
then
if test -z "$dir_arg" || {
# Check for POSIX incompatibilities with -m.
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
# other-writable bit of parent directory when it shouldn't.
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
test_tmpdir="$tmpdir/a"
ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
case $ls_ld_tmpdir in
d????-?r-*) different_mode=700;;
d????-?--*) different_mode=755;;
*) false;;
esac &&
$mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
}
}
then posix_mkdir=:
fi
rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
else
# Remove any dirs left behind by ancient mkdir implementations.
rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
fi
trap '' 0;;
esac;;
esac
if
$posix_mkdir && (
umask $mkdir_umask &&
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
)
then :
else
# The umask is ridiculous, or mkdir does not conform to POSIX,
# or it failed possibly due to a race condition. Create the
# directory the slow way, step by step, checking for races as we go.
case $dstdir in
/*) prefix='/';;
[-=\(\)!]*) prefix='./';;
*) prefix='';;
esac
oIFS=$IFS
IFS=/
set -f
set fnord $dstdir
shift
set +f
IFS=$oIFS
prefixes=
for d
do
test X"$d" = X && continue
prefix=$prefix$d
if test -d "$prefix"; then
prefixes=
else
if $posix_mkdir; then
(umask=$mkdir_umask &&
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
# Don't fail if two instances are running concurrently.
test -d "$prefix" || exit 1
else
case $prefix in
*\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
*) qprefix=$prefix;;
esac
prefixes="$prefixes '$qprefix'"
fi
fi
prefix=$prefix/
done
if test -n "$prefixes"; then
# Don't fail if two instances are running concurrently.
(umask $mkdir_umask &&
eval "\$doit_exec \$mkdirprog $prefixes") ||
test -d "$dstdir" || exit 1
obsolete_mkdir_used=true
fi
fi
fi
if test -n "$dir_arg"; then
{ test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
{ test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
else
# Make a couple of temp file names in the proper directory.
dsttmp=$dstdir/_inst.$$_
rmtmp=$dstdir/_rm.$$_
# Trap to clean up those temp files at exit.
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
# Copy the file name to the temp name.
(umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
# and set any options; do chmod last to preserve setuid bits.
#
# If any of these fail, we abort the whole thing. If we want to
# ignore errors from any of these, just make sure not to ignore
# errors from the above "$doit $cpprog $src $dsttmp" command.
#
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
{ test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
{ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
# If -C, don't bother to copy if it wouldn't change the file.
if $copy_on_change &&
old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
set -f &&
set X $old && old=:$2:$4:$5:$6 &&
set X $new && new=:$2:$4:$5:$6 &&
set +f &&
test "$old" = "$new" &&
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
then
rm -f "$dsttmp"
else
# Rename the file to the real destination.
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
# The rename failed, perhaps because mv can't rename something else
# to itself, or perhaps because mv is so ancient that it does not
# support -f.
{
# Now remove or move aside any old file at destination location.
# We try this two ways since rm can't unlink itself on some
# systems and the destination file might be busy for other
# reasons. In this case, the final cleanup might fail but the new
# file should still install successfully.
{
test ! -f "$dst" ||
$doit $rmcmd -f "$dst" 2>/dev/null ||
{ $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
{ $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
} ||
{ echo "$0: cannot unlink or rename $dst" >&2
(exit 1); exit 1
}
} &&
# Now rename the file to the real destination.
$doit $mvcmd "$dsttmp" "$dst"
}
fi || exit 1
trap '' 0
fi
done
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

View File

@@ -1,4 +1,4 @@
#!/usr/bin/perl
#!/usr/bin/env perl
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.

11156
bin/ltmain.sh Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,7 @@
#!/usr/bin/perl -w
#!/usr/bin/env perl
require 5.003;
$indent=4;
use warnings;
#
# Copyright by The HDF Group.
@@ -244,8 +245,8 @@ sub create_init ($) {
print HEADER "/* Major error codes */\n";
print HEADER "/*********************/\n\n";
foreach $name (keys %major) {
print HEADER " "x(0*$indent),"assert(${name}_g==(-1));\n";
print HEADER " "x(0*$indent),"if((msg = H5E_create_msg(cls, H5E_MAJOR, \"${major{$name}}\"))==NULL)\n";
print HEADER " "x(0*$indent),"HDassert(${name}_g==(-1));\n";
print HEADER " "x(0*$indent),"if((msg = H5E__create_msg(cls, H5E_MAJOR, \"${major{$name}}\"))==NULL)\n";
print HEADER " "x(1*$indent),"HGOTO_ERROR(H5E_ERROR, H5E_CANTINIT, FAIL, \"error message initialization failed\")\n";
print HEADER " "x(0*$indent),"if((${name}_g = H5I_register(H5I_ERROR_MSG, msg, FALSE))<0)\n";
print HEADER " "x(1*$indent),"HGOTO_ERROR(H5E_ERROR, H5E_CANTREGISTER, FAIL, \"can't register error message\")\n";
@@ -260,8 +261,8 @@ sub create_init ($) {
# Iterate over all the minor errors in each section
for $name ( @{$section_list{$sect_name}}) {
print HEADER " "x(0*$indent),"assert(${name}_g==(-1));\n";
print HEADER " "x(0*$indent),"if((msg = H5E_create_msg(cls, H5E_MINOR, \"${minor{$name}}\"))==NULL)\n";
print HEADER " "x(0*$indent),"HDassert(${name}_g==(-1));\n";
print HEADER " "x(0*$indent),"if((msg = H5E__create_msg(cls, H5E_MINOR, \"${minor{$name}}\"))==NULL)\n";
print HEADER " "x(1*$indent),"HGOTO_ERROR(H5E_ERROR, H5E_CANTINIT, FAIL, \"error message initialization failed\")\n";
print HEADER " "x(0*$indent),"if((${name}_g = H5I_register(H5I_ERROR_MSG, msg, FALSE))<0)\n";
print HEADER " "x(1*$indent),"HGOTO_ERROR(H5E_ERROR, H5E_CANTREGISTER, FAIL, \"can't register error message\")\n";

View File

@@ -1,6 +1,7 @@
#!/usr/bin/perl -w
#!/usr/bin/env perl
require 5.003;
use strict;
use warnings;
# Global settings

View File

@@ -1,5 +1,6 @@
#!/usr/bin/perl -w
#!/usr/bin/env perl
require 5.003;
use warnings;
# Global settings
# (The max_idx parameter is the only thing that needs to be changed when adding
@@ -7,8 +8,8 @@ require 5.003;
# is added (like support for 1.4, etc), the min_sup_idx parameter will
# need to be decremented. - QAK)
# Max. library "index" (0 = v1.0, 1 = 1.2, etc)
$max_idx = 5;
# Max. library "index" (0 = v1.0, 1 = 1.2, 2 = 1.4, 3 = 1.6, 4 = 1.8, 5 = 1.10, 6 = 1.12, 7 = 1.14, etc)
$max_idx = 7;
# Min. supported previous library version "index" (0 = v1.0, 1 = 1.2, etc)
$min_sup_idx = 3;
@@ -89,7 +90,8 @@ sub print_checkoptions ($) {
my $curr_idx; # Current API version index
# Print the option checking
print $fh "\n/* Issue error if contradicting macros have been defined. */\n";
print $fh "\n\n/* Issue error if contradicting macros have been defined. */\n";
print $fh "/* (Can't use an older (deprecated) API version if deprecated symbols have been disabled) */\n";
# Print the #ifdef
print $fh "#if (";
@@ -118,7 +120,30 @@ sub print_checkoptions ($) {
##############################################################################
# Print "global" API version macro settings
#
sub print_globalapivers ($) {
sub print_globalapidefvers ($) {
my $fh = shift; # File handle for output file
my $curr_idx; # Current API version index
# Print the descriptive comment
print $fh "\n\n/* If a particular default \"global\" version of the library's interfaces is\n";
print $fh " * chosen, set the corresponding version macro for API symbols.\n";
print $fh " *\n";
print $fh " */\n";
for $curr_idx ($min_sup_idx .. ($max_idx - 1)) {
# Print API version ifdef
print $fh "\n#if defined(H5_USE_1", ($curr_idx * 2), "_API_DEFAULT) && !defined(H5_USE_1", ($curr_idx * 2), "_API)\n";
# Print API version definition
print $fh " " x $indent, "#define H5_USE_1", ($curr_idx * 2), "_API 1\n";
# Print API version endif
print $fh "#endif /* H5_USE_1", ($curr_idx * 2), "_API_DEFAULT && !H5_USE_1", ($curr_idx * 2), "_API */\n";
}
}
##############################################################################
# Print "global" API symbol version macro settings
#
sub print_globalapisymbolvers ($) {
my $fh = shift; # File handle for output file
my $curr_idx; # Current API version index
@@ -130,15 +155,6 @@ sub print_globalapivers ($) {
print $fh " * API symbol, the individual API version macro takes priority.\n";
print $fh " */\n";
for $curr_idx ($min_sup_idx .. ($max_idx - 1)) {
# Print API version ifdef
print $fh "#if defined(H5_USE_1", ($curr_idx * 2), "_API_DEFAULT) && !defined(H5_USE_1", ($curr_idx * 2), "_API)\n";
# Print API version definition
print $fh " " x $indent, "#define H5_USE_1", ($curr_idx * 2), "_API 1\n";
# Print API version endif
print $fh "#endif /* H5_USE_1", ($curr_idx * 2), "_API_DEFAULT && !H5_USE_1", ($curr_idx * 2), "_API */\n\n";
}
# Loop over supported older library APIs and define the appropriate macros
for $curr_idx ($min_sup_idx .. ($max_idx - 1)) {
# Print API version ifdef
@@ -338,7 +354,18 @@ sub parse_line ($) {
my $vers_idx; # Index of version in array
# Do some validation on the input
if(!( $_ =~ /v1[02468]/ || $_ =~ /v11[02468]/ )) {
# Note: v111 is allowed because H5O functions were prematurely versioned
# in HDF5 1.10. Because users were affected by this, the versioning
# was rescinded but the H5O version 2 functions were kept to be
# called directly. Now that the version macros are added in 1.12,
# along with a 3rd version of the H5O functions, the H5O function
# version for default api=v110 should be version 1 to work correctly
# with 1.10 applications that were using unversioned H5O functions,
# and the H5O function version should be version 3 for default api=v112
# (the default api version for 1.12). Allowing a v111 entry and
# incrementing its index 13 lines below allows a version 2 that is
# never accessed via the H5O function macros.
if(!( $_ =~ /v1[02468]/ || $_ =~ /v11[02468]/ || $_ =~ /v111/ )) {
die "bad version information: $name";
}
if(exists($sym_versions{$_})) {
@@ -351,6 +378,9 @@ sub parse_line ($) {
#print "parse_line: _=$_\n";
# Get the index of the version
($vers_idx) = ($_ =~ /v1(\d+)/);
if($vers_idx == 11) {
$vers_idx++;
}
$vers_idx /= 2;
#print "parse_line: vers_idx='$vers_idx'\n";
push(@vers_nums, $vers_idx);
@@ -443,8 +473,9 @@ sub create_public ($) {
print_copyright(*HEADER);
print_warning(*HEADER);
print_startprotect(*HEADER, $file);
print_globalapidefvers(*HEADER);
print_checkoptions(*HEADER);
print_globalapivers(*HEADER);
print_globalapisymbolvers(*HEADER);
print_defaultapivers(*HEADER);
print_endprotect(*HEADER, $file);
@@ -478,7 +509,7 @@ for $file (@ARGV) {
}
}
close SOURCE;
# Create header files
print "Generating '", $prefix, "H5version.h'\n";
create_public($prefix);

View File

@@ -40,6 +40,7 @@ make distclean: remove all files generated by make, make check, or
make check-p: Only run parallel tests
make check-s: Only run serial tests
make check-vfd: Run tests with each virtual file driver
make check-vol: Run tests with each virtual object layer connector
HDF5 uses Automake, so any standard Automake targets not listed here
should also work.

215
bin/missing Executable file
View File

@@ -0,0 +1,215 @@
#! /bin/sh
# Common wrapper for a few potentially missing GNU programs.
scriptversion=2013-10-28.13; # UTC
# Copyright (C) 1996-2014 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
if test $# -eq 0; then
echo 1>&2 "Try '$0 --help' for more information"
exit 1
fi
case $1 in
--is-lightweight)
# Used by our autoconf macros to check whether the available missing
# script is modern enough.
exit 0
;;
--run)
# Back-compat with the calling convention used by older automake.
shift
;;
-h|--h|--he|--hel|--help)
echo "\
$0 [OPTION]... PROGRAM [ARGUMENT]...
Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
to PROGRAM being missing or too old.
Options:
-h, --help display this help and exit
-v, --version output version information and exit
Supported PROGRAM values:
aclocal autoconf autoheader autom4te automake makeinfo
bison yacc flex lex help2man
Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
'g' are ignored when checking the name.
Send bug reports to <bug-automake@gnu.org>."
exit $?
;;
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
echo "missing $scriptversion (GNU Automake)"
exit $?
;;
-*)
echo 1>&2 "$0: unknown '$1' option"
echo 1>&2 "Try '$0 --help' for more information"
exit 1
;;
esac
# Run the given program, remember its exit status.
"$@"; st=$?
# If it succeeded, we are done.
test $st -eq 0 && exit 0
# Also exit now if we it failed (or wasn't found), and '--version' was
# passed; such an option is passed most likely to detect whether the
# program is present and works.
case $2 in --version|--help) exit $st;; esac
# Exit code 63 means version mismatch. This often happens when the user
# tries to use an ancient version of a tool on a file that requires a
# minimum version.
if test $st -eq 63; then
msg="probably too old"
elif test $st -eq 127; then
# Program was missing.
msg="missing on your system"
else
# Program was found and executed, but failed. Give up.
exit $st
fi
perl_URL=http://www.perl.org/
flex_URL=http://flex.sourceforge.net/
gnu_software_URL=http://www.gnu.org/software
program_details ()
{
case $1 in
aclocal|automake)
echo "The '$1' program is part of the GNU Automake package:"
echo "<$gnu_software_URL/automake>"
echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
echo "<$gnu_software_URL/autoconf>"
echo "<$gnu_software_URL/m4/>"
echo "<$perl_URL>"
;;
autoconf|autom4te|autoheader)
echo "The '$1' program is part of the GNU Autoconf package:"
echo "<$gnu_software_URL/autoconf/>"
echo "It also requires GNU m4 and Perl in order to run:"
echo "<$gnu_software_URL/m4/>"
echo "<$perl_URL>"
;;
esac
}
give_advice ()
{
# Normalize program name to check for.
normalized_program=`echo "$1" | sed '
s/^gnu-//; t
s/^gnu//; t
s/^g//; t'`
printf '%s\n' "'$1' is $msg."
configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
case $normalized_program in
autoconf*)
echo "You should only need it if you modified 'configure.ac',"
echo "or m4 files included by it."
program_details 'autoconf'
;;
autoheader*)
echo "You should only need it if you modified 'acconfig.h' or"
echo "$configure_deps."
program_details 'autoheader'
;;
automake*)
echo "You should only need it if you modified 'Makefile.am' or"
echo "$configure_deps."
program_details 'automake'
;;
aclocal*)
echo "You should only need it if you modified 'acinclude.m4' or"
echo "$configure_deps."
program_details 'aclocal'
;;
autom4te*)
echo "You might have modified some maintainer files that require"
echo "the 'autom4te' program to be rebuilt."
program_details 'autom4te'
;;
bison*|yacc*)
echo "You should only need it if you modified a '.y' file."
echo "You may want to install the GNU Bison package:"
echo "<$gnu_software_URL/bison/>"
;;
lex*|flex*)
echo "You should only need it if you modified a '.l' file."
echo "You may want to install the Fast Lexical Analyzer package:"
echo "<$flex_URL>"
;;
help2man*)
echo "You should only need it if you modified a dependency" \
"of a man page."
echo "You may want to install the GNU Help2man package:"
echo "<$gnu_software_URL/help2man/>"
;;
makeinfo*)
echo "You should only need it if you modified a '.texi' file, or"
echo "any other file indirectly affecting the aspect of the manual."
echo "You might want to install the Texinfo package:"
echo "<$gnu_software_URL/texinfo/>"
echo "The spurious makeinfo call might also be the consequence of"
echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
echo "want to install GNU make:"
echo "<$gnu_software_URL/make/>"
;;
*)
echo "You might have modified some files without having the proper"
echo "tools for further handling them. Check the 'README' file, it"
echo "often tells you about the needed prerequisites for installing"
echo "this package. You may also peek at any GNU archive site, in"
echo "case some other package contains this missing '$1' program."
;;
esac
}
give_advice "$1" | sed -e '1s/^/WARNING: /' \
-e '2,$s/^/ /' >&2
# Propagate the correct exit status (expected to be 127 for a program
# not found, 63 for a program that failed due to version mismatch).
exit $st
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

View File

@@ -39,29 +39,37 @@ USAGE()
{
cat << EOF
Usage: $0 -d <dir> [--docver BRANCHNAME] [-h] [--nocheck] [--private] <methods> ...
-d DIR The name of the directory where the releas(es) should be
-d DIR The name of the directory where the releas(es) should be
placed.
--docver BRANCHNAME This is added for 1.8 and beyond to get the correct
version of documentation files from the hdf5docs
repository. BRANCHNAME for v1.8 should be hdf5_1_8.
-h print the help page.
--nocheck Ignore errors in MANIFEST file.
--private Make a private release with today's date in version information.
--nocheck Ignore errors in MANIFEST file.
--private Make a private release with today's date in version information.
This must be run at the top level of the source directory.
The other command-line options are the names of the programs to use
for compressing the resulting tar archive (if none are given then
"tar" is assumed):
tar -- use tar and don't do any compressing.
gzip -- use gzip with "-9" and append ".gz" to the output name.
cmake-tgz -- create a tar file using the gzip default level with a build-unix.sh
tar -- use tar and don't do any compressing.
gzip -- use gzip with "-9" and append ".gz" to the output name.
bzip2 -- use bzip2 with "-9" and append ".bz2" to the output name.
zip -- convert all text files to DOS style and form a zip file for Windows use.
cmake-tgz -- create a tar file using the gzip default level with a build-unix.sh
command file and all other CMake files needed to build HDF5 source
using CMake on unix machines.
bzip2 -- use bzip2 with "-9" and append ".bz2" to the output name.
zip -- convert all text files to DOS style and form a zip file for Windows use.
cmake-zip -- convert all text files to DOS style and create a zip file inluding cmake
scripts and .bat files to build HDF5 source using CMake on Windows.
scripts and .bat files to build HDF5 source using CMake on Windows.
hpc-cmake-tgz
-- create a tar file using the gzip default level with a build-unix.sh
command file and all other CMake files needed to build HDF5 source
using CMake on unix machines, with HDF5options.cmake files for serial
and parallel builds on machines requiring batch jobs to run tests.
The default is for parallel build, with serial only build by changing
the HDF5options.cmake symlink to ser-HDF5options.cmake. More
information is available in the README_HPC file.
doc -- produce the latest doc tree in addition to the archive.
An md5 checksum is produced for each archive created and stored in the md5 file.
@@ -114,8 +122,8 @@ EOF
tar2zip()
{
if [ $# -ne 3 ]; then
echo "usage: tar2zip <tarfilename> <zipfilename>"
return 1
echo "usage: tar2zip <tarfilename> <zipfilename>"
return 1
fi
ztmpdir=/tmp/ztmpdir$$
mkdir -p $ztmpdir
@@ -127,23 +135,23 @@ tar2zip()
(cd $ztmpdir; tar xf -) < $tarfile
# sanity check
if [ ! -d $ztmpdir/$version ]; then
echo "untar did not create $ztmpdir/$version source dir"
# cleanup
rm -rf $ztmpdir
return 1
echo "untar did not create $ztmpdir/$version source dir"
# cleanup
rm -rf $ztmpdir
return 1
fi
# step 2: convert text files
# There maybe a simpler way to do this.
# options used in unix2dos:
# -k Keep the date stamp
# -k Keep the date stamp
# -q quiet mode
# grep redirect output to /dev/null because -q or -s are not portable.
find $ztmpdir/$version | \
while read inf; do \
if file $inf | grep "$inf\: .*text" > /dev/null 2>&1 ; then \
unix2dos -q -k $inf; \
fi\
done
while read inf; do \
if file $inf | grep "$inf\: .*text" > /dev/null 2>&1 ; then \
unix2dos -q -k $inf; \
fi\
done
# step 3: make zipball
# -9 maximum compression
# -y Store symbolic links as such in the zip archive
@@ -169,14 +177,14 @@ tar2zip()
# Note: do this in a temporary directory to avoid changing
# the original source directory which may be around.
# 2. add build-unix.sh script.
# 3. add SZIP.tar.gz, ZLib.tar.gz and cmake files to top level directory.
# 3. add LIBAEC.tar.gz, ZLib.tar.gz and cmake files to top level directory.
# 4. create gzipped tar file with these contents:
# build-unix.sh script
# hdf5-<version> source code directory extracted from tar file
# CTestScript.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# HDF5config.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# HDF5options.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# SZip.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake
# LIBAEC.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake
# ZLib.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake
@@ -189,13 +197,13 @@ tar2zip()
#
# need function to create another temporary directory, extract the
# $tmpdir/$HDF5_VERS.tar into it, create build-VS*.bat files,
# add CTestScript.cmake, HDF5config.cmake, SZIP.tar.gz
# add CTestScript.cmake, HDF5config.cmake, LIBAEC.tar.gz
# ZLib.tar.gz, HDF5 examples, and then zip it.
tar2cmakezip()
{
if [ $# -ne 3 ]; then
echo "usage: tar2cmakezip <tarfilename> <zipfilename>"
return 1
echo "usage: tar2cmakezip <tarfilename> <zipfilename>"
return 1
fi
cmziptmpdir=/tmp/cmziptmpdir$$
cmziptmpsubdir=$cmziptmpdir/CMake-$HDF5_VERS
@@ -208,10 +216,10 @@ tar2cmakezip()
(cd $cmziptmpsubdir; tar xf -) < $tarfile
# sanity check
if [ ! -d $cmziptmpsubdir/$version ]; then
echo "untar did not create $cmziptmpsubdir/$version source dir"
# cleanup
rm -rf $cmziptmpdir
return 1
echo "untar did not create $cmziptmpsubdir/$version source dir"
# cleanup
rm -rf $cmziptmpdir
return 1
fi
# step 2: add batch file for building CMake on window
@@ -222,10 +230,10 @@ tar2cmakezip()
(cd $cmziptmpsubdir; echo "ctest -S HDF5config.cmake,BUILD_GENERATOR=VS2017 -C Release -V -O hdf5.log" > build-VS2017-32.bat; chmod 755 build-VS2017-32.bat)
(cd $cmziptmpsubdir; echo "ctest -S HDF5config.cmake,BUILD_GENERATOR=VS201764 -C Release -V -O hdf5.log" > build-VS2017-64.bat; chmod 755 build-VS2017-64.bat)
# step 3: add SZIP.tar.gz, ZLib.tar.gz and cmake files
cp /mnt/scr1/pre-release/hdf5/CMake/SZip.tar.gz $cmziptmpsubdir
# step 3: add LIBAEC.tar.gz, ZLib.tar.gz and cmake files
cp /mnt/scr1/pre-release/hdf5/CMake/LIBAEC.tar.gz $cmziptmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/ZLib.tar.gz $cmziptmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/HDF5Examples-1.10.8-Source.tar.gz $cmziptmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/HDF5Examples-1.14.1-Source.zip $cmziptmpsubdir
cp $cmziptmpsubdir/$version/config/cmake/scripts/CTestScript.cmake $cmziptmpsubdir
cp $cmziptmpsubdir/$version/config/cmake/scripts/HDF5config.cmake $cmziptmpsubdir
cp $cmziptmpsubdir/$version/config/cmake/scripts/HDF5options.cmake $cmziptmpsubdir
@@ -233,15 +241,15 @@ tar2cmakezip()
# step 4: convert text files
# There maybe a simpler way to do this.
# options used in unix2dos:
# -k Keep the date stamp
# -k Keep the date stamp
# -q quiet mode
# grep redirect output to /dev/null because -q or -s are not portable.
find $cmziptmpsubdir/$version | \
while read inf; do \
if file $inf | grep "$inf\: .*text" > /dev/null 2>&1 ; then \
unix2dos -q -k $inf; \
fi\
done
while read inf; do \
if file $inf | grep "$inf\: .*text" > /dev/null 2>&1 ; then \
unix2dos -q -k $inf; \
fi\
done
# step 3: make zipball
# -9 maximum compression
@@ -256,7 +264,7 @@ tar2cmakezip()
}
# Function name: tar2cmaketgz
# Convert the release tarball to a Windows zipball with files to run CMake build.
# Convert the release tarball to a gzipped tar file with files to run CMake build.
#
# Programmer: Larry Knox
# Creation date: 2017-02-20
@@ -268,14 +276,14 @@ tar2cmakezip()
# Note: do this in a temporary directory to avoid changing
# the original source directory which may be around.
# 2. add build-unix.sh script.
# 3. add SZIP.tar.gz, ZLib.tar.gz and cmake files to top level directory.
# 3. add LIBAEC.tar.gz, ZLib.tar.gz and cmake files to top level directory.
# 4. create gzipped tar file with these contents:
# build-unix.sh script
# hdf5-<version> source code directory extracted from tar file
# CTestScript.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# HDF5config.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# HDF5options.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# SZip.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake
# LIBAEC.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake
# ZLib.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake
@@ -288,13 +296,13 @@ tar2cmakezip()
#
# need function to create another temporary directory, extract the
# $tmpdir/$HDF5_VERS.tar into it, create build-unix.sh,
# add CTestScript.cmake, HDF5config.cmake, SZIP.tar.gz
# add CTestScript.cmake, HDF5config.cmake, LIBAEC.tar.gz
# ZLib.tar.gz, HDF5 examples, and then tar.gz it.
tar2cmaketgz()
{
if [ $# -ne 3 ]; then
echo "usage: tar2cmaketgz <tarfilename> <tgzfilename>"
return 1
echo "usage: tar2cmaketgz <tarfilename> <tgzfilename>"
return 1
fi
cmgztmpdir=/tmp/cmgztmpdir$$
cmgztmpsubdir=$cmgztmpdir/CMake-$HDF5_VERS
@@ -307,25 +315,112 @@ tar2cmaketgz()
(cd $cmgztmpsubdir; tar xf -) < $tarfile
# sanity check
if [ ! -d $cmgztmpsubdir/$version ]; then
echo "untar did not create $cmgztmpsubdir/$version source dir"
# cleanup
rm -rf $cmgztmpdir
return 1
echo "untar did not create $cmgztmpsubdir/$version source dir"
# cleanup
rm -rf $cmgztmpdir
return 1
fi
# step 2: add build-unix.sh script
(cd $cmgztmpsubdir; echo "ctest -S HDF5config.cmake,BUILD_GENERATOR=Unix -C Release -V -O hdf5.log" > build-unix.sh; chmod 755 build-unix.sh)
# step 3: add SZIP.tar.gz, ZLib.tar.gz and cmake files
cp /mnt/scr1/pre-release/hdf5/CMake/SZip.tar.gz $cmgztmpsubdir
# step 3: add LIBAEC.tar.gz, ZLib.tar.gz and cmake files
cp /mnt/scr1/pre-release/hdf5/CMake/LIBAEC.tar.gz $cmgztmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/ZLib.tar.gz $cmgztmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/HDF5Examples-1.10.8-Source.tar.gz $cmgztmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/HDF5Examples-1.14.1-Source.tar.gz $cmgztmpsubdir
cp $cmgztmpsubdir/$version/config/cmake/scripts/CTestScript.cmake $cmgztmpsubdir
cp $cmgztmpsubdir/$version/config/cmake/scripts/HDF5config.cmake $cmgztmpsubdir
cp $cmgztmpsubdir/$version/config/cmake/scripts/HDF5options.cmake $cmgztmpsubdir
tar czf $DEST/CMake-$HDF5_VERS.tar.gz -C $cmgztmpdir . || exit 1
tar czf $DEST/CMake-$HDF5_VERS.tar.gz -C $cmgztmpdir . || exit 1
# cleanup
rm -rf $cmgztmpdir
}
# Function name: tar2hpccmaketgz
# Convert the release tarball to a gzipped tarfile with files to run CMake build
# and HDF5options.cmake files for parallel or serial only builds where build
# tests are run on compute nodes using batch scripts.
#
# Programmer: Larry Knox
# Creation date: 2019-01-28
#
# Modifications
#
# Steps:
# 1. untar the tarball in a temporary directory;
# Note: do this in a temporary directory to avoid changing
# the original source directory which may be around.
# 2. add build-unix.sh script.
# 3. add LIBAEC.tar.gz, ZLib.tar.gz and cmake files to top level directory.
# 4. create gzipped tar file with these contents:
# build-unix.sh script
# hdf5-<version> source code directory extracted from tar file
# CTestScript.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# HDF5config.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# HDF5options.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# LIBAEC.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake
# ZLib.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake
#
# 5. For HPC-CMake tgz file the following are also needed in the top-level directory:
# README_HPC copied from release_docs
# ser-HDF5options.cmake copied from <hdf5 source code>/config/cmake/scripts/HPC
# par-HDF5options.cmake copied from <hdf5 source code>/config/cmake/scripts/HPC
# HDF5options.cmake symlink to par-HDF5options.cmake
#
# Parameters:
# $1 version
# $2 release tarball
# $3 output zipball file name
#
# Returns 0 if successful; 1 otherwise
#
# need function to create another temporary directory, extract the
# $tmpdir/$HDF5_VERS.tar into it, create build-unix.sh,
# add CTestScript.cmake, HDF5config.cmake, LIBAEC.tar.gz
# ZLib.tar.gz, HDF5 examples, and then tar.gz it.
tar2hpccmaketgz()
{
if [ $# -ne 3 ]; then
echo "usage: tar2hpccmaketgz <tarfilename> <tgzfilename>"
return 1
fi
cmgztmpdir=/tmp/cmgztmpdir$$
cmgztmpsubdir=$cmgztmpdir/HPC-CMake-$HDF5_VERS
mkdir -p $cmgztmpsubdir
version=$1
tarfile=$2
tgzfile=$3
# step 1: untar tarball in cmgztmpdir
(cd $cmgztmpsubdir; tar xf -) < $tarfile
# sanity check
if [ ! -d $cmgztmpsubdir/$version ]; then
echo "untar did not create $cmgztmpsubdir/$version source dir"
# cleanup
rm -rf $cmgztmpdir
return 1
fi
# step 2: add build-unix.sh script
(cd $cmgztmpsubdir; echo "ctest -S HDF5config.cmake,BUILD_GENERATOR=Unix -C Release -V -O hdf5.log" > build-unix.sh; chmod 755 build-unix.sh)
# step 3: add LIBAEC.tar.gz, ZLib.tar.gz and cmake files
cp /mnt/scr1/pre-release/hdf5/CMake/LIBAEC.tar.gz $cmgztmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/ZLib.tar.gz $cmgztmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/HDF5Examples-1.14.1-Source.tar.gz $cmgztmpsubdir
cp $cmgztmpsubdir/$version/config/cmake/scripts/CTestScript.cmake $cmgztmpsubdir
cp $cmgztmpsubdir/$version/config/cmake/scripts/HDF5config.cmake $cmgztmpsubdir
cp $cmgztmpsubdir/$version/release_docs/README_HPC $cmgztmpsubdir
cp $cmgztmpsubdir/$version/config/cmake/scripts/HPC/ser-HDF5options.cmake $cmgztmpsubdir
cp $cmgztmpsubdir/$version/config/cmake/scripts/HPC/par-HDF5options.cmake $cmgztmpsubdir
(cd $cmgztmpsubdir; ln -s par-HDF5options.cmake HDF5options.cmake)
tar czf $DEST/HPC-CMake-$HDF5_VERS.tar.gz -C $cmgztmpdir . || exit 1
# cleanup
rm -rf $cmgztmpdir
}
@@ -347,7 +442,7 @@ check=yes
release_date=`date +%F`
today=`date +%Y%m%d`
pmode='no'
tmpdir="../#release_tmp.$$" # tmp work directory
tmpdir="../#release_tmp.$$" # tmp work directory
DOC_URL=https://git@bitbucket.hdfgroup.org/scm/hdffv/hdf5doc.git
CPPLUS_RM_NAME=cpplus_RM
MAINT_MODE_ENABLED=""
@@ -364,11 +459,11 @@ fi
RESTORE_VERSION()
{
if [ X-${VERS_OLD} != X- ]; then
echo restoring version information back to $VERS_OLD
rm -f config/lt_vers.am
cp $tmpdir/lt_vers.am config/lt_vers.am
bin/h5vers -s $VERS_OLD
VERS_OLD=
echo restoring version information back to $VERS_OLD
rm -f config/lt_vers.am
cp $tmpdir/lt_vers.am config/lt_vers.am
bin/h5vers -s $VERS_OLD
VERS_OLD=
fi
}
@@ -378,32 +473,32 @@ while [ -n "$1" ]; do
arg=$1
shift
case "$arg" in
-d)
DEST=$1
shift
;;
--nocheck)
check=no
;;
-h)
USAGE
exit 0
;;
--private)
pmode=yes
;;
-d)
DEST=$1
shift
;;
--nocheck)
check=no
;;
-h)
USAGE
exit 0
;;
--private)
pmode=yes
;;
--docver)
DOCVERSION=$1
shift
;;
-*)
echo "Unknown switch: $arg" 1>&2
USAGE
exit 1
;;
*)
methods="$methods $arg"
;;
-*)
echo "Unknown switch: $arg" 1>&2
USAGE
exit 1
;;
*)
methods="$methods $arg"
;;
esac
done
@@ -453,12 +548,12 @@ if [ "X$fail" = "Xyes" ]; then
echo ""
echo "Note! If you are running bin/release in a development branch"
echo "later than v 1.8 the MANIFEST check is expected to fail when"
echo "autogen.sh has not been run successfully. Either run autogen.sh "
echo "autogen.sh has not been run successfully. Either run autogen.sh "
echo "with /usr/hdf/bin/AUTOTOOLS at the beginning of PATH or add the"
echo "--nocheck argument to the bin/release command."
exit 1
else
echo "Continuing anyway..."
echo "Continuing anyway..."
fi
fi
@@ -492,7 +587,7 @@ test "$verbose" && echo " Running tar..." 1>&2
( \
cd $tmpdir; \
tar cf $HDF5_VERS.tar $HDF5_VERS/Makefile \
`sed 's/^\.\//hdf5-'$VERS'\//' $MANIFEST` || exit 1 \
`sed 's/^\.\//hdf5-'$VERS'\//' $MANIFEST` || exit 1 \
)
# Compress
@@ -500,56 +595,61 @@ MD5file=$HDF5_VERS.md5
cp /dev/null $DEST/$MD5file
for comp in $methods; do
case $comp in
tar)
cp -p $tmpdir/$HDF5_VERS.tar $DEST/$HDF5_VERS.tar
(cd $DEST; md5sum $HDF5_VERS.tar >> $MD5file)
;;
gzip)
test "$verbose" && echo " Running gzip..." 1>&2
gzip -9 <$tmpdir/$HDF5_VERS.tar >$DEST/$HDF5_VERS.tar.gz
(cd $DEST; md5sum $HDF5_VERS.tar.gz >> $MD5file)
;;
cmake-tgz)
test "$verbose" && echo " Creating CMake tar.gz file..." 1>&2
tar2cmaketgz $HDF5_VERS $tmpdir/$HDF5_VERS.tar $DEST/CMake-$HDF5_VERS.tar.gz 1>&2
(cd $DEST; md5sum CMake-$HDF5_VERS.tar.gz >> $MD5file)
tar)
cp -p $tmpdir/$HDF5_VERS.tar $DEST/$HDF5_VERS.tar
(cd $DEST; md5sum $HDF5_VERS.tar >> $MD5file)
;;
gzip)
test "$verbose" && echo " Running gzip..." 1>&2
gzip -9 <$tmpdir/$HDF5_VERS.tar >$DEST/$HDF5_VERS.tar.gz
(cd $DEST; md5sum $HDF5_VERS.tar.gz >> $MD5file)
;;
cmake-tgz)
test "$verbose" && echo " Creating CMake tar.gz file..." 1>&2
tar2cmaketgz $HDF5_VERS $tmpdir/$HDF5_VERS.tar $DEST/CMake-$HDF5_VERS.tar.gz 1>&2
(cd $DEST; md5sum CMake-$HDF5_VERS.tar.gz >> $MD5file)
;;
hpc-cmake-tgz)
test "$verbose" && echo " Creating HPC-CMake tar.gz file..." 1>&2
tar2hpccmaketgz $HDF5_VERS $tmpdir/$HDF5_VERS.tar $DEST/HPC-CMake-$HDF5_VERS.tar.gz 1>&2
(cd $DEST; md5sum HPC-CMake-$HDF5_VERS.tar.gz >> $MD5file)
;;
bzip2)
test "$verbose" && echo " Running bzip2..." 1>&2
bzip2 -9 <$tmpdir/$HDF5_VERS.tar >$DEST/$HDF5_VERS.tar.bz2
(cd $DEST; md5sum $HDF5_VERS.tar.bz2 >> $MD5file)
;;
zip)
test "$verbose" && echo " Creating zip ball..." 1>&2
tar2zip $HDF5_VERS $tmpdir/$HDF5_VERS.tar $DEST/$HDF5_VERS.zip 1>&2
(cd $DEST; md5sum $HDF5_VERS.zip >> $MD5file)
;;
bzip2)
test "$verbose" && echo " Running bzip2..." 1>&2
bzip2 -9 <$tmpdir/$HDF5_VERS.tar >$DEST/$HDF5_VERS.tar.bz2
(cd $DEST; md5sum $HDF5_VERS.tar.bz2 >> $MD5file)
;;
zip)
test "$verbose" && echo " Creating zip ball..." 1>&2
tar2zip $HDF5_VERS $tmpdir/$HDF5_VERS.tar $DEST/$HDF5_VERS.zip 1>&2
(cd $DEST; md5sum $HDF5_VERS.zip >> $MD5file)
;;
cmake-zip)
test "$verbose" && echo " Creating CMake-zip ball..." 1>&2
tar2cmakezip $HDF5_VERS $tmpdir/$HDF5_VERS.tar $DEST/CMake-$HDF5_VERS.zip 1>&2
(cd $DEST; md5sum CMake-$HDF5_VERS.zip >> $MD5file)
;;
doc)
doc)
if [ "${DOCVERSION}" = "" ]; then
DOCVERSION=master
fi
test "$verbose" && echo " Creating docs..." 1>&2
# Check out docs from git repo
(cd $tmpdir; git clone -q $DOC_URL ${DOCVERSION} > /dev/null) || exit 1
test "$verbose" && echo " Creating docs..." 1>&2
# Check out docs from git repo
(cd $tmpdir; git clone -q $DOC_URL ${DOCVERSION} > /dev/null) || exit 1
# Create doxygen C++ RM
(cd c++/src && doxygen cpp_doc_config > /dev/null ) || exit 1
# Replace version of C++ RM with just-created version
rm -rf $tmpdir/${DOCVERSION}/html/$CPPLUS_RM_NAME || exit 1
mv c++/src/$CPPLUS_RM_NAME $tmpdir/${DOCVERSION}/html/$CPPLUS_RM_NAME || exit 1
(cd c++/src && doxygen cpp_doc_config > /dev/null ) || exit 1
# Replace version of C++ RM with just-created version
rm -rf $tmpdir/${DOCVERSION}/html/$CPPLUS_RM_NAME || exit 1
mv c++/src/$CPPLUS_RM_NAME $tmpdir/${DOCVERSION}/html/$CPPLUS_RM_NAME || exit 1
# Compress the docs and move them to the release area
mv $tmpdir/${DOCVERSION} $tmpdir/${HDF5_VERS}_docs || exit 1
(cd $tmpdir && tar cf ${HDF5_VERS}_docs.tar ${HDF5_VERS}_docs) || exit 1
mv $tmpdir/${HDF5_VERS}_docs.tar $DEST || exit 1
;;
*)
echo "***Error*** Unknown method $comp"
exit 1
;;
mv $tmpdir/${DOCVERSION} $tmpdir/${HDF5_VERS}_docs || exit 1
(cd $tmpdir && tar cf ${HDF5_VERS}_docs.tar ${HDF5_VERS}_docs) || exit 1
mv $tmpdir/${HDF5_VERS}_docs.tar $DEST || exit 1
;;
*)
echo "***Error*** Unknown method $comp"
exit 1
;;
esac
done

View File

@@ -1,5 +1,6 @@
#!/usr/bin/perl -w
#!/usr/bin/env perl
require 5.003;
use warnings;
$indent=4;
#

View File

@@ -130,9 +130,10 @@ DISPLAYUSAGE()
set -
cat <<EOF
Usage: $PROGNAME [all] [checkout] [ftp <URL> [diff] [test] [srcdir] [release] [help]
[clean] [distclean] [echo] [deploy <dir>] [deploydir <dir>]
[zlib <zlib_path>] [releasedir <dir>] [srcdirname <dir>] [check-vfd]
[exec <command>] [module-load <module-list>] [op-configure <option>]
[clean] [distclean] [echo] [deploy <dir>] [deploydir <dir>]
[zlib <zlib_path>] [releasedir <dir>] [srcdirname <dir>] [check-vfd]
[check-passthrough-vol]
[exec <command>] [module-load <module-list>] [op-configure <option>]
[--<option>]
all: Run all commands (checkout, test & release)
[Default is all]
@@ -149,8 +150,8 @@ Usage: $PROGNAME [all] [checkout] [ftp <URL> [diff] [test] [srcdir] [release] [h
setenv <name> <value>:
Set environment variable <name> to <value>.
setenvN <N> <name> <value> ...:
Set environment variable with <N> values.
E.g., setenvN 3 x a b c is same as setenv x="a b c".
Set environment variable with <N> values.
E.g., setenvN 3 x a b c is same as setenv x="a b c".
srcdir: Use srcdir option (does not imply other commands)
"snapshot srcdir" is equivalent to "snapshot srcdir all"
"snapshot srcdir checkout" is equivalent to "snapshot checkout"
@@ -168,7 +169,12 @@ Usage: $PROGNAME [all] [checkout] [ftp <URL> [diff] [test] [srcdir] [release] [h
Use <dir> as the release directory
[Default is $ReleaseDir_default]
check-vfd:
Run make check-vfd instead of just make check.
Run make check-vfd instead of just make check.
check-passthrough-vol:
Run make check-passthrough-vol instead of just make check.
NOTE: Will only succeed with passthrough VOL connectors
that use the native VOL connector as the terminal
connector.
exttest <testscript>;
Run testscript;
exec <command>:
@@ -422,6 +428,9 @@ while [ $# -gt 0 ] ; do
check-vfd)
CHECKVAL=check-vfd
;;
check-passthrough-vol)
CHECKVAL=check-passthrough-vol
;;
module-load)
shift
if [ $# -lt 1 ]; then

148
bin/test-driver Executable file
View File

@@ -0,0 +1,148 @@
#! /bin/sh
# test-driver - basic testsuite driver script.
scriptversion=2013-07-13.22; # UTC
# Copyright (C) 2011-2014 Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
# Make unconditional expansion of undefined variables an error. This
# helps a lot in preventing typo-related bugs.
set -u
usage_error ()
{
echo "$0: $*" >&2
print_usage >&2
exit 2
}
print_usage ()
{
cat <<END
Usage:
test-driver --test-name=NAME --log-file=PATH --trs-file=PATH
[--expect-failure={yes|no}] [--color-tests={yes|no}]
[--enable-hard-errors={yes|no}] [--]
TEST-SCRIPT [TEST-SCRIPT-ARGUMENTS]
The '--test-name', '--log-file' and '--trs-file' options are mandatory.
END
}
test_name= # Used for reporting.
log_file= # Where to save the output of the test script.
trs_file= # Where to save the metadata of the test run.
expect_failure=no
color_tests=no
enable_hard_errors=yes
while test $# -gt 0; do
case $1 in
--help) print_usage; exit $?;;
--version) echo "test-driver $scriptversion"; exit $?;;
--test-name) test_name=$2; shift;;
--log-file) log_file=$2; shift;;
--trs-file) trs_file=$2; shift;;
--color-tests) color_tests=$2; shift;;
--expect-failure) expect_failure=$2; shift;;
--enable-hard-errors) enable_hard_errors=$2; shift;;
--) shift; break;;
-*) usage_error "invalid option: '$1'";;
*) break;;
esac
shift
done
missing_opts=
test x"$test_name" = x && missing_opts="$missing_opts --test-name"
test x"$log_file" = x && missing_opts="$missing_opts --log-file"
test x"$trs_file" = x && missing_opts="$missing_opts --trs-file"
if test x"$missing_opts" != x; then
usage_error "the following mandatory options are missing:$missing_opts"
fi
if test $# -eq 0; then
usage_error "missing argument"
fi
if test $color_tests = yes; then
# Keep this in sync with 'lib/am/check.am:$(am__tty_colors)'.
red='' # Red.
grn='' # Green.
lgn='' # Light green.
blu='' # Blue.
mgn='' # Magenta.
std='' # No color.
else
red= grn= lgn= blu= mgn= std=
fi
do_exit='rm -f $log_file $trs_file; (exit $st); exit $st'
trap "st=129; $do_exit" 1
trap "st=130; $do_exit" 2
trap "st=141; $do_exit" 13
trap "st=143; $do_exit" 15
# Test script is run here.
"$@" >$log_file 2>&1
estatus=$?
if test $enable_hard_errors = no && test $estatus -eq 99; then
tweaked_estatus=1
else
tweaked_estatus=$estatus
fi
case $tweaked_estatus:$expect_failure in
0:yes) col=$red res=XPASS recheck=yes gcopy=yes;;
0:*) col=$grn res=PASS recheck=no gcopy=no;;
77:*) col=$blu res=SKIP recheck=no gcopy=yes;;
99:*) col=$mgn res=ERROR recheck=yes gcopy=yes;;
*:yes) col=$lgn res=XFAIL recheck=no gcopy=yes;;
*:*) col=$red res=FAIL recheck=yes gcopy=yes;;
esac
# Report the test outcome and exit status in the logs, so that one can
# know whether the test passed or failed simply by looking at the '.log'
# file, without the need of also peaking into the corresponding '.trs'
# file (automake bug#11814).
echo "$res $test_name (exit status: $estatus)" >>$log_file
# Report outcome to console.
echo "${col}${res}${std}: $test_name"
# Register the test result, and other relevant metadata.
echo ":test-result: $res" > $trs_file
echo ":global-test-result: $res" >> $trs_file
echo ":recheck: $recheck" >> $trs_file
echo ":copy-in-global-log: $gcopy" >> $trs_file
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:

View File

@@ -1,4 +1,4 @@
#!/usr/bin/perl -w
#!/usr/bin/env perl
##
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
@@ -12,6 +12,7 @@
# help@hdfgroup.org.
##
require 5.003;
use warnings;
$Source = "";
##############################################################################
@@ -42,10 +43,12 @@ $Source = "";
"H5D_space_status_t" => "Ds",
"H5D_vds_view_t" => "Dv",
"H5FD_mpio_xfer_t" => "Dt",
"H5FD_splitter_vfd_config_t" => "Dr",
"herr_t" => "e",
"H5E_direction_t" => "Ed",
"H5E_error_t" => "Ee",
"H5E_type_t" => "Et",
"H5ES_status_t" => "Es",
"H5F_close_degree_t" => "Fd",
"H5F_fspace_strategy_t" => "Ff",
"H5F_file_space_type_t" => "Ff",
@@ -67,7 +70,9 @@ $Source = "";
"unsigned" => "Iu",
"unsigned int" => "Iu",
"uint32_t" => "Iu",
"uint64_t" => "UL",
"H5I_type_t" => "It",
"H5O_token_t" => "k",
"H5G_link_t" => "Ll", #Same as H5L_type_t now
"H5L_type_t" => "Ll",
"MPI_Comm" => "Mc",
@@ -76,7 +81,9 @@ $Source = "";
"off_t" => "o",
"H5O_type_t" => "Ot",
"H5P_class_t" => "p",
"hobj_ref_t" => "r",
"hobj_ref_t" => "Ro",
"hdset_reg_ref_t" => "Rd",
"H5R_ref_t" => "Rr",
"H5R_type_t" => "Rt",
"char" => "s",
"unsigned char" => "s",
@@ -95,8 +102,38 @@ $Source = "";
"H5T_str_t" => "Tz",
"unsigned long" => "Ul",
"unsigned long long" => "UL",
"H5VL_subclass_t" => "VS",
"H5VL_get_conn_lvl_t" => "VL",
"H5VL_attr_get_t" => "Va",
"H5VL_attr_optional_t" => "Vs",
"H5VL_attr_specific_t" => "Vb",
"H5VL_blob_specific_t" => "VB",
"H5VL_class_value_t" => "VC",
"H5VL_dataset_get_t" => "Vc",
"H5VL_dataset_specific_t" => "Vd",
"H5VL_dataset_optional_t" => "Vt",
"H5VL_datatype_get_t" => "Ve",
"H5VL_datatype_specific_t" => "Vf",
"H5VL_datatype_optional_t" => "Vu",
"H5VL_file_get_t" => "Vg",
"H5VL_file_specific_t" => "Vh",
"H5VL_file_optional_t" => "Vv",
"H5VL_group_get_t" => "Vi",
"H5VL_group_specific_t" => "Vj",
"H5VL_group_optional_t" => "Vw",
"H5VL_link_create_type_t" => "Vk",
"H5VL_link_get_t" => "Vl",
"H5VL_link_specific_t" => "Vm",
"H5VL_link_optional_t" => "Vx",
"H5VL_object_get_t" => "Vn",
"H5VL_object_specific_t" => "Vo",
"H5VL_object_optional_t" => "Vy",
"H5VL_request_specific_t" => "Vr",
"H5VL_request_optional_t" => "Vz",
"H5VL_blob_optional_t" => "VA",
"void" => "x",
"FILE" => "x",
"H5_alloc_stats_t" => "x",
"H5A_operator_t" => "x",
"H5A_operator1_t" => "x",
"H5A_operator2_t" => "x",
@@ -117,21 +154,33 @@ $Source = "";
"H5F_info1_t" => "x",
"H5F_info2_t" => "x",
"H5F_retry_info_t" => "x",
"H5F_vfd_swmr_config_t" => "x",
"H5FD_t" => "x",
"H5FD_class_t" => "x",
"H5FD_stream_fapl_t" => "x",
"H5FD_ros3_fapl_t" => "x",
"H5FD_hdfs_fapl_t" => "x",
"H5FD_file_image_callbacks_t" => "x",
"H5FD_mirror_fapl_t" => "x",
"H5G_iterate_t" => "x",
"H5G_info_t" => "x",
"H5I_free_t" => "x",
"H5I_iterate_func_t" => "x",
"H5I_search_func_t" => "x",
"H5L_class_t" => "x",
"H5L_elink_traverse_t" => "x",
"H5L_iterate_t" => "x",
"H5L_info1_t" => "x",
"H5L_info2_t" => "x",
"H5L_iterate1_t" => "x",
"H5L_iterate2_t" => "x",
"H5M_iterate_t" => 'x',
"H5MM_allocate_t" => "x",
"H5MM_free_t" => "x",
"H5O_info_t" => "x",
"H5O_iterate_t" => "x",
"H5O_info1_t" => "x",
"H5O_info2_t" => "x",
"H5O_native_info_t" => "x",
"H5O_iterate1_t" => "x",
"H5O_iterate2_t" => "x",
"H5O_mcdt_search_cb_t" => "x",
"H5P_cls_create_func_t" => "x",
"H5P_cls_copy_func_t" => "x",
@@ -147,6 +196,10 @@ $Source = "";
"H5T_cdata_t" => "x",
"H5T_conv_t" => "x",
"H5T_conv_except_func_t" => "x",
"H5VL_t" => "x",
"H5VL_class_t" => "x",
"H5VL_loc_params_t" => "x",
"H5VL_request_notify_t" => "x",
"H5Z_func_t" => "x",
"H5Z_filter_func_t" => "x",
"va_list" => "x",
@@ -190,6 +243,11 @@ sub argstring ($$$) {
# certain type qualifiers, and indirection.
$atype =~ s/^\bconst\b//;
$atype =~ s/\bH5_ATTR_UNUSED\b//g;
$atype =~ s/\bH5_ATTR_DEPRECATED_USED\b//g;
$atype =~ s/\bH5_ATTR_NDEBUG_UNUSED\b//g;
$atype =~ s/\bH5_ATTR_DEBUG_API_USED\b//g;
$atype =~ s/\bH5_ATTR_PARALLEL_UNUSED\b//g;
$atype =~ s/\bH5_ATTR_PARALLEL_USED\b//g;
$atype =~ s/\s+/ /g;
$ptr = length $1 if $atype =~ s/(\*+)//;
$atype =~ s/^\s+//;
@@ -295,7 +353,7 @@ sub rewrite_func ($$$$$) {
# Ignored due to NO TRACE comment.
} elsif ($body =~ s/((\n[ \t]*)H5TRACE\d+\s*\(.*?\);)\n/"$2$trace"/es) {
# Replaced an H5TRACE macro.
} elsif ($body=~s/((\n[ \t]*)FUNC_ENTER\w*\s*(\(.*?\))?;??)\n/"$1$2$trace"/es) {
} elsif ($body=~s/((\n[ \t]*)FUNC_ENTER\w*[ \t]*(\(.*?\))?;??)\n/"$1$2$trace"/es) {
# Added an H5TRACE macro after a FUNC_ENTER macro.
} else {
errmesg $file, $name, "unable to insert tracing information";

523
bin/warnhist Executable file
View File

@@ -0,0 +1,523 @@
#!/usr/bin/env perl
require 5.003;
use warnings;
#
# Copyright by The HDF Group.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the files COPYING and Copyright.html. COPYING can be found at the root
# of the source code distribution tree; Copyright.html can be found at the
# root level of an installed copy of the electronic HDF5 document set and
# is linked from the top-level documents page. It can also be found at
# http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
# access to either file, you may request a copy from help@hdfgroup.org.
#
# Quincey Koziol, koziol@hdfgroup.org
# 9 Aug 2013
#
# Purpose: Given an input file containing the output from a build of the
# library, gather the file names and line numbers, alias
# identical types of warnings together into a single bin and
# report the number of warnings for each type of warning, each file
# and the total count of warnings
# Perl modules/settings
use strict;
use Getopt::Std;
# Global variables, for accumulating information
my $totalcount = 0;
my %warn_count = ();
my $warncount;
my %warn_file = ();
my %warn_file_line = ();
my %file_count = ();
my $filecount;
my $ignorecount = 0;
my @ignorenames;
my %ignored_files = ();
my %warn_file_indices = ();
my %file_warn_indices = ();
my @warn_match_strings;
my @file_match_strings;
my %file_warn = ();
my %file_warn_line = ();
my $current_warning = 0;
my $current_file = 0;
my $warn_index;
my $last_c_name;
my $last_fort_name;
my $last_fort_line;
my $genericize = 1;
# Display usage
sub do_help {
print "Usage: 'warnhist [-h, --help] [-t <prefix>] [-w <n>] [-W] [-f <n>] [-F] [-s <warning string list>] [-S <file string list] [-l] [-u] [-i <name list>] [file]'\n";
print "\t-h, --help\tDisplay this usage\n";
print "\t-t <prefix>\tTrim pathname prefix from filenames, <prefix>\n";
print "\t-w <n>\tDisplay files for a given warning index list, <n>\n";
print "\t\t<n> can be a single value, a range, or a comma separated list\n";
print "\t\tFor example: '0' or '0,4' or '8-10' or '0,2-4,8-10,13'\n";
print "\t-W\tDisplay files for all warnings\n";
print "\t-f <n>\tDisplay warnings for a given file index list, <n>\n";
print "\t\t<n> can be a single value, a range, or a comma separated list\n";
print "\t\tFor example: '0' or '0,4' or '8-10' or '0,2-4,8-10,13'\n";
print "\t-F\tDisplay warnings for all files\n";
print "\t-s <warning string list>\tDisplay files for warnings which contain a string, <warning string list>\n";
print "\t\t<warning string list> is a comma separated list, with no spaces\n";
print "\t\tFor example: 'Wunused-dummy-argument' or 'Wunused-dummy-argument,Wunused-variable'\n";
print "\t-S <file string list>\tDisplay warnings for files which contain a string, <file string list>\n";
print "\t\t<file string list> is a comma separated list, with no spaces\n";
print "\t\tFor example: 'H5Fint' or 'H5Fint,H5Gnode'\n";
print "\t-l\tDisplay line nunbers for file/warning\n";
print "\t-u\tLeave 'unique' types in warnings, instead of genericizing them\n";
print "\t-i <name list>\tIgnore named files, <name list>\n";
print "\t\t<name list> is a comma separated list, with no spaces\n";
print "\t\tFor example: 'H5LTparse' or 'H5LTparse,H5LTanalyze'\n";
print "\tfile\tFilename containing build output\n";
print "\t\tIf no file is given, standard input is used.\n";
exit;
}
sub main::HELP_MESSAGE {
do_help();
}
# declare the Perl command line flags/options we want to allow
my %options=();
getopts("FWhut:w:f:s:S:i:l", \%options);
# Display usage, if requested
if($options{h}) {
do_help();
}
# Parse list of file names to ignore
if(exists $options{i}) {
@ignorenames = split /,/, $options{i};
#print @ignorenames;
}
# Parse list of warning indices to expand file names
if(exists $options{w}) {
my @tmp_indices;
@tmp_indices = split /,/, $options{w};
#print @tmp_indices;
for my $x (@tmp_indices) {
#print "x = '$x'\n";
if($x =~ /\-/) {
my $start_index;
my $end_index;
#print "matched = '$x'\n";
($start_index, $end_index) = split /\-/, $x;
#print "start_index = '$start_index', end_index = '$end_index'\n";
for my $y ($start_index..$end_index) {
#print "y = '$y'\n";
if(!exists $warn_file_indices{$y}) {
$warn_file_indices{$y} = $y;
}
}
}
else {
if(!exists $warn_file_indices{$x}) {
$warn_file_indices{$x} = $x;
}
}
}
#foreach (sort keys %warn_file_indices) {
# print "$_ : $warn_file_indices{$_}\n";
#}
}
# Parse list of warning strings to expand file names
if(exists $options{s}) {
@warn_match_strings = split /,/, $options{s};
# print @warn_match_strings;
}
# Parse list of file indices to expand warnings
if(exists $options{f}) {
my @tmp_indices;
@tmp_indices = split /,/, $options{f};
#print @tmp_indices;
for my $x (@tmp_indices) {
#print "x = '$x'\n";
if($x =~ /\-/) {
my $start_index;
my $end_index;
#print "matched = '$x'\n";
($start_index, $end_index) = split /\-/, $x;
#print "start_index = '$start_index', end_index = '$end_index'\n";
for my $y ($start_index..$end_index) {
#print "y = '$y'\n";
if(!exists $file_warn_indices{$y}) {
$file_warn_indices{$y} = $y;
}
}
}
else {
if(!exists $file_warn_indices{$x}) {
$file_warn_indices{$x} = $x;
}
}
}
#foreach (sort keys %warn_file_indices) {
# print "$_ : $warn_file_indices{$_}\n";
#}
}
# Parse list of warning strings for files to expand warnings
if(exists $options{S}) {
@file_match_strings = split /,/, $options{S};
# print @file_match_strings;
}
# Check if warnings should stay unique and not be "genericized"
if($options{u}) {
$genericize = 0;
}
PARSE_LINES:
while (<>) {
my $name;
my $line;
my $prev_line;
my $toss;
my $offset;
my $warning;
my $extra;
my $extra2;
# Retain last FORTRAN compile line, which comes a few lines before warning
if($_ =~ /.*\.[fF]90:.*/) {
($last_fort_name, $last_fort_line, $toss) = split /\:/, $_;
($last_fort_line, $toss) = split /\./, $last_fort_line;
}
# Retain last C/C++ compile line, which possibly comes a few lines before warning
if($_ =~ /.*[A-Za-z0-9_]\.[cC]:.*/) {
($last_c_name, $toss) = split /\:/, $_;
}
# Retain C/C++ compile line, which comes with the line of warning
if($_ =~ /.*[A-Za-z0-9_]\.[chC]\(.*[0-9]\):.*#.*/) {
$last_c_name = $_;
}
# Skip lines that don't have the word "warning"
next if $_ !~ /[Ww]arning/;
# Skip warnings from linker
next if $_ =~ /ld: warning:/;
# Skip warnings from build_py and install_lib
next if $_ =~ /warning: (build_py|install_lib)/;
# "Hide" the C++ '::' symbol until we've parsed out the parts of the line
while($_ =~ /\:\:/) {
$_ =~ s/\:\:/@@@@/g;
}
# Check for weird formatting of warning message
if($_ =~ /^cc1: warning:.*/) {
$name = $last_c_name;
$line = "??";
($toss, $toss, $warning, $extra, $extra2) = split /\:/, $_;
# Check for CMAKE build with warning on first line and no filename
} elsif($_ =~ /^\s*[Ww]arning:.*/) {
$name = $last_c_name;
$line = "??";
($toss, $warning, $extra, $extra2) = split /\:/, $_;
# Check for FORTRAN warning output
} elsif($_ =~ /^Warning:.*/) {
$name = $last_fort_name;
$line = $last_fort_line;
($toss, $warning, $extra, $extra2) = split /\:/, $_;
#print "1:",$.,":",$_;
# $_ = <>;
#print "2:",$.,":",$_;
# if($_ =~ /^\sFC.*/) {
# $_ = <>;
#print "3:",$.,":",$_;
# }
# ($name, $line, $toss) = split /\:/, $_;
#print "4:","'",$name,"'","-","'",$line,"'","\n";
# Check for improperly parsed filename or line
if($name =~ /^$/) {
print "Filename is a null string! Input line #$. is: '$_'";
next
}
if($line =~ /^$/) {
print "Line is a null string! Input line #$. is: '$_'";
next
}
# Check for non-GCC warning (Solaris/Oracle?)
} elsif($_ =~ /^\".*, line [0-9]+: *[Ww]arning:.*/) {
($name, $toss, $warning, $extra, $extra2) = split /\:/, $_;
($name, $line) = split /\,/, $name;
$name =~ s/^\"//g;
$name =~ s/\"$//g;
$line =~ s/^\s*line\s*//g;
# print "name:'", $name, "'-'", $line, "'\n";
# print "warning:'", $warning, "'\n";
# Check for Intel icc warning
} elsif($_ =~ /.*[A-Za-z0-9_]\.[chC]\(.*[0-9]\):.*#.*/) {
($last_c_name, $toss, $warning) = split /\:/, $last_c_name;
($name, $line) = split /\(/, $last_c_name;
$line =~ s/\)//g;
} else {
# Check for 'character offset' field appended to file & line #
# (This is probably specific to GCC)
if($_ =~ /^.*[0-9]+\:[0-9]+\:/) {
($name, $line, $offset, $toss, $warning, $extra, $extra2) = split /\:/, $_;
} else {
($name, $line, $toss, $warning, $extra, $extra2) = split /\:/, $_;
}
}
# Check for extra ':' followed by more text in original warning string,
# and append the ':' and text back onto the parsed warning
# (Use 'length $extra' idiom to avoid warning when $extra is undefined)
if(length $extra ) {
$warning = join ':', $warning, $extra;
}
if(length $extra2 ) {
$warning = join ':', $warning, $extra2;
}
# Restore the C++ '::' symbol now that we've parsed out the parts of the line
while($warning =~ /@@@@/) {
$warning =~ s/@@@@/\:\:/g;
}
# Trim leading '..' paths from filename
while($name =~ /^\.\.\//) {
$name =~ s/^\.\.\///g;
}
# Check for trimming prefix
if((exists $options{t}) && ($name =~ /$options{t}/)) {
$name =~ s/^$options{t}\///g;
}
# Check for ignored file
if(exists $options{i}) {
for my $x (@ignorenames) {
#print "x = '$x'\n";
if($name =~ /$x/) {
# print "matched name = '$name'\n";
$ignorecount++;
if(!(exists $ignored_files{$name})) {
$ignored_files{$name} = $name;
}
next PARSE_LINES;
}
}
}
# Check for improperly parsed warning (usually an undefined warning string)
if(!defined $warning) {
print "Warning Undefined! Input line is: '$_'";
next
}
# Get rid of leading & trailing whitespace
$warning =~ s/^\s//g;
$warning =~ s/\s$//g;
# Check for improperly parsed warning
if($warning =~ /^$/) {
print "Warning is a null string! Input line is: '$_'";
next
}
# Convert all quotes to '
$warning =~ s//'/g;
$warning =~ s//'/g;
$warning =~ s/"/'/g;
#
# These skipped messages & "genericizations" may be specific to GCC
# Skip supplemental warning message
next if $warning =~ /near initialization for/;
# Skip C++ supplemental warning message
next if $warning =~ /in call to/;
# Skip GCC warning that should be a note
next if $_ =~ /\(this will be reported only once per input file\)/;
if($genericize) {
# Eliminate C/C++ "{aka <some type>}" and "{aka '<some type>'}" info
if($warning =~ /\s(\{|\()aka '?[A-Za-z_0-9\(\)\*\,\[\]\.\<\>\&\:\+\#]+[A-Za-z_0-9\(\)\*\,\[\]\.\<\>\&\:\+\#\ ]*'?(\}|\))/) {
$warning =~ s/\s(\{|\()aka '?[A-Za-z_0-9\(\)\*\,\[\]\.\<\>\&\:\+\#]+[A-Za-z_0-9\(\)\*\,\[\]\.\<\>\&\:\+\#\ ]*'?(\}|\))//g;
}
# Genericize C/C++ '<some type>', printf format '%<some format>', and
# "unknown warning group" into '-'
if($warning =~ /'[A-Za-z_0-9\(\)\*\,\[\]\.\<\>\&\:\+\#\-\=]+[A-Za-z_0-9\(\)\*\,\[\]\.\<\>\&\:\+\#\-\=\ ]*'/) {
$warning =~ s/'[A-Za-z_0-9\(\)\*\,\[\]\.\<\>\&\:\+\#\-\=]+[A-Za-z_0-9\(\)\*\,\[\]\.\<\>\&\:\+\#\-\=\ ]*'/'-'/g;
}
if($warning =~ /'%[\#0\-\ \+]*[,;\:_]?[0-9\*]*\.?[0-9\*]*[hjltzL]*[aAcdeEfFgGinosuxX]'/) {
$warning =~ s/'%[\#0\-\ \+]*[,;\:_]?[0-9\*]*\.?[0-9\*]*[hjltzL]*[aAcdeEfFgGinosuxX]'/'-'/g;
}
# Genericize C/C++ "<macro>" warnings into "-"
if($warning =~ /"[A-Za-z_0-9]*"/) {
$warning =~ s/"[A-Za-z_0-9]*"/"-"/g;
}
# Genericize [GCC?] C/C++ warning text about suggessted attribute
if($warning =~ /attribute=[A-Za-z_0-9]*\]/) {
$warning =~ s/=[A-Za-z_0-9]*\]/=-\]/g;
}
# Genericize FORTRAN "at (<n>)" into "at (-)", "REAL(<n>)" into "REAL(-)",
# and "INTEGER(<n>)" into "INTEGER(-)"
if($warning =~ /.*at\s\([0-9]+\).*/) {
$warning =~ s/at\s\([0-9]+\)/at \(-\)/g;
}
if($warning =~ /.*REAL\([0-9]+\).*/) {
$warning =~ s/REAL\([0-9]+\)/REAL\(-\)/g;
}
if($warning =~ /.*INTEGER\([0-9]+\).*/) {
$warning =~ s/INTEGER\([0-9]+\)/INTEGER\(-\)/g;
}
# Genericize standalone numbers in warnings
if($warning =~ /(\s|')-?[0-9]+(\s|')/) {
$warning =~ s/-?[0-9]+/-/g;
}
# Genericize unusual GCC/G++/GFORTRAN warnings that aren't handled above
if($warning =~ /\[deprecation\] [A-Za-z_0-9]*\([A-Za-z_,0-9]*\) in [A-Za-z_0-9]* has been deprecated.*/) {
$warning =~ s/[A-Za-z_0-9]*\([A-Za-z_,0-9]*\) in [A-Za-z_0-9]*/-\(-\) in -/g;
}
}
# print "warning = $warning\n";
# <end possible GCC-specific code>
# Check if we've already seen this warning on this line in this file
# (Can happen for warnings from inside header files)
if( !exists $warn_file_line{$warning}{$name}{$line} ) {
# Increment count for [generic] warning
$warn_count{$warning}++;
$warn_file{$warning}{$name}++;
$warn_file_line{$warning}{$name}{$line}++;
# Increment count for filename
$file_count{$name}++;
$file_warn{$name}{$warning}++;
$file_warn_line{$name}{$warning}{$line}++;
# Increment total count of warnings
$totalcount++;
}
# print "name = $name\n";
# print "line = $line\n";
# print "offset = $offset\n";
# print "warning = \"$warning\"\n";
}
print "Total unique [non-ignored] warnings: $totalcount\n";
print "Total ignored warnings: $ignorecount\n";
$warncount = keys %warn_count;
print "Total unique kinds of warnings: $warncount\n";
$filecount = keys %file_count;
print "Total files with warnings: $filecount\n\n";
# Print warnings in decreasing frequency
print "# of Warnings by frequency (file count)\n";
print "=======================================\n";
for my $x (sort {$warn_count{$b} <=> $warn_count{$a}} keys(%warn_count)) {
printf ("[%2d] %4d (%2d) - %s\n", $current_warning++, $warn_count{$x}, scalar(keys %{$warn_file_line{$x}}), $x);
if((exists $options{W}) || (exists $options{w}) || (exists $options{s})) {
my $curr_index = $current_warning - 1;
my $match = 0;
# Check for string from list in current warning
if(exists $options{s}) {
for my $y (@warn_match_strings) {
# print "y = '$y'\n";
if($x =~ /$y/) {
# print "matched warning = '$x'\n";
$match = 1;
last;
}
}
}
# Check if current warning index matches
if((exists $warn_file_indices{$curr_index}) && $curr_index == $warn_file_indices{$curr_index}) {
$match = 1;
}
if($match) {
for my $y (sort {$warn_file{$x}{$b} <=> $warn_file{$x}{$a}} keys(%{$warn_file{$x}})) {
printf ("\t%4d - %s\n", $warn_file{$x}{$y}, $y);
if(exists $options{l}) {
my $lines = join ", ", sort {$a <=> $b} keys %{$warn_file_line{$x}{$y}};
printf("\t\tLines: $lines \n");
}
}
}
}
}
# Print warnings in decreasing frequency, by filename
print "\n# of Warnings by filename (warning type)\n";
print "========================================\n";
for my $x (sort {$file_count{$b} <=> $file_count{$a}} keys(%file_count)) {
printf ("[%3d] %4d (%2d) - %s\n", $current_file++, $file_count{$x}, scalar(keys %{$file_warn_line{$x}}), $x);
if((exists $options{F}) || (exists $options{f}) || (exists $options{S})) {
my $curr_index = $current_file - 1;
my $match = 0;
# Check for string from list in current file
if(exists $options{S}) {
for my $y (@file_match_strings) {
# print "y = '$y'\n";
if($x =~ /$y/) {
# print "matched warning = '$x'\n";
$match = 1;
last;
}
}
}
# Check if current file index matches
if((exists $file_warn_indices{$curr_index}) && $curr_index == $file_warn_indices{$curr_index}) {
$match = 1;
}
if($match) {
for my $y (sort {$file_warn{$x}{$b} <=> $file_warn{$x}{$a}} keys(%{$file_warn{$x}})) {
printf ("\t%4d - %s\n", $file_warn{$x}{$y}, $y);
if(exists $options{l}) {
my $lines = join ", ", sort {$a <=> $b} keys %{$file_warn_line{$x}{$y}};
printf("\t\tLines: $lines \n");
}
}
}
}
}
# Print names of files that were ignored
# Check for ignored file
if(exists $options{i}) {
print "\nIgnored filenames\n";
print "=================\n";
for my $x (sort keys(%ignored_files)) {
print "$x\n";
}
}

View File

@@ -1,4 +1,4 @@
cmake_minimum_required (VERSION 3.10)
cmake_minimum_required (VERSION 3.12)
project (HDF5_CPP CXX)
add_subdirectory (src)

View File

@@ -14,13 +14,25 @@
## Run automake to generate a Makefile.in from this file.
#
# Top-level HDF5-C++ Makefile(.in)
#
#
include $(top_srcdir)/config/commence.am
if BUILD_TESTS_CONDITIONAL
TEST_DIR = test
else
TEST_DIR=
endif
## Only recurse into subdirectories if C++ interface is enabled.
if BUILD_CXX_CONDITIONAL
SUBDIRS=src test
SUBDIRS=src $(TEST_DIR)
# Test with just the native connector, with a single pass-through connector
# and with a doubly-stacked pass-through.
VOL_LIST = native "pass_through under_vol=0;under_info={}" \
"pass_through under_vol=505;under_info={under_vol=0;under_info={}}"
endif
DIST_SUBDIRS = src test examples

1529
c++/Makefile.in Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,4 @@
cmake_minimum_required (VERSION 3.10)
cmake_minimum_required (VERSION 3.12)
project (HDF5_CPP_EXAMPLES CXX)
# --------------------------------------------------------------------
@@ -34,20 +34,40 @@ set (tutr_examples
foreach (example ${examples})
add_executable (cpp_ex_${example} ${HDF5_CPP_EXAMPLES_SOURCE_DIR}/${example}.cpp)
target_include_directories(cpp_ex_${example} PRIVATE "${HDF5_SRC_DIR};${HDF5_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
TARGET_C_PROPERTIES (cpp_ex_${example} STATIC)
target_link_libraries (cpp_ex_${example} PRIVATE ${HDF5_CPP_LIB_TARGET} ${HDF5_LIB_TARGET})
target_include_directories (cpp_ex_${example} PRIVATE "${HDF5_SRC_DIR};${HDF5_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
if (NOT BUILD_SHARED_LIBS)
TARGET_C_PROPERTIES (cpp_ex_${example} STATIC)
target_link_libraries (cpp_ex_${example} PRIVATE ${HDF5_CPP_LIB_TARGET} ${HDF5_LIB_TARGET})
else ()
TARGET_C_PROPERTIES (cpp_ex_${example} SHARED)
target_link_libraries (cpp_ex_${example} PRIVATE ${HDF5_CPP_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
if (MINGW)
target_link_options (${HDF5_CPP_LIBSH_TARGET}
PRIVATE -static-libgcc -static-libstdc++
)
endif ()
endif ()
set_target_properties (cpp_ex_${example} PROPERTIES FOLDER examples/cpp)
endforeach ()
foreach (example ${tutr_examples})
add_executable (cpp_ex_${example} ${HDF5_CPP_EXAMPLES_SOURCE_DIR}/${example}.cpp)
target_include_directories(cpp_ex_${example} PRIVATE "${HDF5_SRC_DIR};${HDF5_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
TARGET_C_PROPERTIES (cpp_ex_${example} STATIC)
target_link_libraries (cpp_ex_${example} PRIVATE ${HDF5_CPP_LIB_TARGET} ${HDF5_LIB_TARGET})
target_include_directories (cpp_ex_${example} PRIVATE "${HDF5_SRC_DIR};${HDF5_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
if (NOT BUILD_SHARED_LIBS)
TARGET_C_PROPERTIES (cpp_ex_${example} STATIC)
target_link_libraries (cpp_ex_${example} PRIVATE ${HDF5_CPP_LIB_TARGET} ${HDF5_LIB_TARGET})
else ()
TARGET_C_PROPERTIES (cpp_ex_${example} SHARED)
target_link_libraries (cpp_ex_${example} PRIVATE ${HDF5_CPP_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
if (MINGW)
target_link_options (${HDF5_CPP_LIBSH_TARGET}
PRIVATE -static-libgcc -static-libstdc++
)
endif ()
endif ()
set_target_properties (cpp_ex_${example} PROPERTIES FOLDER examples/cpp)
endforeach ()
if (BUILD_TESTING)
if (BUILD_TESTING AND HDF5_TEST_CPP AND HDF5_TEST_EXAMPLES AND HDF5_TEST_SERIAL)
include (CMakeTests.cmake)
endif ()

View File

@@ -16,81 +16,79 @@
##############################################################################
##############################################################################
# Remove any output file left over from previous test run
add_test (
NAME CPP_ex-clear-objects
COMMAND ${CMAKE_COMMAND}
-E remove
Group.h5
SDS.h5
SDScompound.h5
SDSextendible.h5
Select.h5
)
if (NOT "${last_test}" STREQUAL "")
set_tests_properties (CPP_ex-clear-objects PROPERTIES DEPENDS ${last_test})
endif ()
set (last_test "CPP_ex-clear-objects")
add_test (
NAME CPP_ex-clear-objects
COMMAND ${CMAKE_COMMAND}
-E remove
Group.h5
SDS.h5
SDScompound.h5
SDSextendible.h5
Select.h5
)
set_tests_properties (CPP_ex-clear-objects PROPERTIES FIXTURES_SETUP clear_cppex)
foreach (example ${examples})
if (HDF5_ENABLE_USING_MEMCHECKER)
add_test (NAME CPP_ex_${example} COMMAND $<TARGET_FILE:cpp_ex_${example}>)
else ()
add_test (NAME CPP_ex_${example} COMMAND "${CMAKE_COMMAND}"
-D "TEST_PROGRAM=$<TARGET_FILE:cpp_ex_${example}>"
-D "TEST_ARGS:STRING="
-D "TEST_EXPECT=0"
-D "TEST_SKIP_COMPARE=TRUE"
-D "TEST_OUTPUT=cpp_ex_${example}.txt"
#-D "TEST_REFERENCE=cpp_ex_${example}.out"
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}"
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
)
endif ()
if (NOT "${last_test}" STREQUAL "")
set_tests_properties (CPP_ex_${example} PROPERTIES DEPENDS ${last_test})
endif ()
set (last_test "CPP_ex_${example}")
endforeach ()
foreach (example ${examples})
if (HDF5_ENABLE_USING_MEMCHECKER)
add_test (NAME CPP_ex_${example} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:cpp_ex_${example}>)
else ()
add_test (NAME CPP_ex_${example} COMMAND "${CMAKE_COMMAND}"
-D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}"
-D "TEST_PROGRAM=$<TARGET_FILE:cpp_ex_${example}>"
-D "TEST_ARGS:STRING="
-D "TEST_EXPECT=0"
-D "TEST_SKIP_COMPARE=TRUE"
-D "TEST_OUTPUT=cpp_ex_${example}.txt"
#-D "TEST_REFERENCE=cpp_ex_${example}.out"
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}"
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
)
endif ()
set_tests_properties (CPP_ex_${example} PROPERTIES FIXTURES_REQUIRED clear_cppex)
if (last_test)
set_tests_properties (CPP_ex_${example} PROPERTIES DEPENDS ${last_test})
endif ()
set (last_test "CPP_ex_${example}")
endforeach ()
#the following dependencies are handled by the order of the files
# SET_TESTS_PROPERTIES(CPP_ex_readdata PROPERTIES DEPENDS CPP_ex_create)
# SET_TESTS_PROPERTIES(CPP_ex_chunks PROPERTIES DEPENDS CPP_ex_extend_ds)
add_test (
NAME CPP_ex_tutr-clear-objects
COMMAND ${CMAKE_COMMAND}
-E remove
h5tutr_cmprss.h5
h5tutr_dset.h5
h5tutr_extend.h5
h5tutr_group.h5
h5tutr_groups.h5
h5tutr_subset.h5
)
if (NOT "${last_test}" STREQUAL "")
set_tests_properties (CPP_ex_tutr-clear-objects PROPERTIES DEPENDS ${last_test})
endif ()
set (last_test "CPP_ex_tutr-clear-objects")
add_test (
NAME CPP_ex_tutr-clear-objects
COMMAND ${CMAKE_COMMAND}
-E remove
h5tutr_cmprss.h5
h5tutr_dset.h5
h5tutr_extend.h5
h5tutr_group.h5
h5tutr_groups.h5
h5tutr_subset.h5
)
set_tests_properties (CPP_ex_tutr-clear-objects PROPERTIES FIXTURES_SETUP clear_cppex_tutr)
foreach (example ${tutr_examples})
if (HDF5_ENABLE_USING_MEMCHECKER)
add_test (NAME CPP_ex_${example} COMMAND $<TARGET_FILE:cpp_ex_${example}>)
else ()
add_test (NAME CPP_ex_${example} COMMAND "${CMAKE_COMMAND}"
-D "TEST_PROGRAM=$<TARGET_FILE:cpp_ex_${example}>"
-D "TEST_ARGS:STRING="
-D "TEST_EXPECT=0"
-D "TEST_SKIP_COMPARE=TRUE"
-D "TEST_OUTPUT=cpp_ex_${example}.txt"
#-D "TEST_REFERENCE=cpp_ex_${example}.out"
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}"
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
)
endif ()
if (NOT "${last_test}" STREQUAL "")
set_tests_properties (CPP_ex_${example} PROPERTIES DEPENDS ${last_test})
endif ()
set (last_test "CPP_ex_${example}")
endforeach ()
foreach (example ${tutr_examples})
if (HDF5_ENABLE_USING_MEMCHECKER)
add_test (NAME CPP_ex_${example} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:cpp_ex_${example}>)
else ()
add_test (NAME CPP_ex_${example} COMMAND "${CMAKE_COMMAND}"
-D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}"
-D "TEST_PROGRAM=$<TARGET_FILE:cpp_ex_${example}>"
-D "TEST_ARGS:STRING="
-D "TEST_EXPECT=0"
-D "TEST_SKIP_COMPARE=TRUE"
-D "TEST_OUTPUT=cpp_ex_${example}.txt"
#-D "TEST_REFERENCE=cpp_ex_${example}.out"
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}"
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
)
endif ()
set_tests_properties (CPP_ex_${example} PROPERTIES FIXTURES_REQUIRED clear_cppex_tutr)
if (last_test)
set_tests_properties (CPP_ex_${example} PROPERTIES DEPENDS ${last_test})
endif ()
set (last_test "CPP_ex_${example}")
endforeach ()
#the following dependencies are handled by the order of the files
# SET_TESTS_PROPERTIES(CPP_ex_h5tutr_crtatt PROPERTIES DEPENDS CPP_ex_h5tutr_crtdat)
# SET_TESTS_PROPERTIES(CPP_ex_h5tutr_rdwt PROPERTIES DEPENDS CPP_ex_h5tutr_crtdat)

View File

@@ -49,8 +49,8 @@ CXX_API=yes
# Where to install examples
# Note: no '/' after DESTDIR. Explanation in commence.am
EXAMPLEDIR=${DESTDIR}$(exec_prefix)/share/hdf5_examples/c++
EXAMPLETOPDIR=${DESTDIR}$(exec_prefix)/share/hdf5_examples
EXAMPLEDIR=${DESTDIR}$(examplesdir)/c++
EXAMPLETOPDIR=${DESTDIR}$(examplesdir)
# How to build programs using h5c++
$(EXTRA_PROG): $(H5CPP)

1475
c++/examples/Makefile.in Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -37,194 +37,194 @@ const int RANKC = 1;
int main (void)
{
hsize_t i, j;
hsize_t i, j;
// Try block to detect exceptions raised by any of the calls inside it
try
{
/*
* Turn off the auto-printing when failure occurs so that we can
* handle the errors appropriately
*/
Exception::dontPrint();
/*
* Turn off the auto-printing when failure occurs so that we can
* handle the errors appropriately
*/
Exception::dontPrint();
/*
* Open the file and the dataset.
*/
H5File file( FILE_NAME, H5F_ACC_RDONLY );
DataSet dataset = file.openDataSet( DATASET_NAME );
/*
* Open the file and the dataset.
*/
H5File file( FILE_NAME, H5F_ACC_RDONLY );
DataSet dataset = file.openDataSet( DATASET_NAME );
/*
* Get filespace for rank and dimension
*/
DataSpace filespace = dataset.getSpace();
/*
* Get filespace for rank and dimension
*/
DataSpace filespace = dataset.getSpace();
/*
* Get number of dimensions in the file dataspace
*/
int rank = filespace.getSimpleExtentNdims();
/*
* Get number of dimensions in the file dataspace
*/
int rank = filespace.getSimpleExtentNdims();
/*
* Get and print the dimension sizes of the file dataspace
*/
hsize_t dims[2]; // dataset dimensions
rank = filespace.getSimpleExtentDims( dims );
cout << "dataset rank = " << rank << ", dimensions "
<< (unsigned long)(dims[0]) << " x "
<< (unsigned long)(dims[1]) << endl;
/*
* Get and print the dimension sizes of the file dataspace
*/
hsize_t dims[2]; // dataset dimensions
rank = filespace.getSimpleExtentDims( dims );
cout << "dataset rank = " << rank << ", dimensions "
<< (unsigned long)(dims[0]) << " x "
<< (unsigned long)(dims[1]) << endl;
/*
* Define the memory space to read dataset.
*/
DataSpace mspace1(RANK, dims);
/*
* Define the memory space to read dataset.
*/
DataSpace mspace1(RANK, dims);
/*
* Read dataset back and display.
*/
int data_out[NX][NY]; // buffer for dataset to be read
dataset.read( data_out, PredType::NATIVE_INT, mspace1, filespace );
/*
* Read dataset back and display.
*/
int data_out[NX][NY]; // buffer for dataset to be read
dataset.read( data_out, PredType::NATIVE_INT, mspace1, filespace );
cout << "\n";
cout << "Dataset: \n";
for (j = 0; j < dims[0]; j++)
{
for (i = 0; i < dims[1]; i++)
cout << data_out[j][i] << " ";
cout << endl;
}
cout << "\n";
cout << "Dataset: \n";
for (j = 0; j < dims[0]; j++)
{
for (i = 0; i < dims[1]; i++)
cout << data_out[j][i] << " ";
cout << endl;
}
/*
* dataset rank 2, dimensions 10 x 5
* chunk rank 2, dimensions 2 x 5
/*
* dataset rank 2, dimensions 10 x 5
* chunk rank 2, dimensions 2 x 5
* Dataset:
* 1 1 1 3 3
* 1 1 1 3 3
* 1 1 1 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
*/
* Dataset:
* 1 1 1 3 3
* 1 1 1 3 3
* 1 1 1 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
*/
/*
* Read the third column from the dataset.
* First define memory dataspace, then define hyperslab
* and read it into column array.
*/
hsize_t col_dims[1];
col_dims[0] = 10;
DataSpace mspace2( RANKC, col_dims );
/*
* Read the third column from the dataset.
* First define memory dataspace, then define hyperslab
* and read it into column array.
*/
hsize_t col_dims[1];
col_dims[0] = 10;
DataSpace mspace2( RANKC, col_dims );
/*
* Define the column (hyperslab) to read.
*/
hsize_t offset[2] = { 0, 2 };
hsize_t count[2] = { 10, 1 };
int column[10]; // buffer for column to be read
/*
* Define the column (hyperslab) to read.
*/
hsize_t offset[2] = { 0, 2 };
hsize_t count[2] = { 10, 1 };
int column[10]; // buffer for column to be read
/*
* Define hyperslab and read.
*/
filespace.selectHyperslab( H5S_SELECT_SET, count, offset );
dataset.read( column, PredType::NATIVE_INT, mspace2, filespace );
/*
* Define hyperslab and read.
*/
filespace.selectHyperslab( H5S_SELECT_SET, count, offset );
dataset.read( column, PredType::NATIVE_INT, mspace2, filespace );
cout << endl;
cout << "Third column: " << endl;
for (i = 0; i < 10; i++)
cout << column[i] << endl;
cout << endl;
cout << "Third column: " << endl;
for (i = 0; i < 10; i++)
cout << column[i] << endl;
/*
* Third column:
* 1
* 1
* 1
* 0
* 0
* 0
* 0
* 0
* 0
* 0
*/
/*
* Third column:
* 1
* 1
* 1
* 0
* 0
* 0
* 0
* 0
* 0
* 0
*/
/*
* Get creation properties list.
*/
DSetCreatPropList cparms = dataset.getCreatePlist();
/*
* Get creation properties list.
*/
DSetCreatPropList cparms = dataset.getCreatePlist();
/*
* Check if dataset is chunked.
*/
hsize_t chunk_dims[2];
int rank_chunk;
if( H5D_CHUNKED == cparms.getLayout() )
{
/*
* Get chunking information: rank and dimensions
*/
rank_chunk = cparms.getChunk( 2, chunk_dims);
cout << "chunk rank " << rank_chunk << "dimensions "
<< (unsigned long)(chunk_dims[0]) << " x "
<< (unsigned long)(chunk_dims[1]) << endl;
/*
* Check if dataset is chunked.
*/
hsize_t chunk_dims[2];
int rank_chunk;
if( H5D_CHUNKED == cparms.getLayout() )
{
/*
* Get chunking information: rank and dimensions
*/
rank_chunk = cparms.getChunk( 2, chunk_dims);
cout << "chunk rank " << rank_chunk << "dimensions "
<< (unsigned long)(chunk_dims[0]) << " x "
<< (unsigned long)(chunk_dims[1]) << endl;
/*
* Define the memory space to read a chunk.
*/
DataSpace mspace3( rank_chunk, chunk_dims );
/*
* Define the memory space to read a chunk.
*/
DataSpace mspace3( rank_chunk, chunk_dims );
/*
* Define chunk in the file (hyperslab) to read.
*/
offset[0] = 2;
offset[1] = 0;
count[0] = chunk_dims[0];
count[1] = chunk_dims[1];
filespace.selectHyperslab( H5S_SELECT_SET, count, offset );
/*
* Define chunk in the file (hyperslab) to read.
*/
offset[0] = 2;
offset[1] = 0;
count[0] = chunk_dims[0];
count[1] = chunk_dims[1];
filespace.selectHyperslab( H5S_SELECT_SET, count, offset );
/*
* Read chunk back and display.
*/
int chunk_out[2][5]; // buffer for chunk to be read
dataset.read( chunk_out, PredType::NATIVE_INT, mspace3, filespace );
cout << endl;
cout << "Chunk:" << endl;
for (j = 0; j < chunk_dims[0]; j++)
{
for (i = 0; i < chunk_dims[1]; i++)
cout << chunk_out[j][i] << " ";
cout << endl;
}
/*
* Chunk:
* 1 1 1 0 0
* 2 0 0 0 0
*/
}
/*
* Read chunk back and display.
*/
int chunk_out[2][5]; // buffer for chunk to be read
dataset.read( chunk_out, PredType::NATIVE_INT, mspace3, filespace );
cout << endl;
cout << "Chunk:" << endl;
for (j = 0; j < chunk_dims[0]; j++)
{
for (i = 0; i < chunk_dims[1]; i++)
cout << chunk_out[j][i] << " ";
cout << endl;
}
/*
* Chunk:
* 1 1 1 0 0
* 2 0 0 0 0
*/
}
} // end of try block
// catch failure caused by the H5File operations
catch( FileIException error )
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch( DataSetIException error )
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch( DataSpaceIException error )
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
return 0;
}

View File

@@ -41,15 +41,15 @@ int main(void)
{
/* First structure and dataset*/
typedef struct s1_t {
int a;
float b;
double c;
int a;
float b;
double c;
} s1_t;
/* Second structure (subset of s1_t) and dataset*/
typedef struct s2_t {
double c;
int a;
double c;
int a;
} s2_t;
// Try block to detect exceptions raised by any of the calls inside it
@@ -135,12 +135,12 @@ int main(void)
*/
cout << endl << "Field c : " << endl;
for( i = 0; i < LENGTH; i++)
cout << s2[i].c << " ";
cout << s2[i].c << " ";
cout << endl;
cout << endl << "Field a : " << endl;
for( i = 0; i < LENGTH; i++)
cout << s2[i].a << " ";
cout << s2[i].a << " ";
cout << endl;
/*
@@ -161,7 +161,7 @@ int main(void)
*/
cout << endl << "Field b : " << endl;
for( i = 0; i < LENGTH; i++)
cout << s3[i] << " ";
cout << s3[i] << " ";
cout << endl;
/*

View File

@@ -25,11 +25,11 @@
#include "H5Cpp.h"
using namespace H5;
const H5std_string FILE_NAME( "SDS.h5" );
const H5std_string DATASET_NAME( "IntArray" );
const int NX = 5; // dataset dimensions
const int NY = 6;
const int RANK = 2;
const H5std_string FILE_NAME( "SDS.h5" );
const H5std_string DATASET_NAME( "IntArray" );
const int NX = 5; // dataset dimensions
const int NY = 6;
const int RANK = 2;
int main (void)
{
@@ -41,7 +41,7 @@ int main (void)
for (j = 0; j < NX; j++)
{
for (i = 0; i < NY; i++)
data[j][i] = i + j;
data[j][i] = i + j;
}
/*
* 0 1 2 3 4 5

View File

@@ -105,8 +105,8 @@ int main (void)
* Write the data to the hyperslab.
*/
int data1[3][3] = { {1, 1, 1}, /* data to write */
{1, 1, 1},
{1, 1, 1} };
{1, 1, 1},
{1, 1, 1} };
dataset.write( data1, PredType::NATIVE_INT, mspace1, fspace1 );
/*
@@ -179,16 +179,16 @@ int main (void)
/*
* Resulting dataset
*
* 1 1 1 3 3
* 1 1 1 3 3
* 1 1 1 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 1 1 1 3 3
* 1 1 1 3 3
* 1 1 1 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
*/
/*
* Display the result.

View File

@@ -33,10 +33,10 @@ using std::endl;
using namespace H5;
const H5std_string FILE_NAME( "Group.h5" );
const int RANK = 2;
const int RANK = 2;
// Operator function
extern "C" herr_t file_info(hid_t loc_id, const char *name, const H5L_info_t *linfo,
extern "C" herr_t file_info(hid_t loc_id, const char *name, const H5L_info2_t *linfo,
void *opdata);
int main(void)
@@ -48,169 +48,169 @@ int main(void)
// Try block to detect exceptions raised by any of the calls inside it
try
{
/*
* Turn off the auto-printing when failure occurs so that we can
* handle the errors appropriately
*/
Exception::dontPrint();
/*
* Turn off the auto-printing when failure occurs so that we can
* handle the errors appropriately
*/
Exception::dontPrint();
/*
* Create the named file, truncating the existing one if any,
* using default create and access property lists.
*/
H5File *file = new H5File( FILE_NAME, H5F_ACC_TRUNC );
/*
* Create the named file, truncating the existing one if any,
* using default create and access property lists.
*/
H5File *file = new H5File( FILE_NAME, H5F_ACC_TRUNC );
/*
* Create a group in the file
*/
Group* group = new Group( file->createGroup( "/Data" ));
/*
* Create a group in the file
*/
Group* group = new Group( file->createGroup( "/Data" ));
/*
* Create dataset "Compressed Data" in the group using absolute
* name. Dataset creation property list is modified to use
* GZIP compression with the compression effort set to 6.
* Note that compression can be used only when dataset is chunked.
*/
dims[0] = 1000;
dims[1] = 20;
cdims[0] = 20;
cdims[1] = 20;
DataSpace *dataspace = new DataSpace(RANK, dims); // create new dspace
DSetCreatPropList ds_creatplist; // create dataset creation prop list
ds_creatplist.setChunk( 2, cdims ); // then modify it for compression
ds_creatplist.setDeflate( 6 );
/*
* Create dataset "Compressed Data" in the group using absolute
* name. Dataset creation property list is modified to use
* GZIP compression with the compression effort set to 6.
* Note that compression can be used only when dataset is chunked.
*/
dims[0] = 1000;
dims[1] = 20;
cdims[0] = 20;
cdims[1] = 20;
DataSpace *dataspace = new DataSpace(RANK, dims); // create new dspace
DSetCreatPropList ds_creatplist; // create dataset creation prop list
ds_creatplist.setChunk( 2, cdims ); // then modify it for compression
ds_creatplist.setDeflate( 6 );
/*
* Create the first dataset.
*/
DataSet* dataset = new DataSet(file->createDataSet(
"/Data/Compressed_Data", PredType::NATIVE_INT,
*dataspace, ds_creatplist ));
/*
* Create the first dataset.
*/
DataSet* dataset = new DataSet(file->createDataSet(
"/Data/Compressed_Data", PredType::NATIVE_INT,
*dataspace, ds_creatplist ));
/*
* Close the first dataset.
*/
delete dataset;
delete dataspace;
/*
* Close the first dataset.
*/
delete dataset;
delete dataspace;
/*
* Create the second dataset.
*/
dims[0] = 500;
dims[1] = 20;
dataspace = new DataSpace(RANK, dims); // create second dspace
dataset = new DataSet(file->createDataSet("/Data/Float_Data",
PredType::NATIVE_FLOAT, *dataspace));
/*
* Create the second dataset.
*/
dims[0] = 500;
dims[1] = 20;
dataspace = new DataSpace(RANK, dims); // create second dspace
dataset = new DataSet(file->createDataSet("/Data/Float_Data",
PredType::NATIVE_FLOAT, *dataspace));
delete dataset;
delete dataspace;
delete group;
delete file;
delete dataset;
delete dataspace;
delete group;
delete file;
/*
* Now reopen the file and group in the file.
*/
file = new H5File(FILE_NAME, H5F_ACC_RDWR);
group = new Group(file->openGroup("Data"));
/*
* Now reopen the file and group in the file.
*/
file = new H5File(FILE_NAME, H5F_ACC_RDWR);
group = new Group(file->openGroup("Data"));
/*
* Access "Compressed_Data" dataset in the group.
*/
try { // to determine if the dataset exists in the group
dataset = new DataSet( group->openDataSet( "Compressed_Data" ));
}
catch( GroupIException not_found_error ) {
cout << " Dataset is not found." << endl;
}
cout << "dataset \"/Data/Compressed_Data\" is open" << endl;
/*
* Access "Compressed_Data" dataset in the group.
*/
try { // to determine if the dataset exists in the group
dataset = new DataSet( group->openDataSet( "Compressed_Data" ));
}
catch( GroupIException not_found_error ) {
cout << " Dataset is not found." << endl;
}
cout << "dataset \"/Data/Compressed_Data\" is open" << endl;
/*
* Close the dataset.
*/
delete dataset;
/*
* Close the dataset.
*/
delete dataset;
/*
* Create hard link to the Data group.
*/
file->link( H5L_TYPE_HARD, "Data", "Data_new" );
/*
* Create hard link to the Data group.
*/
file->link( H5L_TYPE_HARD, "Data", "Data_new" );
/*
* We can access "Compressed_Data" dataset using created
* hard link "Data_new".
*/
try { // to determine if the dataset exists in the file
dataset = new DataSet(file->openDataSet( "/Data_new/Compressed_Data" ));
}
catch( FileIException not_found_error )
{
cout << " Dataset is not found." << endl;
}
cout << "dataset \"/Data_new/Compressed_Data\" is open" << endl;
/*
* We can access "Compressed_Data" dataset using created
* hard link "Data_new".
*/
try { // to determine if the dataset exists in the file
dataset = new DataSet(file->openDataSet( "/Data_new/Compressed_Data" ));
}
catch( FileIException not_found_error )
{
cout << " Dataset is not found." << endl;
}
cout << "dataset \"/Data_new/Compressed_Data\" is open" << endl;
/*
* Close the dataset.
*/
delete dataset;
/*
* Close the dataset.
*/
delete dataset;
/*
* Use iterator to see the names of the objects in the file
* root directory.
*/
cout << endl << "Iterating over elements in the file" << endl;
herr_t idx = H5Literate(file->getId(), H5_INDEX_NAME, H5_ITER_INC, NULL, file_info, NULL);
cout << endl;
/*
* Use iterator to see the names of the objects in the file
* root directory.
*/
cout << endl << "Iterating over elements in the file" << endl;
herr_t idx = H5Literate2(file->getId(), H5_INDEX_NAME, H5_ITER_INC, NULL, file_info, NULL);
cout << endl;
/*
* Unlink name "Data" and use iterator to see the names
* of the objects in the file root direvtory.
*/
cout << "Unlinking..." << endl;
try { // attempt to unlink the dataset
file->unlink( "Data" );
}
catch( FileIException unlink_error )
{
cout << " unlink failed." << endl;
}
cout << "\"Data\" is unlinked" << endl;
/*
* Unlink name "Data" and use iterator to see the names
* of the objects in the file root direvtory.
*/
cout << "Unlinking..." << endl;
try { // attempt to unlink the dataset
file->unlink( "Data" );
}
catch( FileIException unlink_error )
{
cout << " unlink failed." << endl;
}
cout << "\"Data\" is unlinked" << endl;
cout << endl << "Iterating over elements in the file again" << endl;
idx = H5Literate(file->getId(), H5_INDEX_NAME, H5_ITER_INC, NULL, file_info, NULL);
cout << endl;
cout << endl << "Iterating over elements in the file again" << endl;
idx = H5Literate2(file->getId(), H5_INDEX_NAME, H5_ITER_INC, NULL, file_info, NULL);
cout << endl;
/*
* Close the group and file.
*/
delete group;
delete file;
/*
* Close the group and file.
*/
delete group;
delete file;
} // end of try block
// catch failure caused by the H5File operations
catch( FileIException error )
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch( DataSetIException error )
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch( DataSpaceIException error )
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the Attribute operations
catch( AttributeIException error )
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
return 0;
}
@@ -219,7 +219,7 @@ int main(void)
* Operator function.
*/
herr_t
file_info(hid_t loc_id, const char *name, const H5L_info_t *linfo, void *opdata)
file_info(hid_t loc_id, const char *name, const H5L_info2_t *linfo, void *opdata)
{
hid_t group;

View File

@@ -1,8 +1,8 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
@@ -24,130 +24,130 @@ using std::endl;
#include "H5Cpp.h"
using namespace H5;
const H5std_string FILE_NAME("h5tutr_cmprss.h5");
const H5std_string DATASET_NAME("Compressed_Data");
const int DIM0 = 100;
const int DIM1 = 20;
const H5std_string FILE_NAME("h5tutr_cmprss.h5");
const H5std_string DATASET_NAME("Compressed_Data");
const int DIM0 = 100;
const int DIM1 = 20;
int main (void)
{
hsize_t dims[2] = { DIM0, DIM1 }; // dataset dimensions
hsize_t chunk_dims[2] = { 20, 20 }; // chunk dimensions
hsize_t dims[2] = { DIM0, DIM1 }; // dataset dimensions
hsize_t chunk_dims[2] = { 20, 20 }; // chunk dimensions
int i,j, buf[DIM0][DIM1];
// Try block to detect exceptions raised by any of the calls inside it
try
{
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately
Exception::dontPrint();
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately
Exception::dontPrint();
// Create a new file using the default property lists.
H5File file(FILE_NAME, H5F_ACC_TRUNC);
// Create a new file using the default property lists.
H5File file(FILE_NAME, H5F_ACC_TRUNC);
// Create the data space for the dataset.
DataSpace *dataspace = new DataSpace(2, dims);
// Create the data space for the dataset.
DataSpace *dataspace = new DataSpace(2, dims);
// Modify dataset creation property to enable chunking
DSetCreatPropList *plist = new DSetCreatPropList;
plist->setChunk(2, chunk_dims);
// Modify dataset creation property to enable chunking
DSetCreatPropList *plist = new DSetCreatPropList;
plist->setChunk(2, chunk_dims);
// Set ZLIB (DEFLATE) Compression using level 6.
// To use SZIP compression comment out this line.
plist->setDeflate(6);
// Set ZLIB (DEFLATE) Compression using level 6.
// To use SZIP compression comment out this line.
plist->setDeflate(6);
// Uncomment these lines to set SZIP Compression
// unsigned szip_options_mask = H5_SZIP_NN_OPTION_MASK;
// unsigned szip_pixels_per_block = 16;
// plist->setSzip(szip_options_mask, szip_pixels_per_block);
// Create the dataset.
DataSet *dataset = new DataSet(file.createDataSet( DATASET_NAME,
PredType::STD_I32BE, *dataspace, *plist) );
// Uncomment these lines to set SZIP Compression
// unsigned szip_options_mask = H5_SZIP_NN_OPTION_MASK;
// unsigned szip_pixels_per_block = 16;
// plist->setSzip(szip_options_mask, szip_pixels_per_block);
for (i = 0; i< DIM0; i++)
for (j=0; j<DIM1; j++)
buf[i][j] = i+j;
// Create the dataset.
DataSet *dataset = new DataSet(file.createDataSet( DATASET_NAME,
PredType::STD_I32BE, *dataspace, *plist) );
// Write data to dataset.
dataset->write(buf, PredType::NATIVE_INT);
for (i = 0; i< DIM0; i++)
for (j=0; j<DIM1; j++)
buf[i][j] = i+j;
// Close objects and file. Either approach will close the HDF5 item.
delete dataspace;
delete dataset;
delete plist;
file.close();
// Write data to dataset.
dataset->write(buf, PredType::NATIVE_INT);
// -----------------------------------------------
// Re-open the file and dataset, retrieve filter
// information for dataset and read the data back.
// -----------------------------------------------
int rbuf[DIM0][DIM1];
int numfilt;
size_t nelmts={1}, namelen={1};
unsigned flags, filter_info, cd_values[1], idx;
char name[1];
H5Z_filter_t filter_type;
// Close objects and file. Either approach will close the HDF5 item.
delete dataspace;
delete dataset;
delete plist;
file.close();
// Open the file and the dataset in the file.
file.openFile(FILE_NAME, H5F_ACC_RDONLY);
dataset = new DataSet(file.openDataSet( DATASET_NAME));
// -----------------------------------------------
// Re-open the file and dataset, retrieve filter
// information for dataset and read the data back.
// -----------------------------------------------
// Get the create property list of the dataset.
plist = new DSetCreatPropList(dataset->getCreatePlist ());
int rbuf[DIM0][DIM1];
int numfilt;
size_t nelmts={1}, namelen={1};
unsigned flags, filter_info, cd_values[1], idx;
char name[1];
H5Z_filter_t filter_type;
// Get the number of filters associated with the dataset.
numfilt = plist->getNfilters();
cout << "Number of filters associated with dataset: " << numfilt << endl;
// Open the file and the dataset in the file.
file.openFile(FILE_NAME, H5F_ACC_RDONLY);
dataset = new DataSet(file.openDataSet( DATASET_NAME));
for (idx=0; idx < numfilt; idx++) {
nelmts = 0;
// Get the create property list of the dataset.
plist = new DSetCreatPropList(dataset->getCreatePlist ());
filter_type = plist->getFilter(idx, flags, nelmts, cd_values, namelen, name , filter_info);
// Get the number of filters associated with the dataset.
numfilt = plist->getNfilters();
cout << "Number of filters associated with dataset: " << numfilt << endl;
cout << "Filter Type: ";
for (idx=0; idx < numfilt; idx++) {
nelmts = 0;
switch (filter_type) {
case H5Z_FILTER_DEFLATE:
cout << "H5Z_FILTER_DEFLATE" << endl;
break;
case H5Z_FILTER_SZIP:
cout << "H5Z_FILTER_SZIP" << endl;
break;
default:
cout << "Other filter type included." << endl;
}
}
filter_type = plist->getFilter(idx, flags, nelmts, cd_values, namelen, name , filter_info);
// Read data.
dataset->read(rbuf, PredType::NATIVE_INT);
cout << "Filter Type: ";
delete plist;
delete dataset;
file.close(); // can be skipped
switch (filter_type) {
case H5Z_FILTER_DEFLATE:
cout << "H5Z_FILTER_DEFLATE" << endl;
break;
case H5Z_FILTER_SZIP:
cout << "H5Z_FILTER_SZIP" << endl;
break;
default:
cout << "Other filter type included." << endl;
}
}
// Read data.
dataset->read(rbuf, PredType::NATIVE_INT);
delete plist;
delete dataset;
file.close(); // can be skipped
} // end of try block
// catch failure caused by the H5File operations
catch(FileIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch(DataSetIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch(DataSpaceIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
return 0; // successfully terminated

View File

@@ -1,8 +1,8 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
@@ -21,67 +21,67 @@
#include "H5Cpp.h"
using namespace H5;
const H5std_string FILE_NAME( "h5tutr_dset.h5" );
const H5std_string DATASET_NAME( "dset" );
const H5std_string ATTR_NAME( "Units" );
const H5std_string FILE_NAME( "h5tutr_dset.h5" );
const H5std_string DATASET_NAME( "dset" );
const H5std_string ATTR_NAME( "Units" );
const int DIM1 = 2;
const int DIM1 = 2;
int main (void)
{
int attr_data[2] = { 100, 200};
hsize_t dims[1] = { DIM1 };
// Try block to detect exceptions raised by any of the calls inside it
try
{
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately
Exception::dontPrint();
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately
Exception::dontPrint();
// Open an existing file and dataset.
H5File file( FILE_NAME, H5F_ACC_RDWR );
DataSet dataset = file.openDataSet( DATASET_NAME );
// Open an existing file and dataset.
H5File file( FILE_NAME, H5F_ACC_RDWR );
DataSet dataset = file.openDataSet( DATASET_NAME );
// Create the data space for the attribute.
DataSpace attr_dataspace = DataSpace (1, dims );
// Create the data space for the attribute.
DataSpace attr_dataspace = DataSpace (1, dims );
// Create a dataset attribute.
Attribute attribute = dataset.createAttribute( ATTR_NAME, PredType::STD_I32BE,
attr_dataspace);
// Write the attribute data.
attribute.write( PredType::NATIVE_INT, attr_data);
// Create a dataset attribute.
Attribute attribute = dataset.createAttribute( ATTR_NAME, PredType::STD_I32BE,
attr_dataspace);
// Write the attribute data.
attribute.write( PredType::NATIVE_INT, attr_data);
} // end of try block
// catch failure caused by the H5File operations
catch( DataSpaceIException error )
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the H5File operations
catch( AttributeIException error )
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the H5File operations
catch( FileIException error )
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch( DataSetIException error )
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
return 0; // successfully terminated

View File

@@ -1,8 +1,8 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
@@ -18,57 +18,58 @@
#include <iostream>
#include <string>
#include "H5Cpp.h"
using namespace H5;
const H5std_string FILE_NAME("h5tutr_dset.h5");
const H5std_string DATASET_NAME("dset");
const int NX = 4; // dataset dimensions
const int NY = 6;
const int RANK = 2;
const H5std_string FILE_NAME("h5tutr_dset.h5");
const H5std_string DATASET_NAME("dset");
const int NX = 4; // dataset dimensions
const int NY = 6;
const int RANK = 2;
int main (void)
{
// Try block to detect exceptions raised by any of the calls inside it
try
{
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately
Exception::dontPrint();
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately
Exception::dontPrint();
// Create a new file using the default property lists.
H5File file(FILE_NAME, H5F_ACC_TRUNC);
// Create a new file using the default property lists.
H5File file(FILE_NAME, H5F_ACC_TRUNC);
// Create the data space for the dataset.
hsize_t dims[2]; // dataset dimensions
dims[0] = NX;
dims[1] = NY;
DataSpace dataspace(RANK, dims);
// Create the data space for the dataset.
hsize_t dims[2]; // dataset dimensions
dims[0] = NX;
dims[1] = NY;
DataSpace dataspace(RANK, dims);
// Create the dataset.
DataSet dataset = file.createDataSet(DATASET_NAME, PredType::STD_I32BE, dataspace);
// Create the dataset.
DataSet dataset = file.createDataSet(DATASET_NAME, PredType::STD_I32BE, dataspace);
} // end of try block
// catch failure caused by the H5File operations
catch(FileIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch(DataSetIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch(DataSpaceIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
return 0; // successfully terminated

View File

@@ -1,8 +1,8 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
@@ -31,32 +31,32 @@ int main(void)
// Try block to detect exceptions raised by any of the calls inside it
try
{
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately
Exception::dontPrint();
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately
Exception::dontPrint();
// Create a new file using default property lists.
H5File file(FILE_NAME, H5F_ACC_TRUNC);
// Create a group named "/MygGroup" in the file
Group group(file.createGroup("/MyGroup"));
// Create a new file using default property lists.
H5File file(FILE_NAME, H5F_ACC_TRUNC);
// Create a group named "/MygGroup" in the file
Group group(file.createGroup("/MyGroup"));
// File and group will be closed as their instances go out of scope.
// File and group will be closed as their instances go out of scope.
} // end of try block
// catch failure caused by the H5File operations
catch(FileIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the Group operations
catch(GroupIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
return 0;
}

View File

@@ -1,8 +1,8 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
@@ -32,51 +32,51 @@ int main(void)
// Try block to detect exceptions raised by any of the calls inside it
try
{
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately.
Exception::dontPrint();
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately.
// Create a new file using default properties.
Exception::dontPrint();
H5File file(FILE_NAME, H5F_ACC_TRUNC);
// Create a new file using default properties.
// Create group "MyGroup" in the root group using an absolute name.
Group group1(file.createGroup( "/MyGroup"));
// Create group "Group_A" in group "MyGroup" using an
// absolute name.
H5File file(FILE_NAME, H5F_ACC_TRUNC);
Group group2(file.createGroup("/MyGroup/Group_A"));
// Create group "MyGroup" in the root group using an absolute name.
// Create group "Group_B" in group "MyGroup" using a
// relative name.
Group group3(group1.createGroup ("Group_B"));
// Close the groups and file.
Group group1(file.createGroup( "/MyGroup"));
// Create group "Group_A" in group "MyGroup" using an
// absolute name.
Group group2(file.createGroup("/MyGroup/Group_A"));
// Create group "Group_B" in group "MyGroup" using a
// relative name.
Group group3(group1.createGroup ("Group_B"));
// Close the groups and file.
group1.close();
group2.close();
group3.close();
file.close();
group1.close();
group2.close();
group3.close();
file.close();
} // end of try block
// catch failure caused by the File operations
catch(FileIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the Group operations
catch(GroupIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
return 0;

View File

@@ -1,8 +1,8 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
@@ -27,11 +27,11 @@ using namespace H5;
const H5std_string FILE_NAME("h5tutr_groups.h5");
const H5std_string DATASET_NAME1("/MyGroup/dset1");
const H5std_string DATASET_NAME2("dset2");
const int RANK = 2;
const int D1DIM1 = 3;
const int D1DIM2 = 3;
const int D2DIM1 = 2;
const int D2DIM2 = 10;
const int RANK = 2;
const int D1DIM1 = 3;
const int D1DIM2 = 3;
const int D2DIM1 = 2;
const int D2DIM2 = 10;
int main(void)
{
@@ -41,94 +41,94 @@ int main(void)
// Try block to catch exceptions raised by any of the calls inside it
try
{
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately
Exception::dontPrint();
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately
Exception::dontPrint();
// Initialize the first dataset.
for (i = 0; i < D1DIM1; i++)
for (j = 0; j < D1DIM2; j++)
dset1_data[i][j] = j + 1;
// Initialize the first dataset.
for (i = 0; i < D1DIM1; i++)
for (j = 0; j < D1DIM2; j++)
dset1_data[i][j] = j + 1;
// Initialize the second dataset.
for (i = 0; i < D2DIM1; i++)
for (j = 0; j < D2DIM2; j++)
dset2_data[i][j] = j + 1;
// Initialize the second dataset.
for (i = 0; i < D2DIM1; i++)
for (j = 0; j < D2DIM2; j++)
dset2_data[i][j] = j + 1;
// Open an existing file and dataset.
H5File file(FILE_NAME, H5F_ACC_RDWR);
// Open an existing file and dataset.
H5File file(FILE_NAME, H5F_ACC_RDWR);
// Create the data space for the first dataset. Note the use of
// pointer for the instance 'dataspace'. It can be deleted and
// used again later for another data space. An HDF5 identifier is
// closed by the destructor or the method 'close()'.
hsize_t dims[RANK]; // dataset dimensions
dims[0] = D1DIM1;
dims[1] = D1DIM2;
DataSpace *dataspace = new DataSpace (RANK, dims);
hsize_t dims[RANK]; // dataset dimensions
dims[0] = D1DIM1;
dims[1] = D1DIM2;
DataSpace *dataspace = new DataSpace (RANK, dims);
// Create the dataset in group "MyGroup". Same note as for the
// dataspace above.
DataSet *dataset = new DataSet (file.createDataSet(DATASET_NAME1,
PredType::STD_I32BE, *dataspace));
// Create the dataset in group "MyGroup". Same note as for the
// dataspace above.
DataSet *dataset = new DataSet (file.createDataSet(DATASET_NAME1,
PredType::STD_I32BE, *dataspace));
// Write the data to the dataset using default memory space, file
// space, and transfer properties.
dataset->write(dset1_data, PredType::NATIVE_INT);
// Write the data to the dataset using default memory space, file
// space, and transfer properties.
dataset->write(dset1_data, PredType::NATIVE_INT);
// Close the current dataset and data space.
delete dataset;
delete dataspace;
// Close the current dataset and data space.
delete dataset;
delete dataspace;
// Create the data space for the second dataset.
dims[0] = D2DIM1;
dims[1] = D2DIM2;
dataspace = new DataSpace (RANK, dims);
// Create the data space for the second dataset.
dims[0] = D2DIM1;
dims[1] = D2DIM2;
dataspace = new DataSpace (RANK, dims);
// Create group "Group_A" in group "MyGroup".
Group group(file.openGroup("/MyGroup/Group_A"));
// Create group "Group_A" in group "MyGroup".
Group group(file.openGroup("/MyGroup/Group_A"));
// Create the second dataset in group "Group_A".
dataset = new DataSet (group.createDataSet(DATASET_NAME2,
PredType::STD_I32BE, *dataspace));
// Create the second dataset in group "Group_A".
dataset = new DataSet (group.createDataSet(DATASET_NAME2,
PredType::STD_I32BE, *dataspace));
// Write the data to the dataset using default memory space, file
// space, and transfer properties.
dataset->write(dset2_data, PredType::NATIVE_INT);
// Write the data to the dataset using default memory space, file
// space, and transfer properties.
dataset->write(dset2_data, PredType::NATIVE_INT);
// Close all objects.
delete dataspace;
delete dataset;
group.close();
// Close all objects.
delete dataspace;
delete dataset;
group.close();
} // end of try block
// catch failure caused by the H5File operations
catch(FileIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch(DataSetIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch(DataSpaceIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the Group operations
catch(GroupIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
return 0;
}

View File

@@ -1,8 +1,8 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
@@ -24,145 +24,145 @@ using std::endl;
#include "H5Cpp.h"
using namespace H5;
const H5std_string FILE_NAME("h5tutr_extend.h5");
const H5std_string DATASETNAME("ExtendibleArray");
const H5std_string FILE_NAME("h5tutr_extend.h5");
const H5std_string DATASETNAME("ExtendibleArray");
int main (void)
{
hsize_t dims[2] = {3,3}; // dataset dimensions at creation
hsize_t maxdims[2] = {H5S_UNLIMITED, H5S_UNLIMITED};
hsize_t dims[2] = {3,3}; // dataset dimensions at creation
hsize_t maxdims[2] = {H5S_UNLIMITED, H5S_UNLIMITED};
hsize_t chunk_dims[2] ={2, 5};
int data[3][3] = { {1, 1, 1}, // data to write
{1, 1, 1},
{1, 1, 1} };
int data[3][3] = { {1, 1, 1}, // data to write
{1, 1, 1},
{1, 1, 1} };
// Variables used in extending and writing to the extended portion of dataset
// Variables used in extending and writing to the extended portion of dataset
hsize_t size[2];
hsize_t offset[2];
hsize_t dimsext[2] = {7, 3}; // extend dimensions
hsize_t dimsext[2] = {7, 3}; // extend dimensions
int dataext[7][3] = { {2, 3, 4},
{2, 3, 4},
{2, 3, 4},
{2, 3, 4},
{2, 3, 4},
{2, 3, 4},
{2, 3, 4} };
{2, 3, 4},
{2, 3, 4},
{2, 3, 4},
{2, 3, 4},
{2, 3, 4},
{2, 3, 4} };
// Try block to detect exceptions raised by any of the calls inside it
try
{
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately
Exception::dontPrint();
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately
Exception::dontPrint();
// Create a new file using the default property lists.
H5File file(FILE_NAME, H5F_ACC_TRUNC);
// Create a new file using the default property lists.
H5File file(FILE_NAME, H5F_ACC_TRUNC);
// Create the data space for the dataset. Note the use of pointer
// for the instance 'dataspace'. It can be deleted and used again
// later for another dataspace. An HDF5 identifier can be closed
// by the destructor or the method 'close()'.
DataSpace *dataspace = new DataSpace (2, dims, maxdims);
// Create the data space for the dataset. Note the use of pointer
// for the instance 'dataspace'. It can be deleted and used again
// later for another dataspace. An HDF5 identifier can be closed
// by the destructor or the method 'close()'.
DataSpace *dataspace = new DataSpace (2, dims, maxdims);
// Modify dataset creation property to enable chunking
DSetCreatPropList prop;
prop.setChunk(2, chunk_dims);
// Modify dataset creation property to enable chunking
DSetCreatPropList prop;
prop.setChunk(2, chunk_dims);
// Create the chunked dataset. Note the use of pointer.
DataSet *dataset = new DataSet(file.createDataSet( DATASETNAME,
PredType::STD_I32BE, *dataspace, prop) );
// Write data to dataset.
dataset->write(data, PredType::NATIVE_INT);
// Create the chunked dataset. Note the use of pointer.
DataSet *dataset = new DataSet(file.createDataSet( DATASETNAME,
PredType::STD_I32BE, *dataspace, prop) );
// Extend the dataset. Dataset becomes 10 x 3.
size[0] = dims[0] + dimsext[0];
size[1] = dims[1];
dataset->extend(size);
// Write data to dataset.
dataset->write(data, PredType::NATIVE_INT);
// Select a hyperslab in extended portion of the dataset.
DataSpace *filespace = new DataSpace(dataset->getSpace ());
offset[0] = 3;
offset[1] = 0;
filespace->selectHyperslab(H5S_SELECT_SET, dimsext, offset);
// Define memory space.
DataSpace *memspace = new DataSpace(2, dimsext, NULL);
// Extend the dataset. Dataset becomes 10 x 3.
size[0] = dims[0] + dimsext[0];
size[1] = dims[1];
dataset->extend(size);
// Write data to the extended portion of the dataset.
dataset->write(dataext, PredType::NATIVE_INT, *memspace, *filespace);
// Select a hyperslab in extended portion of the dataset.
DataSpace *filespace = new DataSpace(dataset->getSpace ());
offset[0] = 3;
offset[1] = 0;
filespace->selectHyperslab(H5S_SELECT_SET, dimsext, offset);
// Close all objects and file.
prop.close();
delete filespace;
delete memspace;
delete dataspace;
delete dataset;
file.close();
// Define memory space.
DataSpace *memspace = new DataSpace(2, dimsext, NULL);
// ---------------------------------------
// Re-open the file and read the data back
// ---------------------------------------
// Write data to the extended portion of the dataset.
dataset->write(dataext, PredType::NATIVE_INT, *memspace, *filespace);
int rdata[10][3];
int i,j, rank, rank_chunk;
hsize_t chunk_dimsr[2], dimsr[2];
// Close all objects and file.
prop.close();
delete filespace;
delete memspace;
delete dataspace;
delete dataset;
file.close();
// Open the file and dataset.
file.openFile(FILE_NAME, H5F_ACC_RDONLY);
dataset = new DataSet(file.openDataSet( DATASETNAME));
// ---------------------------------------
// Re-open the file and read the data back
// ---------------------------------------
// Get the dataset's dataspace and creation property list.
filespace = new DataSpace(dataset->getSpace());
prop = dataset->getCreatePlist();
int rdata[10][3];
int i,j, rank, rank_chunk;
hsize_t chunk_dimsr[2], dimsr[2];
// Get information to obtain memory dataspace.
rank = filespace->getSimpleExtentNdims();
herr_t status_n = filespace->getSimpleExtentDims(dimsr);
// Open the file and dataset.
file.openFile(FILE_NAME, H5F_ACC_RDONLY);
dataset = new DataSet(file.openDataSet( DATASETNAME));
if (H5D_CHUNKED == prop.getLayout())
rank_chunk = prop.getChunk(rank, chunk_dimsr);
cout << "rank chunk = " << rank_chunk << endl;;
// Get the dataset's dataspace and creation property list.
filespace = new DataSpace(dataset->getSpace());
prop = dataset->getCreatePlist();
memspace = new DataSpace(rank, dimsr, NULL);
dataset->read(rdata, PredType::NATIVE_INT, *memspace, *filespace);
cout << endl;
for (j = 0; j < dimsr[0]; j++) {
for (i = 0; i < dimsr[1]; i++)
cout << " " << rdata[j][i];
cout << endl;
}
// Get information to obtain memory dataspace.
rank = filespace->getSimpleExtentNdims();
herr_t status_n = filespace->getSimpleExtentDims(dimsr);
if (H5D_CHUNKED == prop.getLayout())
rank_chunk = prop.getChunk(rank, chunk_dimsr);
cout << "rank chunk = " << rank_chunk << endl;;
memspace = new DataSpace(rank, dimsr, NULL);
dataset->read(rdata, PredType::NATIVE_INT, *memspace, *filespace);
cout << endl;
for (j = 0; j < dimsr[0]; j++) {
for (i = 0; i < dimsr[1]; i++)
cout << " " << rdata[j][i];
cout << endl;
}
// Close all objects and file.
prop.close();
delete filespace;
delete memspace;
delete dataset;
file.close();
// Close all objects and file.
prop.close();
delete filespace;
delete memspace;
delete dataset;
file.close();
} // end of try block
// catch failure caused by the H5File operations
catch(FileIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch(DataSetIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch(DataSpaceIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
return 0; // successfully terminated

View File

@@ -1,8 +1,8 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
@@ -21,52 +21,52 @@
#include "H5Cpp.h"
using namespace H5;
const H5std_string FILE_NAME("h5tutr_dset.h5");
const H5std_string DATASET_NAME("dset");
const int DIM0 = 4; // dataset dimensions
const int DIM1 = 6;
const H5std_string FILE_NAME("h5tutr_dset.h5");
const H5std_string DATASET_NAME("dset");
const int DIM0 = 4; // dataset dimensions
const int DIM1 = 6;
int main (void)
{
// Data initialization.
int i, j;
int data[DIM0][DIM1]; // buffer for data to write
int data[DIM0][DIM1]; // buffer for data to write
for (j = 0; j < DIM0; j++)
for (i = 0; i < DIM1; i++)
data[j][i] = i * 6 + j + 1;
for (i = 0; i < DIM1; i++)
data[j][i] = i * 6 + j + 1;
// Try block to detect exceptions raised by any of the calls inside it
try
{
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately
Exception::dontPrint();
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately
Exception::dontPrint();
// Open an existing file and dataset.
H5File file(FILE_NAME, H5F_ACC_RDWR);
DataSet dataset = file.openDataSet(DATASET_NAME);
// Open an existing file and dataset.
H5File file(FILE_NAME, H5F_ACC_RDWR);
DataSet dataset = file.openDataSet(DATASET_NAME);
// Write the data to the dataset using default memory space, file
// space, and transfer properties.
dataset.write(data, PredType::NATIVE_INT);
// Write the data to the dataset using default memory space, file
// space, and transfer properties.
dataset.write(data, PredType::NATIVE_INT);
} // end of try block
// catch failure caused by the H5File operations
catch(FileIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch(DataSetIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
return 0; // successfully terminated

View File

@@ -1,8 +1,8 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
@@ -24,13 +24,13 @@ using std::endl;
#include "H5Cpp.h"
using namespace H5;
const H5std_string FILE_NAME("h5tutr_subset.h5");
const H5std_string DATASET_NAME("IntArray");
const H5std_string FILE_NAME("h5tutr_subset.h5");
const H5std_string DATASET_NAME("IntArray");
const int RANK = 2;
const int DIM0_SUB = 3; // subset dimensions
const int DIM0_SUB = 3; // subset dimensions
const int DIM1_SUB = 4;
const int DIM0 = 8; // size of dataset
const int DIM0 = 8; // size of dataset
const int DIM1 = 10;
int main (void)
@@ -41,134 +41,134 @@ int main (void)
// Try block to detect exceptions raised by any of the calls inside it
try
{
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately
Exception::dontPrint();
// Turn off the auto-printing when failure occurs so that we can
// handle the errors appropriately
Exception::dontPrint();
// ---------------------------------------------------
// Create a new file using the default property lists.
// Then create a dataset and write data to it.
// Close the file and dataset.
// ---------------------------------------------------
H5File file(FILE_NAME, H5F_ACC_TRUNC);
// ---------------------------------------------------
// Create a new file using the default property lists.
// Then create a dataset and write data to it.
// Close the file and dataset.
// ---------------------------------------------------
hsize_t dims[2];
dims[0] = DIM0;
dims[1] = DIM1;
DataSpace dataspace = DataSpace (RANK, dims);
H5File file(FILE_NAME, H5F_ACC_TRUNC);
DataSet dataset(file.createDataSet( DATASET_NAME,
PredType::STD_I32BE, dataspace) );
hsize_t dims[2];
dims[0] = DIM0;
dims[1] = DIM1;
DataSpace dataspace = DataSpace (RANK, dims);
DataSet dataset(file.createDataSet( DATASET_NAME,
PredType::STD_I32BE, dataspace) );
for (j = 0; j < DIM0; j++) {
for (i = 0; i < DIM1; i++)
if (i< (DIM1/2))
data[j][i] = 1;
else
data[j][i] = 2;
}
for (j = 0; j < DIM0; j++) {
for (i = 0; i < DIM1; i++)
if (i< (DIM1/2))
data[j][i] = 1;
else
data[j][i] = 2;
}
dataset.write(data, PredType::NATIVE_INT);
dataset.write(data, PredType::NATIVE_INT);
cout << endl << "Data Written to File:" << endl;
for (j = 0; j < DIM0; j++) {
for (i = 0; i < DIM1; i++)
cout << " " << data[j][i];
cout << endl;
}
cout << endl << "Data Written to File:" << endl;
for (j = 0; j < DIM0; j++) {
for (i = 0; i < DIM1; i++)
cout << " " << data[j][i];
cout << endl;
}
dataspace.close();
dataset.close();
file.close();
dataspace.close();
dataset.close();
file.close();
// ---------------------------------------------------
// Reopen the file and dataset and write a subset of
// values to the dataset.
// ---------------------------------------------------
// ---------------------------------------------------
// Reopen the file and dataset and write a subset of
// values to the dataset.
// ---------------------------------------------------
hsize_t offset[2], count[2], stride[2], block[2];
hsize_t dimsm[2];
hsize_t offset[2], count[2], stride[2], block[2];
hsize_t dimsm[2];
file.openFile(FILE_NAME, H5F_ACC_RDWR);
dataset = file.openDataSet(DATASET_NAME);
file.openFile(FILE_NAME, H5F_ACC_RDWR);
dataset = file.openDataSet(DATASET_NAME);
// Specify size and shape of subset to write.
// Specify size and shape of subset to write.
offset[0] = 1;
offset[1] = 2;
offset[0] = 1;
offset[1] = 2;
count[0] = DIM0_SUB;
count[1] = DIM1_SUB;
count[0] = DIM0_SUB;
count[1] = DIM1_SUB;
stride[0] = 1;
stride[1] = 1;
stride[0] = 1;
stride[1] = 1;
block[0] = 1;
block[1] = 1;
// Define Memory Dataspace. Get file dataspace and select
// a subset from the file dataspace.
block[0] = 1;
block[1] = 1;
dimsm[0] = DIM0_SUB;
dimsm[1] = DIM1_SUB;
// Define Memory Dataspace. Get file dataspace and select
// a subset from the file dataspace.
DataSpace memspace(RANK, dimsm, NULL);
dimsm[0] = DIM0_SUB;
dimsm[1] = DIM1_SUB;
dataspace = dataset.getSpace();
dataspace.selectHyperslab(H5S_SELECT_SET, count, offset, stride, block);
DataSpace memspace(RANK, dimsm, NULL);
// Write a subset of data to the dataset, then read the
// entire dataset back from the file.
dataspace = dataset.getSpace();
dataspace.selectHyperslab(H5S_SELECT_SET, count, offset, stride, block);
cout << endl << "Write subset to file specifying: " << endl;
cout << " offset=1x2 stride=1x1 count=3x4 block=1x1" << endl;
for (j = 0; j < DIM0_SUB; j++) {
for (i = 0; i < DIM1_SUB; i++)
sdata[j][i] = 5;
}
dataset.write(sdata, PredType::NATIVE_INT, memspace, dataspace);
dataset.read(rdata, PredType::NATIVE_INT);
// Write a subset of data to the dataset, then read the
// entire dataset back from the file.
cout << endl << "Data in File after Subset is Written:" << endl;
for (i = 0; i < DIM0; i++) {
for (j = 0; j < DIM1; j++)
cout << " " << rdata[i][j];
cout << endl;
}
cout << endl;
cout << endl << "Write subset to file specifying: " << endl;
cout << " offset=1x2 stride=1x1 count=3x4 block=1x1" << endl;
for (j = 0; j < DIM0_SUB; j++) {
for (i = 0; i < DIM1_SUB; i++)
sdata[j][i] = 5;
}
// It is not necessary to close these objects because close() will
// be called when the object instances are going out of scope.
dataspace.close();
memspace.close();
dataset.close();
file.close();
dataset.write(sdata, PredType::NATIVE_INT, memspace, dataspace);
dataset.read(rdata, PredType::NATIVE_INT);
cout << endl << "Data in File after Subset is Written:" << endl;
for (i = 0; i < DIM0; i++) {
for (j = 0; j < DIM1; j++)
cout << " " << rdata[i][j];
cout << endl;
}
cout << endl;
// It is not necessary to close these objects because close() will
// be called when the object instances are going out of scope.
dataspace.close();
memspace.close();
dataset.close();
file.close();
} // end of try block
// catch failure caused by the H5File operations
catch(FileIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch(DataSetIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch(DataSpaceIException error)
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
return 0; // successfully terminated

View File

@@ -31,9 +31,9 @@ using namespace H5;
const H5std_string FILE_NAME( "SDS.h5" );
const H5std_string DATASET_NAME( "IntArray" );
const int NX_SUB = 3; // hyperslab dimensions
const int NX_SUB = 3; // hyperslab dimensions
const int NY_SUB = 4;
const int NX = 7; // output buffer dimensions
const int NX = 7; // output buffer dimensions
const int NY = 7;
const int NZ = 3;
const int RANK_OUT = 3;
@@ -49,8 +49,8 @@ int main (void)
{
for (i = 0; i < NY; i++)
{
for (k = 0; k < NZ ; k++)
data_out[j][i][k] = 0;
for (k = 0; k < NZ ; k++)
data_out[j][i][k] = 0;
}
}
@@ -81,19 +81,19 @@ int main (void)
*/
if( type_class == H5T_INTEGER )
{
cout << "Data set has INTEGER type" << endl;
cout << "Data set has INTEGER type" << endl;
/*
* Get the integer datatype
* Get the integer datatype
*/
IntType intype = dataset.getIntType();
IntType intype = dataset.getIntType();
/*
* Get order of datatype and print message if it's a little endian.
*/
H5std_string order_string;
H5std_string order_string;
H5T_order_t order = intype.getOrder( order_string );
cout << order_string << endl;
cout << order_string << endl;
/*
* Get size of the data element stored in file and print it.
@@ -119,15 +119,15 @@ int main (void)
hsize_t dims_out[2];
int ndims = dataspace.getSimpleExtentDims( dims_out, NULL);
cout << "rank " << rank << ", dimensions " <<
(unsigned long)(dims_out[0]) << " x " <<
(unsigned long)(dims_out[1]) << endl;
(unsigned long)(dims_out[0]) << " x " <<
(unsigned long)(dims_out[1]) << endl;
/*
* Define hyperslab in the dataset; implicitly giving strike and
* block NULL.
*/
hsize_t offset[2]; // hyperslab offset in the file
hsize_t count[2]; // size of the hyperslab in the file
hsize_t offset[2]; // hyperslab offset in the file
hsize_t count[2]; // size of the hyperslab in the file
offset[0] = 1;
offset[1] = 2;
count[0] = NX_SUB;
@@ -146,8 +146,8 @@ int main (void)
/*
* Define memory hyperslab.
*/
hsize_t offset_out[3]; // hyperslab offset in memory
hsize_t count_out[3]; // size of the hyperslab in memory
hsize_t offset_out[3]; // hyperslab offset in memory
hsize_t count_out[3]; // size of the hyperslab in memory
offset_out[0] = 3;
offset_out[1] = 0;
offset_out[2] = 0;
@@ -164,9 +164,9 @@ int main (void)
for (j = 0; j < NX; j++)
{
for (i = 0; i < NY; i++)
cout << data_out[j][i][0] << " ";
cout << endl;
for (i = 0; i < NY; i++)
cout << data_out[j][i][0] << " ";
cout << endl;
}
/*
* 0 0 0 0 0 0 0

View File

@@ -18,7 +18,7 @@
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# #
# This script will compile and run the c++ examples from source files #
# installed in .../share/hdf5_examples/c++ using h5c++. The #
# installed in @examplesdir@/c++ using h5c++. The #
# order for running programs with RunTest in the MAIN section below is taken #
# from the Makefile. The order is important since some of the test programs #
# use data files created by earlier test programs. Any future additions should #
@@ -30,9 +30,32 @@
EXIT_SUCCESS=0
EXIT_FAILURE=1
#
# Try to derive the path to the installation $prefix established
# by ./configure relative to the examples directory established by
# ./configure. If successful, set `prefix_relto_examplesdir` to the
# relative path. Otherwise, set `prefix_relto_examplesdir` to the
# absolute installation $prefix.
#
# This script uses the value of `prefix` in the user's environment, if
# it is set, below. The content of $() is evaluated in a sub-shell, so
# if `prefix` is set in the user's environment, the shell statements in
# $() won't clobbered it.
#
prefix_relto_examplesdir=$(
prefix=@prefix@
examplesdir=@examplesdir@
if [ ${examplesdir##${prefix}/} != ${examplesdir} ]; then
echo $(echo ${examplesdir##${prefix}/} | \
sed 's,[^/][^/]*,..,g')
else
echo $prefix
fi
)
# Where the tool is installed.
# default is relative path to installed location of the tools
prefix="${prefix:-@prefix@}"
prefix="${prefix:-../${prefix_relto_examplesdir}}"
AR="@AR@"
RANLIB="@RANLIB@"
H5TOOL="h5c++" # The tool name
@@ -118,5 +141,5 @@ rm *.o
rm *.h5
echo
exit $EXIT_VALUE
exit $EXIT_VALUE

View File

@@ -34,19 +34,19 @@ using namespace H5;
const H5std_string FILE_NAME( "Select.h5" );
const H5std_string DATASET_NAME( "Matrix in file" );
const int MSPACE1_RANK = 1; // Rank of the first dataset in memory
const int MSPACE1_RANK = 1; // Rank of the first dataset in memory
const int MSPACE1_DIM = 50; // Dataset size in memory
const int MSPACE2_RANK = 1; // Rank of the second dataset in memory
const int MSPACE2_DIM = 4; // Dataset size in memory
const int FSPACE_RANK = 2; // Dataset rank as it is stored in the file
const int FSPACE_DIM1 = 8; // Dimension sizes of the dataset as it is
const int FSPACE_DIM2 = 12; // stored in the file
const int MSPACE_RANK = 2; // Rank of the first dataset in memory
const int MSPACE_DIM1 = 8; // We will read dataset back from the file
const int MSPACE_DIM2 = 9; // to the dataset in memory with these
// dataspace parameters
const int NPOINTS = 4; // Number of points that will be selected
// and overwritten
const int MSPACE2_RANK = 1; // Rank of the second dataset in memory
const int MSPACE2_DIM = 4; // Dataset size in memory
const int FSPACE_RANK = 2; // Dataset rank as it is stored in the file
const int FSPACE_DIM1 = 8; // Dimension sizes of the dataset as it is
const int FSPACE_DIM2 = 12; // stored in the file
const int MSPACE_RANK = 2; // Rank of the first dataset in memory
const int MSPACE_DIM1 = 8; // We will read dataset back from the file
const int MSPACE_DIM2 = 9; // to the dataset in memory with these
// dataspace parameters
const int NPOINTS = 4; // Number of points that will be selected
// and overwritten
int main (void)
{
@@ -57,271 +57,271 @@ int main (void)
*/
try
{
/*
* Turn off the auto-printing when failure occurs so that we can
* handle the errors appropriately
*/
Exception::dontPrint();
/*
* Turn off the auto-printing when failure occurs so that we can
* handle the errors appropriately
*/
Exception::dontPrint();
/*
* Create a file.
*/
H5File* file = new H5File( FILE_NAME, H5F_ACC_TRUNC );
/*
* Create a file.
*/
H5File* file = new H5File( FILE_NAME, H5F_ACC_TRUNC );
/*
* Create property list for a dataset and set up fill values.
*/
int fillvalue = 0; /* Fill value for the dataset */
DSetCreatPropList plist;
plist.setFillValue(PredType::NATIVE_INT, &fillvalue);
/*
* Create property list for a dataset and set up fill values.
*/
int fillvalue = 0; /* Fill value for the dataset */
DSetCreatPropList plist;
plist.setFillValue(PredType::NATIVE_INT, &fillvalue);
/*
* Create dataspace for the dataset in the file.
*/
hsize_t fdim[] = {FSPACE_DIM1, FSPACE_DIM2}; // dim sizes of ds (on disk)
DataSpace fspace( FSPACE_RANK, fdim );
/*
* Create dataspace for the dataset in the file.
*/
hsize_t fdim[] = {FSPACE_DIM1, FSPACE_DIM2}; // dim sizes of ds (on disk)
DataSpace fspace( FSPACE_RANK, fdim );
/*
* Create dataset and write it into the file.
*/
DataSet* dataset = new DataSet(file->createDataSet(
DATASET_NAME, PredType::NATIVE_INT, fspace, plist));
/*
* Create dataset and write it into the file.
*/
DataSet* dataset = new DataSet(file->createDataSet(
DATASET_NAME, PredType::NATIVE_INT, fspace, plist));
/*
* Select hyperslab for the dataset in the file, using 3x2 blocks,
* (4,3) stride and (2,4) count starting at the position (0,1).
*/
hsize_t start[2]; // Start of hyperslab
hsize_t stride[2]; // Stride of hyperslab
hsize_t count[2]; // Block count
hsize_t block[2]; // Block sizes
start[0] = 0; start[1] = 1;
stride[0] = 4; stride[1] = 3;
count[0] = 2; count[1] = 4;
block[0] = 3; block[1] = 2;
fspace.selectHyperslab( H5S_SELECT_SET, count, start, stride, block);
/*
* Select hyperslab for the dataset in the file, using 3x2 blocks,
* (4,3) stride and (2,4) count starting at the position (0,1).
*/
hsize_t start[2]; // Start of hyperslab
hsize_t stride[2]; // Stride of hyperslab
hsize_t count[2]; // Block count
hsize_t block[2]; // Block sizes
start[0] = 0; start[1] = 1;
stride[0] = 4; stride[1] = 3;
count[0] = 2; count[1] = 4;
block[0] = 3; block[1] = 2;
fspace.selectHyperslab( H5S_SELECT_SET, count, start, stride, block);
/*
* Create dataspace for the first dataset.
*/
hsize_t dim1[] = {MSPACE1_DIM}; /* Dimension size of the first dataset
(in memory) */
DataSpace mspace1( MSPACE1_RANK, dim1 );
/*
* Create dataspace for the first dataset.
*/
hsize_t dim1[] = {MSPACE1_DIM}; /* Dimension size of the first dataset
(in memory) */
DataSpace mspace1( MSPACE1_RANK, dim1 );
/*
* Select hyperslab.
* We will use 48 elements of the vector buffer starting at the
* second element. Selected elements are 1 2 3 . . . 48
*/
start[0] = 1;
stride[0] = 1;
count[0] = 48;
block[0] = 1;
mspace1.selectHyperslab( H5S_SELECT_SET, count, start, stride, block);
/*
* Select hyperslab.
* We will use 48 elements of the vector buffer starting at the
* second element. Selected elements are 1 2 3 . . . 48
*/
start[0] = 1;
stride[0] = 1;
count[0] = 48;
block[0] = 1;
mspace1.selectHyperslab( H5S_SELECT_SET, count, start, stride, block);
/*
* Write selection from the vector buffer to the dataset in the file.
*
* File dataset should look like this:
* 0 1 2 0 3 4 0 5 6 0 7 8
* 0 9 10 0 11 12 0 13 14 0 15 16
* 0 17 18 0 19 20 0 21 22 0 23 24
* 0 0 0 0 0 0 0 0 0 0 0 0
* 0 25 26 0 27 28 0 29 30 0 31 32
* 0 33 34 0 35 36 0 37 38 0 39 40
* 0 41 42 0 43 44 0 45 46 0 47 48
* 0 0 0 0 0 0 0 0 0 0 0 0
*/
int vector[MSPACE1_DIM]; // vector buffer for dset
/*
* Write selection from the vector buffer to the dataset in the file.
*
* File dataset should look like this:
* 0 1 2 0 3 4 0 5 6 0 7 8
* 0 9 10 0 11 12 0 13 14 0 15 16
* 0 17 18 0 19 20 0 21 22 0 23 24
* 0 0 0 0 0 0 0 0 0 0 0 0
* 0 25 26 0 27 28 0 29 30 0 31 32
* 0 33 34 0 35 36 0 37 38 0 39 40
* 0 41 42 0 43 44 0 45 46 0 47 48
* 0 0 0 0 0 0 0 0 0 0 0 0
*/
int vector[MSPACE1_DIM]; // vector buffer for dset
/*
* Buffer initialization.
*/
vector[0] = vector[MSPACE1_DIM - 1] = -1;
for (i = 1; i < MSPACE1_DIM - 1; i++)
vector[i] = i;
/*
* Buffer initialization.
*/
vector[0] = vector[MSPACE1_DIM - 1] = -1;
for (i = 1; i < MSPACE1_DIM - 1; i++)
vector[i] = i;
dataset->write( vector, PredType::NATIVE_INT, mspace1, fspace );
dataset->write( vector, PredType::NATIVE_INT, mspace1, fspace );
/*
* Reset the selection for the file dataspace fid.
*/
fspace.selectNone();
/*
* Reset the selection for the file dataspace fid.
*/
fspace.selectNone();
/*
* Create dataspace for the second dataset.
*/
hsize_t dim2[] = {MSPACE2_DIM}; /* Dimension size of the second dataset
(in memory */
DataSpace mspace2( MSPACE2_RANK, dim2 );
/*
* Create dataspace for the second dataset.
*/
hsize_t dim2[] = {MSPACE2_DIM}; /* Dimension size of the second dataset
(in memory */
DataSpace mspace2( MSPACE2_RANK, dim2 );
/*
* Select sequence of NPOINTS points in the file dataspace.
*/
hsize_t coord[NPOINTS][FSPACE_RANK]; /* Array to store selected points
from the file dataspace */
coord[0][0] = 0; coord[0][1] = 0;
coord[1][0] = 3; coord[1][1] = 3;
coord[2][0] = 3; coord[2][1] = 5;
coord[3][0] = 5; coord[3][1] = 6;
/*
* Select sequence of NPOINTS points in the file dataspace.
*/
hsize_t coord[NPOINTS][FSPACE_RANK]; /* Array to store selected points
from the file dataspace */
coord[0][0] = 0; coord[0][1] = 0;
coord[1][0] = 3; coord[1][1] = 3;
coord[2][0] = 3; coord[2][1] = 5;
coord[3][0] = 5; coord[3][1] = 6;
fspace.selectElements( H5S_SELECT_SET, NPOINTS, (const hsize_t *)coord);
fspace.selectElements( H5S_SELECT_SET, NPOINTS, (const hsize_t *)coord);
/*
* Write new selection of points to the dataset.
*/
int values[] = {53, 59, 61, 67}; /* New values to be written */
dataset->write( values, PredType::NATIVE_INT, mspace2, fspace );
/*
* Write new selection of points to the dataset.
*/
int values[] = {53, 59, 61, 67}; /* New values to be written */
dataset->write( values, PredType::NATIVE_INT, mspace2, fspace );
/*
* File dataset should look like this:
* 53 1 2 0 3 4 0 5 6 0 7 8
* 0 9 10 0 11 12 0 13 14 0 15 16
* 0 17 18 0 19 20 0 21 22 0 23 24
* 0 0 0 59 0 61 0 0 0 0 0 0
* 0 25 26 0 27 28 0 29 30 0 31 32
* 0 33 34 0 35 36 67 37 38 0 39 40
* 0 41 42 0 43 44 0 45 46 0 47 48
* 0 0 0 0 0 0 0 0 0 0 0 0
*
*/
/*
* File dataset should look like this:
* 53 1 2 0 3 4 0 5 6 0 7 8
* 0 9 10 0 11 12 0 13 14 0 15 16
* 0 17 18 0 19 20 0 21 22 0 23 24
* 0 0 0 59 0 61 0 0 0 0 0 0
* 0 25 26 0 27 28 0 29 30 0 31 32
* 0 33 34 0 35 36 67 37 38 0 39 40
* 0 41 42 0 43 44 0 45 46 0 47 48
* 0 0 0 0 0 0 0 0 0 0 0 0
*
*/
/*
* Close the dataset and the file.
*/
delete dataset;
delete file;
/*
* Close the dataset and the file.
*/
delete dataset;
delete file;
/*
* Open the file.
*/
file = new H5File( FILE_NAME, H5F_ACC_RDONLY );
/*
* Open the file.
*/
file = new H5File( FILE_NAME, H5F_ACC_RDONLY );
/*
* Open the dataset.
*/
dataset = new DataSet( file->openDataSet( DATASET_NAME ));
/*
* Open the dataset.
*/
dataset = new DataSet( file->openDataSet( DATASET_NAME ));
/*
* Get dataspace of the dataset.
*/
fspace = dataset->getSpace();
/*
* Get dataspace of the dataset.
*/
fspace = dataset->getSpace();
/*
* Select first hyperslab for the dataset in the file. The following
* elements are selected:
* 10 0 11 12
* 18 0 19 20
* 0 59 0 61
*
*/
start[0] = 1; start[1] = 2;
block[0] = 1; block[1] = 1;
stride[0] = 1; stride[1] = 1;
count[0] = 3; count[1] = 4;
fspace.selectHyperslab(H5S_SELECT_SET, count, start, stride, block);
/*
* Select first hyperslab for the dataset in the file. The following
* elements are selected:
* 10 0 11 12
* 18 0 19 20
* 0 59 0 61
*
*/
start[0] = 1; start[1] = 2;
block[0] = 1; block[1] = 1;
stride[0] = 1; stride[1] = 1;
count[0] = 3; count[1] = 4;
fspace.selectHyperslab(H5S_SELECT_SET, count, start, stride, block);
/*
* Add second selected hyperslab to the selection.
* The following elements are selected:
* 19 20 0 21 22
* 0 61 0 0 0
* 27 28 0 29 30
* 35 36 67 37 38
* 43 44 0 45 46
* 0 0 0 0 0
* Note that two hyperslabs overlap. Common elements are:
* 19 20
* 0 61
*/
start[0] = 2; start[1] = 4;
block[0] = 1; block[1] = 1;
stride[0] = 1; stride[1] = 1;
count[0] = 6; count[1] = 5;
fspace.selectHyperslab(H5S_SELECT_OR, count, start, stride, block);
/*
* Add second selected hyperslab to the selection.
* The following elements are selected:
* 19 20 0 21 22
* 0 61 0 0 0
* 27 28 0 29 30
* 35 36 67 37 38
* 43 44 0 45 46
* 0 0 0 0 0
* Note that two hyperslabs overlap. Common elements are:
* 19 20
* 0 61
*/
start[0] = 2; start[1] = 4;
block[0] = 1; block[1] = 1;
stride[0] = 1; stride[1] = 1;
count[0] = 6; count[1] = 5;
fspace.selectHyperslab(H5S_SELECT_OR, count, start, stride, block);
/*
* Create memory dataspace.
*/
hsize_t mdim[] = {MSPACE_DIM1, MSPACE_DIM2}; /* Dimension sizes of the
/*
* Create memory dataspace.
*/
hsize_t mdim[] = {MSPACE_DIM1, MSPACE_DIM2}; /* Dimension sizes of the
dataset in memory when we
read selection from the
dataset on the disk */
DataSpace mspace(MSPACE_RANK, mdim);
DataSpace mspace(MSPACE_RANK, mdim);
/*
* Select two hyperslabs in memory. Hyperslabs has the same
* size and shape as the selected hyperslabs for the file dataspace.
*/
start[0] = 0; start[1] = 0;
block[0] = 1; block[1] = 1;
stride[0] = 1; stride[1] = 1;
count[0] = 3; count[1] = 4;
mspace.selectHyperslab(H5S_SELECT_SET, count, start, stride, block);
start[0] = 1; start[1] = 2;
block[0] = 1; block[1] = 1;
stride[0] = 1; stride[1] = 1;
count[0] = 6; count[1] = 5;
mspace.selectHyperslab(H5S_SELECT_OR, count, start, stride, block);
/*
* Select two hyperslabs in memory. Hyperslabs has the same
* size and shape as the selected hyperslabs for the file dataspace.
*/
start[0] = 0; start[1] = 0;
block[0] = 1; block[1] = 1;
stride[0] = 1; stride[1] = 1;
count[0] = 3; count[1] = 4;
mspace.selectHyperslab(H5S_SELECT_SET, count, start, stride, block);
start[0] = 1; start[1] = 2;
block[0] = 1; block[1] = 1;
stride[0] = 1; stride[1] = 1;
count[0] = 6; count[1] = 5;
mspace.selectHyperslab(H5S_SELECT_OR, count, start, stride, block);
/*
* Initialize data buffer.
*/
int matrix_out[MSPACE_DIM1][MSPACE_DIM2];
for (i = 0; i < MSPACE_DIM1; i++)
for (j = 0; j < MSPACE_DIM2; j++)
matrix_out[i][j] = 0;
/*
* Initialize data buffer.
*/
int matrix_out[MSPACE_DIM1][MSPACE_DIM2];
for (i = 0; i < MSPACE_DIM1; i++)
for (j = 0; j < MSPACE_DIM2; j++)
matrix_out[i][j] = 0;
/*
* Read data back to the buffer matrix.
*/
dataset->read(matrix_out, PredType::NATIVE_INT, mspace, fspace);
/*
* Read data back to the buffer matrix.
*/
dataset->read(matrix_out, PredType::NATIVE_INT, mspace, fspace);
/*
* Display the result. Memory dataset is:
*
* 10 0 11 12 0 0 0 0 0
* 18 0 19 20 0 21 22 0 0
* 0 59 0 61 0 0 0 0 0
* 0 0 27 28 0 29 30 0 0
* 0 0 35 36 67 37 38 0 0
* 0 0 43 44 0 45 46 0 0
* 0 0 0 0 0 0 0 0 0
* 0 0 0 0 0 0 0 0 0
*/
for (i=0; i < MSPACE_DIM1; i++)
{
for(j=0; j < MSPACE_DIM2; j++)
cout << matrix_out[i][j] << " ";
cout << endl;
}
/*
* Display the result. Memory dataset is:
*
* 10 0 11 12 0 0 0 0 0
* 18 0 19 20 0 21 22 0 0
* 0 59 0 61 0 0 0 0 0
* 0 0 27 28 0 29 30 0 0
* 0 0 35 36 67 37 38 0 0
* 0 0 43 44 0 45 46 0 0
* 0 0 0 0 0 0 0 0 0
* 0 0 0 0 0 0 0 0 0
*/
for (i=0; i < MSPACE_DIM1; i++)
{
for(j=0; j < MSPACE_DIM2; j++)
cout << matrix_out[i][j] << " ";
cout << endl;
}
/*
* Close the dataset and the file.
*/
delete dataset;
delete file;
/*
* Close the dataset and the file.
*/
delete dataset;
delete file;
} // end of try block
// catch failure caused by the H5File operations
catch( FileIException error )
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch( DataSetIException error )
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch( DataSpaceIException error )
{
error.printErrorStack();
return -1;
error.printErrorStack();
return -1;
}
return 0;

View File

@@ -7666,6 +7666,42 @@ normal'><span style='font-size:14.0pt;mso-bidi-font-size:11.0pt;line-height:
normal'><o:p>&nbsp;</o:p></p>
</td>
</tr>
<tr style='mso-yfti-irow:180'>
<td width=263 style='width:197.2pt;border:solid windowtext 1.0pt;border-top:
none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
normal'>H5Fget_fileno</p>
</td>
<td width=474 valign=top style='width:355.2pt;border-top:none;border-left:
none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
normal'>unsigned long H5File::getFileNum()</p>
</td>
<td width=35 valign=top style='width:26.05pt;border-top:none;border-left:
none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoNormal align=center style='margin-bottom:0in;margin-bottom:.0001pt;
text-align:center;line-height:normal'><o:p>&nbsp;</o:p></p>
</td>
<td width=42 valign=top style='width:31.45pt;border-top:none;border-left:
none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoNormal align=center style='margin-bottom:0in;margin-bottom:.0001pt;
text-align:center;line-height:normal'><o:p>&nbsp;</o:p></p>
</td>
<td width=169 valign=top style='width:126.65pt;border-top:none;border-left:
none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;
mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
normal'><o:p>&nbsp;</o:p></p>
</td>
</tr>
<tr style='mso-yfti-irow:181'>
<td width=263 style='width:197.2pt;border:solid windowtext 1.0pt;border-top:
none;mso-border-top-alt:solid windowtext .5pt;mso-border-alt:solid windowtext .5pt;
@@ -11457,7 +11493,7 @@ normal'><span style='font-size:14.0pt;mso-bidi-font-size:11.0pt;line-height:
mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
normal'>H5L_info_t getLinkInfo(const char* link_name,</p>
normal'>H5L_info2_t getLinkInfo(const char* link_name,</p>
<p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
normal'><span style='mso-tab-count:1'>               </span>const
LinkAccPropList&amp; lapl = LinkAccPropList::DEFAULT)</p>
@@ -11490,7 +11526,7 @@ normal'><span style='font-size:14.0pt;mso-bidi-font-size:11.0pt;line-height:
mso-border-top-alt:solid windowtext .5pt;mso-border-left-alt:solid windowtext .5pt;
mso-border-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
normal'>H5L_info_t getLinkInfo(const H5std_string&amp; link_name,</p>
normal'>H5L_info2_t getLinkInfo(const H5std_string&amp; link_name,</p>
<p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
normal'><span style='mso-tab-count:1'>               </span>const
LinkAccPropList&amp; lapl = LinkAccPropList::DEFAULT)</p>

View File

@@ -1,4 +1,4 @@
cmake_minimum_required (VERSION 3.10)
cmake_minimum_required (VERSION 3.12)
project (HDF5_CPP_SRC CXX)
#-----------------------------------------------------------------------------
@@ -84,33 +84,44 @@ set (CPP_HDRS
${HDF5_CPP_SRC_SOURCE_DIR}/H5VarLenType.h
)
add_library (${HDF5_CPP_LIB_TARGET} STATIC ${CPP_SOURCES} ${CPP_HDRS})
target_include_directories(${HDF5_CPP_LIB_TARGET}
PRIVATE "${HDF5_SRC_DIR};${HDF5_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>"
INTERFACE "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>"
)
target_compile_definitions(${HDF5_CPP_LIB_TARGET}
PRIVATE $<$<BOOL:${HDF5_ENABLE_PARALLEL}>:MPICH_SKIP_MPICXX;MPICH_IGNORE_CXX_SEEK># Parallel/MPI, prevent spurious cpp/cxx warnings
)
TARGET_C_PROPERTIES (${HDF5_CPP_LIB_TARGET} STATIC)
target_link_libraries (${HDF5_CPP_LIB_TARGET} PUBLIC ${HDF5_LIB_TARGET})
set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_CPP_LIB_TARGET}")
H5_SET_LIB_OPTIONS (${HDF5_CPP_LIB_TARGET} ${HDF5_CPP_LIB_NAME} STATIC 0)
set_target_properties (${HDF5_CPP_LIB_TARGET} PROPERTIES FOLDER libraries/cpp)
set (install_targets ${HDF5_CPP_LIB_TARGET})
if (BUILD_SHARED_LIBS)
add_library (${HDF5_CPP_LIBSH_TARGET} SHARED ${CPP_SOURCES} ${CPP_HDRS})
target_include_directories(${HDF5_CPP_LIBSH_TARGET}
if (NOT ONLY_SHARED_LIBS)
add_library (${HDF5_CPP_LIB_TARGET} STATIC ${CPP_SOURCES} ${CPP_HDRS})
target_include_directories (${HDF5_CPP_LIB_TARGET}
PRIVATE "${HDF5_SRC_DIR};${HDF5_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>"
INTERFACE "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>"
)
target_compile_options(${HDF5_CPP_LIB_TARGET} PRIVATE "${HDF5_CMAKE_CXX_FLAGS}")
target_compile_definitions(${HDF5_CPP_LIB_TARGET}
PRIVATE $<$<BOOL:${HDF5_ENABLE_PARALLEL}>:MPICH_SKIP_MPICXX;MPICH_IGNORE_CXX_SEEK># Parallel/MPI, prevent spurious cpp/cxx warnings
)
TARGET_C_PROPERTIES (${HDF5_CPP_LIB_TARGET} STATIC)
target_link_libraries (${HDF5_CPP_LIB_TARGET} PUBLIC ${HDF5_LIB_TARGET})
set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_CPP_LIB_TARGET}")
H5_SET_LIB_OPTIONS (${HDF5_CPP_LIB_TARGET} ${HDF5_CPP_LIB_NAME} STATIC 0)
set_target_properties (${HDF5_CPP_LIB_TARGET} PROPERTIES FOLDER libraries/cpp)
set (install_targets ${HDF5_CPP_LIB_TARGET})
endif ()
if (BUILD_SHARED_LIBS)
add_library (${HDF5_CPP_LIBSH_TARGET} SHARED ${CPP_SOURCES} ${CPP_HDRS})
target_include_directories (${HDF5_CPP_LIBSH_TARGET}
PRIVATE "${HDF5_SRC_DIR};${HDF5_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>"
INTERFACE "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>"
)
target_compile_options(${HDF5_CPP_LIBSH_TARGET} PRIVATE "${HDF5_CMAKE_CXX_FLAGS}")
target_compile_definitions(${HDF5_CPP_LIBSH_TARGET}
PUBLIC "H5_BUILT_AS_DYNAMIC_LIB"
PRIVATE $<$<BOOL:${HDF5_ENABLE_PARALLEL}>:MPICH_SKIP_MPICXX;MPICH_IGNORE_CXX_SEEK># Parallel/MPI, prevent spurious cpp/cxx warnings
)
TARGET_C_PROPERTIES (${HDF5_CPP_LIBSH_TARGET} SHARED)
target_link_libraries (${HDF5_CPP_LIBSH_TARGET} PUBLIC ${HDF5_LIBSH_TARGET})
target_link_libraries (${HDF5_CPP_LIBSH_TARGET}
PUBLIC ${HDF5_LIBSH_TARGET}
)
if (MINGW)
target_link_options (${HDF5_CPP_LIBSH_TARGET}
PRIVATE -static-libgcc -static-libstdc++
)
endif ()
set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_CPP_LIBSH_TARGET}")
H5_SET_LIB_OPTIONS (${HDF5_CPP_LIBSH_TARGET} ${HDF5_CPP_LIB_NAME} SHARED "CXX")
set_target_properties (${HDF5_CPP_LIBSH_TARGET} PROPERTIES FOLDER libraries/cpp)
@@ -136,7 +147,9 @@ if (HDF5_EXPORTED_TARGETS)
if (BUILD_SHARED_LIBS)
INSTALL_TARGET_PDB (${HDF5_CPP_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} cpplibraries)
endif ()
INSTALL_TARGET_PDB (${HDF5_CPP_LIB_TARGET} ${HDF5_INSTALL_BIN_DIR} cpplibraries)
if (NOT ONLY_SHARED_LIBS)
INSTALL_TARGET_PDB (${HDF5_CPP_LIB_TARGET} ${HDF5_INSTALL_LIB_DIR} cpplibraries)
endif ()
install (
TARGETS
@@ -163,7 +176,9 @@ set (_PKG_CONFIG_VERSION "${HDF5_PACKAGE_VERSION}")
set (_PKG_CONFIG_LIBS_PRIVATE)
set (_PKG_CONFIG_LIBS "${_PKG_CONFIG_LIBS} -l${HDF5_CPP_LIB_CORENAME}")
if (NOT ONLY_SHARED_LIBS)
set (_PKG_CONFIG_LIBS "${_PKG_CONFIG_LIBS} -l${HDF5_CPP_LIB_CORENAME}")
endif ()
if (BUILD_SHARED_LIBS)
set (_PKG_CONFIG_SH_LIBS "${_PKG_CONFIG_SH_LIBS} -l${HDF5_CPP_LIB_CORENAME}")
endif ()
@@ -182,7 +197,7 @@ install (
COMPONENT cpplibraries
)
if (NOT WIN32)
if (NOT WIN32 AND NOT MINGW)
set (_PKG_CONFIG_COMPILER ${CMAKE_CXX_COMPILER})
configure_file (
${HDF_RESOURCES_DIR}/libh5cc.in

View File

@@ -143,6 +143,7 @@ ArrayType& ArrayType::operator=(const ArrayType& rhs)
// Function: ArrayType::decode
///\brief Returns an ArrayType object via DataType* by decoding the
/// binary object description of this type.
///
///\exception H5::DataTypeIException
// Programmer Binh-Minh Ribler - Aug 2017
//--------------------------------------------------------------------------

View File

@@ -129,6 +129,7 @@ CompType::CompType(const H5Location& loc, const H5std_string& dtype_name) : Data
// Function: CompType::decode
///\brief Returns a CompType object via DataType* by decoding the
/// binary object description of this datatype.
///
///\exception H5::DataTypeIException
// Programmer Binh-Minh Ribler - Aug 2017
//--------------------------------------------------------------------------

View File

@@ -25,7 +25,7 @@
* \section intro_sec Introduction
*
* The C++ API provides C++ wrappers for the HDF5 C Library.
*
*
* It is assumed that the user has knowledge of the HDF5 file format and its
* components. For more information on the HDF5 C Library, please refer to
* the HDF5 Software Documentation page.
@@ -53,11 +53,10 @@
* <br />
* \section install_sec Installation
*
* The HDF5 C++ API is included with the HDF5 source code and can
* be obtained from
*
* Please refer to the release_docs/INSTALL file under the top directory
* of the HDF5 source code for information about installing, building,
* The HDF5 C++ API is included with the HDF5 source code.
*
* Please refer to the release_docs/INSTALL file under the top directory
* of the HDF5 source code for information about installing, building,
* and testing the C++ API.
*
* <br />

View File

@@ -369,10 +369,10 @@ void DataSet::vlenReclaim(const DataType& type, const DataSpace& space, const DS
hid_t space_id = space.getId();
hid_t xfer_plist_id = xfer_plist.getId();
herr_t ret_value = H5Dvlen_reclaim(type_id, space_id, xfer_plist_id, buf);
herr_t ret_value = H5Treclaim(type_id, space_id, xfer_plist_id, buf);
if (ret_value < 0)
{
throw DataSetIException("DataSet::vlenReclaim", "H5Dvlen_reclaim failed");
throw DataSetIException("DataSet::vlenReclaim", "H5Treclaim failed");
}
}
@@ -397,10 +397,10 @@ void DataSet::vlenReclaim(void* buf, const DataType& type, const DataSpace& spac
hid_t space_id = space.getId();
hid_t xfer_plist_id = xfer_plist.getId();
herr_t ret_value = H5Dvlen_reclaim(type_id, space_id, xfer_plist_id, buf);
herr_t ret_value = H5Treclaim(type_id, space_id, xfer_plist_id, buf);
if (ret_value < 0)
{
throw DataSetIException("DataSet::vlenReclaim", "H5Dvlen_reclaim failed");
throw DataSetIException("DataSet::vlenReclaim", "H5Treclaim failed");
}
}

View File

@@ -122,7 +122,7 @@ DataType::DataType(const H5Location& loc, const void* ref, H5R_type_t ref_type,
{
id = H5Location::p_dereference(attr.getId(), ref, ref_type, plist, "constructor - by dereference");
}
*/
*/
//--------------------------------------------------------------------------
// Function: DataType copy constructor
@@ -281,6 +281,7 @@ hid_t DataType::p_decode() const
// Function: DataType::decode
///\brief Returns a DataType instance by decoding the binary object
/// description of this datatype.
///
///\exception H5::DataTypeIException
// Programmer Binh-Minh Ribler - Aug 2017
//--------------------------------------------------------------------------
@@ -301,6 +302,7 @@ DataType* DataType::decode() const
//--------------------------------------------------------------------------
// Function: DataType::encode
///\brief Creates a binary object description of this datatype.
///
///\exception H5::DataTypeIException
// Programmer Binh-Minh Ribler - Aug 2017
//--------------------------------------------------------------------------
@@ -333,6 +335,7 @@ void DataType::encode()
// Function: DataType::hasBinaryDesc
///\brief Determines whether this datatype has a binary object
/// description.
///
///\exception H5::DataTypeIException
// Programmer Binh-Minh Ribler - Aug 2017
//--------------------------------------------------------------------------

View File

@@ -253,6 +253,7 @@ void DSetCreatPropList::setSzip(unsigned int options_mask, unsigned int pixels_p
// Function: DSetCreatPropList::setNbit
///\brief Sets up for the use of the Nbit compression filter.
///\exception H5::PropListIException
///
///\par Description
/// The associate C function sets an Nbit compression filter,
/// H5Z_FILTER_NBIT, for a dataset. For more information about

View File

@@ -299,6 +299,7 @@ ssize_t DSetMemXferPropList::getDataTransform(char* exp, size_t buf_size) const
// Function: DSetMemXferPropList::getDataTransform
///\brief This is an overloaded member function, provided for convenience.
/// It takes no parameter and returns a \c H5std_string for the expression.
///
///\exception H5::PropListIException
// Programmer Binh-Minh Ribler - Mar, 2014
//--------------------------------------------------------------------------

View File

@@ -66,7 +66,7 @@ class H5_DLLCPP DSetMemXferPropList : public PropList {
void getTypeConvCB(H5T_conv_except_func_t *op, void **user_data) const;
// Sets the memory manager for variable-length datatype
// allocation in H5Dread and H5Dvlen_reclaim.
// allocation in H5Dread and H5Treclaim.
void setVlenMemManager(H5MM_allocate_t alloc, void* alloc_info,
H5MM_free_t free, void* free_info) const;
@@ -75,7 +75,7 @@ class H5_DLLCPP DSetMemXferPropList : public PropList {
void setVlenMemManager() const;
// Gets the memory manager for variable-length datatype
// allocation in H5Dread and H5Tvlen_reclaim.
// allocation in H5Dread and H5Treclaim.
void getVlenMemManager(H5MM_allocate_t& alloc, void** alloc_info,
H5MM_free_t& free, void** free_info) const;

View File

@@ -151,6 +151,7 @@ EnumType::EnumType(const H5Location& loc, const H5std_string& dtype_name) : Data
// Function: EnumType::decode
///\brief Returns an EnumType object via DataType* by decoding the
/// binary object description of this type.
///
///\exception H5::DataTypeIException
// Programmer Binh-Minh Ribler - Aug 2017
//--------------------------------------------------------------------------

View File

@@ -60,7 +60,7 @@ H5std_string Exception::getMajorString(hid_t err_major) const
{
// Preliminary call to H5Eget_msg() to get the length of the message
ssize_t mesg_size = H5Eget_msg(err_major, NULL, NULL, 0);
// If H5Eget_msg() returns a negative value, raise an exception,
if (mesg_size < 0)
throw IdComponentException("Exception::getMajorString",

View File

@@ -696,10 +696,16 @@ unsigned FileAccPropList::getGcReferences() const
/// Valid values of \a libver_low are as follows:
/// \li \c H5F_LIBVER_EARLIEST (Default)
/// \li \c H5F_LIBVER_18
/// \li \c H5F_LIBVER_110
/// \li \c H5F_LIBVER_112
/// \li \c H5F_LIBVER_114
/// \li \c H5F_LIBVER_LATEST
///
/// Valid values of \a libver_high are as follows:
/// \li \c H5F_LIBVER_18
/// \li \c H5F_LIBVER_110
/// \li \c H5F_LIBVER_112
/// \li \c H5F_LIBVER_114
/// \li \c H5F_LIBVER_LATEST (Default)
///
/// For more detail, please refer to the H5Pset_libver_bounds API in
@@ -729,10 +735,16 @@ void FileAccPropList::setLibverBounds(H5F_libver_t libver_low, H5F_libver_t libv
/// values:
/// \li \c H5F_LIBVER_EARLIEST
/// \li \c H5F_LIBVER_18
/// \li \c H5F_LIBVER_110
/// \li \c H5F_LIBVER_112
/// \li \c H5F_LIBVER_114
/// \li \c H5F_LIBVER_LATEST
///
/// and \a libver_high:
/// \li \c H5F_LIBVER_18
/// \li \c H5F_LIBVER_110
/// \li \c H5F_LIBVER_112
/// \li \c H5F_LIBVER_114
/// \li \c H5F_LIBVER_LATEST
// Programmer Binh-Minh Ribler - March, 2015
//--------------------------------------------------------------------------

View File

@@ -192,16 +192,17 @@ H5File::H5File(const H5File& original) : Group()
//--------------------------------------------------------------------------
bool H5File::isHdf5(const char* name)
{
// Calls C routine H5Fis_hdf5 to determine whether the file is in
// Calls C routine H5Fis_accessible to determine whether the file is in
// HDF5 format. It returns positive value, 0, or negative value
htri_t ret_value = H5Fis_hdf5(name);
htri_t ret_value = H5Fis_accessible(name, H5P_DEFAULT);
if (ret_value > 0)
return true;
else if (ret_value == 0)
return false;
else // Raise exception when H5Fis_hdf5 returns a negative value
else // Raise exception when H5Fis_accessible returns a negative value
{
throw FileIException("H5File::isHdf5", "H5Fis_hdf5 returned negative value");
throw FileIException("H5File::isHdf5", "H5Fis_accessible returned negative value");
}
}
@@ -217,6 +218,46 @@ bool H5File::isHdf5(const H5std_string& name)
return(isHdf5( name.c_str()));
}
//--------------------------------------------------------------------------
// Function: H5File::isAccessible (static)
///\brief Determines whether a file can be accessed as HDF5. (Static)
///\param name - IN: Name of the file
///\param access_plist - IN: File access property list. Default to
/// FileAccPropList::DEFAULT
///\return true if the file can be accessed as HDF5, and false, otherwise
///\exception H5::FileIException
// September 2018
//--------------------------------------------------------------------------
bool H5File::isAccessible(const char* name, const FileAccPropList& access_plist)
{
// Calls C routine H5Fis_accessible to determine whether the file is in
// HDF5 format. It returns positive value, 0, or negative value
hid_t access_plist_id = access_plist.getId();
htri_t ret_value = H5Fis_accessible(name, access_plist_id);
if (ret_value > 0)
return true;
else if (ret_value == 0)
return false;
else // Raise exception when H5Fis_accessible returns a negative value
{
throw FileIException("H5File::isAccessible", "H5Fis_accessible returned negative value");
}
}
//--------------------------------------------------------------------------
// Function: H5File::isAccessible (static)
///\brief This is an overloaded member function, provided for convenience.
/// It takes an \c H5std_string for \a name. (Static)
///\param name - IN: Name of the file - \c H5std_string
///\param access_plist - IN: File access property list. Default to
/// FileAccPropList::DEFAULT
// September 2018
//--------------------------------------------------------------------------
bool H5File::isAccessible(const H5std_string& name, const FileAccPropList& access_plist)
{
return(isAccessible(name.c_str(), access_plist));
}
//--------------------------------------------------------------------------
// Function: openFile
///\brief Opens an HDF5 file
@@ -538,6 +579,27 @@ hsize_t H5File::getFileSize() const
return (file_size);
}
//--------------------------------------------------------------------------
// Function: H5File::getFileNum
///\brief Returns the file number of the HDF5 file.
///\return File number
///\exception H5::FileIException
///\par Description
/// This function is called after an existing file is opened in
/// order to retrieve the unique 'file number' for the file.
// Programmer Quincey Koziol - April 13, 2019
//--------------------------------------------------------------------------
unsigned long H5File::getFileNum() const
{
unsigned long fileno = 0;
herr_t ret_value = H5Fget_fileno(id, &fileno);
if (ret_value < 0)
{
throw FileIException("H5File::getFileNum", "H5Fget_fileno failed");
}
return (fileno);
}
//--------------------------------------------------------------------------
// Function: H5File::getId
///\brief Get the id of this file

View File

@@ -69,10 +69,17 @@ class H5_DLLCPP H5File : public Group {
// Returns the file size of the HDF5 file.
hsize_t getFileSize() const;
// Returns the 'file number' of the HDF5 file.
unsigned long getFileNum() const;
// Determines if a file, specified by its name, is in HDF5 format
static bool isHdf5(const char* name);
static bool isHdf5(const H5std_string& name);
// Determines if a file, specified by its name, can be accessed as HDF5
static bool isAccessible(const char* name, const FileAccPropList& access_plist = FileAccPropList::DEFAULT);
static bool isAccessible(const H5std_string& name, const FileAccPropList& access_plist = FileAccPropList::DEFAULT);
// Reopens this file.
void reOpen(); // added for better name

View File

@@ -133,6 +133,7 @@ FloatType::FloatType(const H5Location& loc, const H5std_string& dtype_name) : At
// Function: FloatType::decode
///\brief Returns an FloatType object via DataType* by decoding the
/// binary object description of this type.
///
///\exception H5::DataTypeIException
// Programmer Binh-Minh Ribler - Aug 2017
//--------------------------------------------------------------------------

View File

@@ -66,6 +66,7 @@ Group::Group(const Group& original) : H5Object(), CommonFG(), id(original.id)
//--------------------------------------------------------------------------
// Function: Group::closeObjId
///\brief Closes an object, which was opened with Group::getObjId
///
///\exception H5::FileIException or H5::GroupIException
// Programmer Binh-Minh Ribler - March, 2017
//--------------------------------------------------------------------------

View File

@@ -174,8 +174,8 @@ H5I_type_t IdComponent::getHDFObjType() const
/// \li \c H5I_DATASPACE
/// \li \c H5I_DATASET
/// \li \c H5I_ATTR
/// \li \c H5I_REFERENCE (DEPRECATED)
/// \li \c H5I_VFL
/// \li \c H5I_VOL
/// \li \c H5I_GENPROP_CLS
/// \li \c H5I_GENPROP_LST
/// \li \c H5I_ERROR_CLASS
@@ -227,8 +227,8 @@ bool IdComponent::isValid(hid_t an_id)
/// \li \c H5I_DATASPACE
/// \li \c H5I_DATASET
/// \li \c H5I_ATTR
/// \li \c H5I_REFERENCE (DEPRECATED)
/// \li \c H5I_VFL
/// \li \c H5I_VOL
/// \li \c H5I_GENPROP_CLS
/// \li \c H5I_GENPROP_LST
/// \li \c H5I_ERROR_CLASS

View File

@@ -83,7 +83,7 @@ IntType::IntType(const DataSet& dataset) : AtomType()
{
// Calls C function H5Dget_type to get the id of the datatype
id = H5Dget_type(dataset.getId());
if (id < 0)
{
throw DataSetIException("IntType constructor", "H5Dget_type failed");
@@ -132,6 +132,7 @@ IntType::IntType(const H5Location& loc, const H5std_string& dtype_name) : AtomTy
// Function: IntType::decode
///\brief Returns an IntType object via DataType* by decoding the
/// binary object description of this type.
///
///\exception H5::DataTypeIException
// Programmer Binh-Minh Ribler - Aug 2017
//--------------------------------------------------------------------------

View File

@@ -107,6 +107,7 @@ LinkAccPropList::LinkAccPropList(const hid_t plist_id) : PropList(plist_id) {}
///\brief Set the number of soft or user-defined link traversals allowed
/// before the library assumes it has found a cycle and aborts the
/// traversal.
///
///\exception H5::PropListIException
// Programmer Binh-Minh Ribler - March 1, 2017
//--------------------------------------------------------------------------
@@ -124,6 +125,7 @@ void LinkAccPropList::setNumLinks(size_t nlinks) const
// Function: LinkAccPropList::getNumLinks
///\brief Gets the number of soft or user-defined links that can be
/// traversed before a failure occurs.
///
///\exception H5::PropListIException
// Programmer Binh-Minh Ribler - March 1, 2017
//--------------------------------------------------------------------------

View File

@@ -12,9 +12,6 @@
* help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
// Class LinkAccPropList represents the HDF5 file access property list and
// inherits from DataType.
#ifndef __H5LinkAccPropList_H
#define __H5LinkAccPropList_H
@@ -22,15 +19,15 @@ namespace H5 {
/*! \class LinkAccPropList
\brief Class LinkAccPropList inherits from PropList and provides
wrappers for the HDF5 file access property list.
wrappers for the HDF5 link access property list.
*/
// Inheritance: PropList -> IdComponent
class H5_DLLCPP LinkAccPropList : public PropList {
public:
///\brief Default file access property list.
///\brief Default link access property list.
static const LinkAccPropList& DEFAULT;
// Creates a file access property list.
// Creates a link access property list.
LinkAccPropList();
///\brief Returns this class name.
@@ -39,7 +36,7 @@ class H5_DLLCPP LinkAccPropList : public PropList {
// Copy constructor: same as the original LinkAccPropList.
LinkAccPropList(const LinkAccPropList& original);
// Creates a copy of an existing file access property list
// Creates a copy of an existing link access property list
// using the property list id.
LinkAccPropList (const hid_t plist_id);

Some files were not shown because too many files have changed in this diff Show More