Commit Graph

22267 Commits

Author SHA1 Message Date
Scot Breitenfeld
4e4c7cf66d
fixed error code returned for H5Aexits (#2180) 2022-10-25 07:58:23 -05:00
Neil Fortner
7997b53589
Fix problem with variable length attributes being accessed through multiple file handles (#2181)
* Fix bug with variable length attributes being accessed through multiple
file handles.

* Committing clang-format changes

Co-authored-by: Neil Fortner <nfortne2@localhost.localdomain>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-10-25 07:46:15 -05:00
Neil Fortner
93754cae33
Multi Dataset (#2120)
* Fix bug with cross platform compatibility of references within vlens.
No testing yet.

* Merge from multi_rd_wd_coll_io to a more recent branch from develop.
Untested, probably does not work yet.

* Committing clang-format changes

* Committing clang-format changes

* Fix many bugs in multi dataset branch.  Mostly works, some issues in
SWMR tests.

* Committing clang-format changes

* Disable test in swmr.c that was failing due to bug in HDF5 unrelated to
multi dataset.

* Committing clang-format changes

* Fixed fortran multi-dataset tests

* Fixed xlf errors

* Added benchmark code for multi-datasets

* loops over datasets

* added missing error arg.

* Added gnuplot formatting

* Jonathan Kim original MD benchmarking code

* updated MD benchmarking code

* code clean-up

* Only make files in feature test mode

* misc clean-up

* removed TEST_MDSET_NO_LAST_DSET_2ND_PROC option

* Committing clang-format changes

* Change multi dataset API to use arrays of individual parameters instead
of the parameter struct.

* Committing clang-format changes

* Update to new multi dataset Fortran API and tests. (#1724)

* Update to new multi dataset Fortran API and tests.
* Sync Fortran with develop.
* skipping h5pget_mpio_actual_io_mode_f for now

* Fixed issue with dxpl_id, changed to variable size dim. (#1770)

* Remove "is_coll_broken" field from H5D_io_info_t struct

* Committing clang-format changes

* Minor cleanup in multi dataset code.

* Committing clang-format changes

* Clean up in multi dataset code.

* Committing clang-format changes

* Committing clang-format changes

* Fix speeling

* Fix bug in parallel compression. Switch base_maddr in io_info to be a
union.

* Committing clang-format changes

* Implement selection I/O support with multi dataset.  Will be broken in
parallel until PR 1803 is merged to develop then the MDS branch.

* Committing clang-format changes

* Spelling

* Fix bug in multi dataset that could cause errors when only some of the
datasets in the multi dataset I/O used type conversion.

* Committing clang-format changes

* Integrate multi dataset APIs with VOL layer.  Add async versions of
multi dataset APIs.

* Committing clang-format changes

* Spelling fixes

* Fix bug in non-parallel HDF5 compilation.

* Committing clang-format changes

* Fix potential memory/free list error. Minor performance fix. Other minor
changes.

* Committing clang-format changes

* Fix memory leak with memory dataspace for I/O.

* Committing clang-format changes

* Fix stack variables too large.  Rename H5D_dset_info_t to
H5D_dset_io_info_t.

* Committing clang-format changes

* Remove mem_space_alloc field from H5D_dset_io_info_t.  Each function is
now responsible for freeing any spaces it adds to dset_info.

* Committing clang-format changes

* fixed _multi Fortran declaration

* Refactor various things in (mostly) the serial I/O code path to make
things more maintainable.

* Committing clang-format changes

* updated to array based, doxygen, and examples

* Reinstate H5D_chunk_map_t, stored (via pointer) inside
H5D_dset_io_info_t.

* Change from calloc to malloc for H5D_dset_io_info_t and H5D_chunk_map_t.
Switch temporary dset_infos to be local stack variables.

* Committing clang-format changes

* format cleanup

* format cleanup

* added coll and ind

* Modify all parallel I/O paths to take dset_info instead of assuming
dset_info[0].

* Committing clang-format changes

* fixed output

* Rework parallel I/O code to work properly with multi dataset in more
cases.  Fix bug in parallel compression.

* Committing clang-format changes

* Prevent H5D__multi_chunk_collective_io() from messing up collective opt
property for other datasets in I/O.  Other minor cleanup.  Add new test
case to t_pmulti_dset.c for H5FD_MPIO_INDIVIDUAL_IO, disabled for now
due to failures apparently unrelated to multi dataset code.

* Fix spelling

* Committing clang-format changes

* Replace N log N algorithm for finding chunk in
H5D__multi_chunk_collective_io() with O(N) algorithm, and remove use of
io_info->sel_pieces in that function.

* Committing clang-format changes

* Replace sel_pieces skiplist in io_info with flat array of pointers, use
qsort in I/O routine only when necessary.

* Committing clang-format changes

* Add new test case to mdset.c

* Committing clang-format changes

* Fix spelling

* Very minor fix in H5VL__native_dataset_read()

* Fix bug that could affect filtered parallel multi-dataset I/O.

* Add RM entries for H5Dread_multi(), H5Dread_multi_async(),
H5Dwrite_multi(), and H5Dwrite_multi_async()

* Unskip test in swmr.c

* Committing clang-format changes

* Eliminate H5D__pre_read and H5D__pre_write

* Remove examples/ph5mdsettest.c. Will fix and re-add as a test.

* Enable hyperslab combinations in mdset test

* Committing clang-format changes

* Clarify H5Dread/write_multi documentation.

* Fix bugs in multi-dataset I/O.  Expand serial multi dataset test.
Update macro in parallel multi dataset test.

* Committing clang-format changes

* Spelling

* Remove obsolete entry in bin/trace

* Rework type conversion buffer allocation. Only one buffer is shared
between datasets in mdset mode, and it is malloced instead of calloced.

* Committing clang-format changes

* Fix bug in error handling in H5D__read/write

* added multi-dataset fortran check with optional dataset creation id (#2150)

* removed dup. dll entry

* Address comments from code review.

* Remove spurious changes in H5Fmpi.c

* Fix issue with reading unallocated datasets in multi-dataset mode.
Address other comments from code review.

* Committing clang-format changes

* Delay chunk index lookup from io_init to mdio_init so it doesn't add
overhead to single dataset I/O.

* Committing clang-format changes

* Fix inappropriate use of piece_count

* updated copyright on new file, removed benchmark from testing dir.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: M. Scot Breitenfeld <brtnfld@hdfgroup.org>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2022-10-19 09:13:15 -07:00
Pierce Brooks
a898cef6c2
make sure to match the debug library postfix with external cmake projects and allow for zlib link name to be manually overridden (#2166) 2022-10-19 09:06:51 -05:00
Scot Breitenfeld
889dc1e9a7
address test failing when default real and integers are 8 bytes (#2173) 2022-10-19 08:55:06 -05:00
Scot Breitenfeld
0fd867390a
changed to referencing C APIs by empty brackets (Fortran) (#2167) 2022-10-17 15:37:19 -05:00
Scot Breitenfeld
afb92a3e22
Fix H5Dfill_f test (#2162)
* change to integer for legacy H5Dfill_f testing

* fixed H5Dfill testing issues with promoted real and integer

* updated build fortran dependencies
2022-10-14 11:35:52 -07:00
vchoi-hdfgroup
5021fd9d4d
Fix for HDFFV-10840: Instead of using fill->buf for datatype conversion (#2153)
* Fix for HDFFV-10840: Instead of using fill->buf for datatype conversion
if it is large enough, a buffer is allocated regardless so that the element
in fill->buf can later be reclaimed.
Valgrind is run on test/set_extent.c and there is no memory leak.

* Add information of this fix to release notes.

Co-authored-by: vchoi <vchoi@jelly.ad.hdfgroup.org>
2022-10-14 11:05:14 -07:00
Dana Robinson
80f80d61db
Cleans final production mode warnings from H5Shyper.c (#2163)
* H5S__hyper_free_span_info() returns herr_t (not checked)

* Set up H5S__hyper_free_span_info() error handling

* Set up H5S__hyper_free_span() error handling

* Added error handling to H5S_HYPER_ADVANCE_SPAN

* Handled errors in H5S__hyper_iter_get_seq_list_gen()

* Added a production mode build target for -Werror

* Committing clang-format changes

* Updated names for -Werror checks

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-10-14 06:15:33 -07:00
Scot Breitenfeld
edc3790f5c
renamed H5_FORTRAN_C_LONG_DOUBLE_IS_UNIQUE DLL (#2158)
* changed DLL define to a unique name
2022-10-13 11:41:33 -05:00
Scot Breitenfeld
cffaf47c15
Fix for missing h5dfill_c_long_double in dll (#2155)
* added conditionally include h5dfill_c_long_double in dll
2022-10-12 07:38:27 -05:00
Scot Breitenfeld
64e69d9291
Implemented C matching (and general) H5Dfill Fortran wrappers (#2152) 2022-10-11 07:25:05 -05:00
Scot Breitenfeld
306db409d4
Avoid calling H5FD_subfiling_init from h5open_f. (#2149)
* Only call H5FD_SUBFILING if subfiling conditions are met

* clang format
2022-10-07 09:01:42 -07:00
Scot Breitenfeld
e80079fd21
Subfiling Fortran wrapper work. (#2143)
* added C ref. for Fortran constants

* added C ref. for Fortran constants

* move constant paramters to H5* module listing

* added back comment

* Fortran subfiling and ioc FD with tests. H5Pset/get_mpi_params wrappers with tests, misc.. parallel test clean-up.

* misc. fixes

* fixed CMake testpar issues, formatted, misc. updates

* updated tests
2022-10-06 09:08:56 -07:00
Allen Byrne
a322eb6147
Fix static-cast format (#2141)
* Fix static-cast format

* clang format fix
2022-10-04 08:31:46 -05:00
Allen Byrne
c114bd64b0
Fix mostly java warnings, and cpp cast (#2134) 2022-10-03 13:31:32 -05:00
Scot Breitenfeld
1fb83da215
Grouped the Fortran constants in Doxygen (#2136) 2022-10-03 11:13:00 -05:00
Dana Robinson
ce67e4eb05
Adds a first cut at a "getting started with HDF5 development" guide (#2137)
* Added empty "getting started" markdown file

* Added title and brief tour of source code

* Moved platform-independence text to markdown

* Added anatomy of a function documentation

* Adds information on public/private/package calls and macros

* Adds much getting started guide text

* Fixed typos

* Fixed codespell issues
2022-09-30 21:44:39 -07:00
jhendersonHDF
79bdc6183e
Subfiling testing fix and documentation (#2132)
* Fix a sporadic failure in Subfiling VFD tests

* Subfiling VFD - add note to H5Pget_fapl_subfiling documentation

Adds note about how H5Pget_fapl_subfiling only returns the original
settings on a FAPL and those settings could have been modified by the
Subfiling VFD's environment variables
2022-09-29 21:06:17 -05:00
Scot Breitenfeld
1bec0ce2d7
Misc. Fortran Doxygen updates (#2129) 2022-09-28 10:52:19 -05:00
Neil Fortner
4184bac2ec
Fixed an issue that could occur when combining hyperslab selections (#2122) 2022-09-26 22:51:52 -05:00
Scot Breitenfeld
1c26386c38
Added C references to Fortran constants. (#2126)
* added C references for Fortran APIs
2022-09-26 22:50:09 -05:00
Allen Byrne
dcd332d231
Restructure ref manual presentation (#2123) 2022-09-26 22:49:29 -05:00
Allen Byrne
853a592d2d
Add missing windows include/lib configure for StrStrIA (#2114) 2022-09-22 13:52:31 -05:00
Frank Berghaus
100b22e6c2
Use case-insensitive comparison for headers fix #2100 (#2101)
* Use case-inseneitive comparison for headers

HTTP headers should be case-insensitive. Use case-insensitive string
comparisons when working with HTTP header responses to ensure
compatibility.

* Revert "Use case-inseneitive comparison for headers"

This reverts commit a02f591723506b62b7208449be6eef7122120398

* Ignore case when searching HTTP header responses

Looking up the Content-Length in the header returned by S3 storage
endpoints should ignore case. To guarantee portability implement a
function for case-insensitive string search, because it is non-standard.

* Add an _ after H5 for the strcasestr implementation

It is a private function and should sport that underscore.

* Remove author comment from the doc comment

* Use search function defined by system if available

Check whether the system provides a function implementing case
insensitive string searches. Only use the custom implementation if the
system does not provide the functionality.

* Add tests for case-insensitive search

Basic tests:
  - Search for empty string
  - Search with exact match
  - Search with case-insensitive match
  - search with no match

* Enforce clang-format style

Some variable definitions in the th5_system tests did not conform to
clang-format's expectations. Updated the offending lines.

* Correct comment describing test case

* Added some spaces to please clang-format

* Ignore discarding const

Ask the compiler to ignore discarding the const when retunring a match from H5_strcasestr

Co-authored-by: Frank Berghaus <frank.berghaus@mpcdf.mpg.de>
2022-09-21 11:50:17 -05:00
Allen Byrne
d491c33a72
Update examples reference to single-source version 2.0.1 (#2107) 2022-09-20 17:21:15 -05:00
Dana Robinson
6d89634445
Updates VOL capabilities flags (#2105)
* Added feature/vol_cap_flags branch to GitHub actions

* Convert unsigned cap flag field to uint64_t and add flags

* Committing clang-format changes

* Convert unsigned cap flag field to uint64_t and add flags

* Committing clang-format changes

* Updates the VOL struct version number

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-09-17 09:49:38 -07:00
Allen Byrne
a9d8b469f4
Use doxygen snippets for common tables (#2104) 2022-09-16 12:45:06 -05:00
jhendersonHDF
16aa2dbaa0
Subfiling VFD updates (#2106) 2022-09-16 11:17:30 -05:00
Allen Byrne
45178c87a3
develop Merge doxygen from 1.12 branch (#2095) 2022-09-14 15:44:24 -05:00
Scot Breitenfeld
dcf3b54b6e
removed H5R interface definition (#2090) 2022-09-14 15:43:27 -05:00
Neil Fortner
b5598575bb
Fix memory bug in selection I/O (#2096)
* Fix memory bug in selection I/O

* Change error messages for calls to H5I_remove() in
H5FD_read/write_selection()
2022-09-14 11:10:05 -05:00
Dana Robinson
fe9c07fd90
Adds file locking documentation (#2084)
* Added initial (partial) file locking document

* Almost done with file locking document

* Fix intro

* Cleaned up text

* Updated environment variable verion info

* Fix typo

* Fix typos
2022-09-14 05:53:35 -07:00
Allen Byrne
05a0411140
Remove bitbucket.hdfgroup.org dependency. #2082 (#2086)
*
2022-09-07 17:12:55 -05:00
H. Joe Lee
2d4a96b32c
Change test to example. (#2087)
* Remove the commented line.
2022-09-07 17:12:19 -05:00
H. Joe Lee
ecc687c4ff
Fix grammar and spelling in comment block. (#2089) 2022-09-07 17:11:40 -05:00
Scot Breitenfeld
99f17c7271
Doxygen Fortran (#2062) 2022-09-07 17:11:20 -05:00
Dana Robinson
1804e0e0c4
Updates release schedule for 2023 (#2085)
* Updates release schedule for 2023

* Updates figure to put 1.13 and 1.14 on the same line
2022-09-04 04:42:25 -07:00
Allen Byrne
c8fdd92cd4
Update CMake code to 3.18 minimum version (#2080)
* Update CMake code to 3.18 minimum version

* Updated release note
2022-09-02 17:31:29 -07:00
Dana Robinson
6e8aaab1b4
Minor changes to CMake comments, etc. (#2078) 2022-08-31 11:03:37 -05:00
Dana Robinson
ccdcec273a
Updates onion VFD major error codes (#2076) 2022-08-31 11:01:52 -05:00
Neil Fortner
5de9d63ff4
Address review comments from downstream merge of #2016 (#2073) 2022-08-31 11:01:05 -05:00
jhendersonHDF
5719187a34
Fix Java tests for Developer build modes (#2079) 2022-08-29 09:00:42 -07:00
Dana Robinson
5097ff016f
Tidying of configure check C code (#2077)
* Tidying of configure check C code

* Fixed missing endif removal
2022-08-29 08:59:15 -07:00
Dana Robinson
08aebb6d1a
Adds documentation for config directory (#2065)
* Adds documentation for config directory

* Fix spelling error
2022-08-24 23:05:28 -07:00
Gerd Heber
e1d6157c5d
Added VOL connector feature flag RFC. (#2064) 2022-08-24 10:30:15 -05:00
Dana Robinson
ee55dd777b
Fortran module directory improvements (#2060)
* Removes the module directory from the Automake flags as this
  generated a large number of "missing include directory" warnings
  and is unecessary
* Adds the module path to libhdf5.settings
2022-08-23 12:25:07 -07:00
Scot Breitenfeld
88ed5b69d4
removed h5rget_object_type_f module interface (#2057) 2022-08-23 09:09:08 -07:00
Dana Robinson
f020d129b2
Corrects more Fortran warnings (#2059)
* Moves -Wunused-dummy-arguments to the developer warnings since this
  generates a lot of spurious, unfixable noise due to things like
  callback wrappers
* Changes the return cast in h5fget_fileno_c, fixes a comment, and comment
  on potential badness
* Initializes a variable in tH5L_F03.F90 to quiet a 'maybe
  uninitialized' warning
2022-08-23 08:48:14 -07:00
Neil Fortner
21ec337855
Fix inappropriate use of HGOTO_ERROR (#2055) 2022-08-22 11:39:49 -05:00