summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* OESS-168: Remove clang warnings. (#1297)H. Joe Lee2021-12-151-1/+1
|
* Call FUNC_ENTER immediately in H5_init_library (#1287)jhendersonHDF2021-12-131-2/+2
|
* Fix free list tracking and cleanup cast alignment warnings (#1288)jhendersonHDF2021-12-131-27/+120
| | | | | * Fix free list tracking and cleanup cast alignment warnings * Add free list tracking code to H5FL 'arr' routines
* Fixes for async operations (#1272)jhendersonHDF2021-12-112-6/+68
| | | | | Setup VOL wrapping context for each "request" callback Set H5ES_event_t "next" pointer to NULL when appending to event list
* Remove duplicate memcpy in chunk_file_cb (#1285)jhendersonHDF2021-12-111-1/+0
|
* Initialize filter mask and chunk nbytes for 'Single' chunk index (#1261)jhendersonHDF2021-12-091-1/+7
|
* Correct spelling correction of preceed incorrectly to proceed. Should (#1268)Larry Knox2021-12-071-2/+2
| | | * Correct spelling correction of 'preceed' incorrectly to 'proceed'. It should be 'precede'.
* Fixed Spelling Errors (#1166)Scot Breitenfeld2021-12-07140-344/+346
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fixed missed closing of a dataset * fixed missed closing of a dataset * fixed typo in error return * Committing clang-format changes * minor edits * code format * Committing clang-format changes * code format * minor edit * switched from using MPI_count, to actual bytes written for H5FD_mpio_debug rw debugging * Committing clang-format changes * changed size_i in printf to reflect the I/O. * Committing clang-format changes * Fixed seg fault with xlf on BE with -qintsize=8 * fixed error function string * spelling corrections via codespell, added new spell check github actions * Committing clang-format changes * misc * misc * misc * misc * misc * misc * misc * misc * misc * misc * misc * misc * misc * misc * Committing clang-format changes * misc * misc * misc * misc * misc * misc * Committing clang-format changes * misc * work around for https://github.com/codespell-project/codespell/issues/2137 * misc * added missing file * misc * misc. * misc * switch to using Codespell with GitHub Actions * misc. * misc. * fixed more sp errors * Fix new typos found by codespell. * fixed proceed with precede * fixed variable in fortran test * fixed minnum * updated spelling list Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
* Update version to 1.13.1-1 after creation of branch for 1.13.0 release. (#1236)Larry Knox2021-11-301-3/+3
|
* Only check HDF5_DRIVER in MPI I/O VFD if VFD isn't initialized (#1213)jhendersonHDF2021-11-253-15/+14
|
* Fix a few H5CX warnings from recent init changes (#1224)jhendersonHDF2021-11-241-8/+4
|
* Fix a few warnings after recent H5S const-related changes (#1225)jhendersonHDF2021-11-242-16/+16
|
* Fixes an assert in H5Pget_filter_by_id1/2 w/ out-of-range IDs (#1222)Dana Robinson2021-11-241-0/+4
| | | | | | | | | | | | * Fixes an assert in H5Pget_filter_by_id1/2 w/ out-of-range IDs Filter IDs < 0 or > H5Z_FILTER_MAX could trip an assert in the library due to missing ID range checks in H5Pget_filter_by_id1/2. The library now returns a normal error code when filter IDs are out of range. Fixes HDFFV-11286. * Committing clang-format changes Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Closes #1221 (#1223)Gerd Heber2021-11-241-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Sketch of the H5S life cycle. * Committing clang-format changes * Fix H5S_UNLIMITED snafu. * Updated RM template and RM page. * Added H5S life cycle. * Committing clang-format changes * Added H5T life cycle. * Committing clang-format changes * Cleaner layout (?) * Cleaned the H5F life cycle. Called out unfinished biz. * Committing clang-format changes * Remaining life cycle skeletons. * Committing clang-format changes * Committing clang-format changes * Added H5Z life cycle. * Committing clang-format changes * Added H5G life cycle. * Committing clang-format changes * H5 and H5I life cycle updates. * Committing clang-format changes * Added H5PL life cycle. * Committing clang-format changes * Added H5L life cycle. * Committing clang-format changes * Fix for Chris' comment. * Add a variable for Doxygen pre-processor definitions. * Forgot to add the H5M API. * Clarify the H5Z life cycle. * Committing clang-format changes * Add H5Zdevelop.h to Doxygen.in. Added H5I life cycle. * Committing clang-format changes * Clarified introduction and fixed missing label declaration. * Added H5O life cycle. * Committing clang-format changes * H5O cleanup, part 1. * Committing clang-format changes * Cleaned up some of the endless repetition in H5O. * Committing clang-format changes * Cookbook & RFC draft layouts. * Updated manifest. * Updated the manifest, the example paths, and sketched the 1st recipe. * Committing clang-format changes * Outlined two more recipes. * Committing clang-format changes * More recipes and RFCs. * Committing clang-format changes * Draft of templatized RFC references. * Another batch of RFC changes. * Another batch of RFCs. * Fixed reference. * RFCs in reverse chronological order. * First cut of RFCs. * Fixed reference. * Updated recipes. * Updated recipes. * More RFCs. * Updated D*PL comments. * Added H5P descriptions. * Committing clang-format changes * H5R life-cycle snapshot. * Committing clang-format changes * H5R life-cycle. Added line numbers to life-cycle examples. * Committing clang-format changes * Fixed formatting for H5Dchunk_iter(). * Added comment on collective mode requirement w/ compression. * Simplified API compat. macro dox. * More API vers. updates. * Hide the async macro entrails. * Latest VFD SWMR RFC. * Create a tag file for permalinks. * Added TODOs for metadoc. * Removed duplication. * Revised RM landing page. * Trimmed more duplication. * Committing clang-format changes * Revised H5D. * Committing clang-format changes * Updated survey link. * Added Doxygen RM entry template link. * Added the "Multi-Thread HDF5" RFC. * Added DOXYGEN_TAG_FILE. * Added selection I/O RFC. * Added the VFD Sub-filing RFC. * Updated meta-documentation and added two old presentations. * Added a few more RFCs (4). * Fixed MANIFEST. * Updated meta-documentation. * Added Filters technical note. * Fixed MANIFEST. * Restore the path stripper. * Experimental full-text search via Google. * Better full-text search integration. * Whoops. Forgot this one. * Oh boy. * Make CMake happy. * Added "Debugging HDF5 Applications" technical note. * Another batch of RFCs. * Fixes for #1221. Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Make sure plugin interface is initialized before property list interface ↵jhendersonHDF2021-11-232-1/+2
| | | | phase 2 (#1216)
* Stop lying about H5S_t const-ness (#1209)Dana Robinson2021-11-2018-239/+289
| | | | | | Hyperslabs can be reworked inside several H5S callbacks, making H5S_t non-const in some places where it is marked const. This change switches these incorrectly const H5S_t pointer parameters and variables to non-const where appropriate.
* Fixes const warnings in H5ES package (#1211)Dana Robinson2021-11-181-5/+5
|
* Don't allow H5Pset(get)_all_coll_metadata_ops for DXPLs (#1201)jhendersonHDF2021-11-181-4/+2
|
* Quiets most const warnings in the fractal heap code (#1188)Dana Robinson2021-11-133-9/+32
|
* Fix MPI Comm and Info leak in H5FD__mpio_delete (#1189)jhendersonHDF2021-11-121-0/+6
|
* Cleans up pointer and ID reset code in H5Pint.c (#1182)Dana Robinson2021-11-101-74/+112
|
* Quiets const warning in H5RS code (#1181)Dana Robinson2021-11-101-2/+10
|
* Fix H5DS warnings related to new H5DSwith_new_ref and H5VLobject_is_native ↵jhendersonHDF2021-11-102-11/+15
| | | | APIs (#1184)
* Fixes FUNC_ENTER warnings in VFDs due to recent init changes (#1178)Dana Robinson2021-11-106-15/+9
|
* Fixes const issues in the version 2 B-trees (#1172)Dana Robinson2021-11-092-24/+21
| | | | The operations that were changed are fundamentally not const since the shadow operation can modify the node structure when SWMR is in use.
* Re-enable collective metadata reads after disabling for chunk lookup (#1173)jhendersonHDF2021-11-091-7/+21
|
* Simplify function enter macros for performance benefits (#1024)David Young2021-11-0879-1988/+1056
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Take a stab at using constructors to initialize instead of function-entry macros. This is a work in progress. It's good enough to run `many_dsets`. * Committing clang-format changes * Add the `many_dsets` benchmark and some scripts I used on jelly for setting up the build/test environment and for recording/flame-graphing profiles. * Committing clang-format changes * Change my Makefile and environment script to work both on jelly and on mayll (and probably on Summit). * Disable clang-format "fix." * Replace the `if (!H5_TERM_GLOBAL)` test in each FUNC_ENTER_ macro with `if (true)`. * Fix bad grammar in a comment. * Instead of labeling the H5*__init_package routines constructors, fold each into an initialization routine, H5*_init(), and call each of the H5*_init() routines. Call most of the H5*_init() routines from H5_init_library() in an explicit order that I found out earlier by instrumenting each __init_package routine and running the library tests. Roll H5FD*__init_package routines into H5FD*_init() routines. This change ends just-in-time initialization of package dependencies by package initializers. Don't track in per-package variables (H5_PKG_INIT_VAR) whether each package has been initialized. Instead, track in a single library variable whether the whole library is initialized or not. Drive the initialization of packages by H5_init_library() with a table of initializer routines. Also drive the termination of packages by H5_term_library() with a table. Perform initialization as needed from FUNC_ENTER_API_INIT(err). This basically restores the old behavior of that macro. Delete a bunch of #definitions in H5private.h that have fallen out of use with these changes. * Committing clang-format changes * Undo the bad auto-formatting that appears to have occurred in spite of my disabling it. Bracket some code in /* clang-format off */ /* clang-format on */ to prevent a recurrence. * Remove a diagnostic abort(). * Fix a logic error: print a comma between every package terminator run, and don't print an initial comma. * Complete the changes I started in H5_term_library() that undo the bad auto-formatting. Stop tracking whether package "tops" were initialized in per-package variables H5*_top_package_initialize_s. H5_term_library() takes care of that for them. Remove H5R_top_term_package() and H5R_term_package(), they don't do anything. * Committing clang-format changes * NFCI. Simplify macro text: replace `if (true) {` with `{`. * Fix formatting and suppress clang-format on a longer range. * Quiet some unused label, unused variable complaints that cropped up after I simplified the FUNC_ENTER_ macros for the sake of performance. * Committing clang-format changes * Delete some programs and scripts that don't belong in the pull request. * Use the right function-entry macro. * Use a sensible format and disable auto-formatting. * Stop calling do-nothing initializer H5FS_init(). Delete it. * Document what changes to make if the default VFD changes. * While I am here, change an `await_prior` flag on the terminator table to `true` to match the previous, non-table-driven code that was here. Found the oversight making the following changes: NFCI: insert an empty line and copy over slightly-edited comments from the previous version, where those comments still correctly explained how library termination operated. * NFCI: lower a staircase. * Replace every occurrence of FUNC_ENTER_NOAPI_INIT(...) with H5_PUSH_FUNC since that is all that that macro does any more. Quiet a bunch of new warnings by changing FUNC_ENTER_NOAPI(...) to FUNC_ENTER_NOAPI_NOERR and removing disused `done:` labels. * NFCI: add curly braces around a multiline statement. * Quiet a signed/unsigned comparison warning. * Add some documentation about library initialization and shutdown. * Make sure that the library is initialized, or else that initialization is already underway, before performing any VFD's initialization. * Committing clang-format changes * Committing clang-format changes * Reduce differences from `develop` branch. * Always initialize `tot_init`. * Committing clang-format changes * Fix typo: H5SL_init initializes skip lists, not VOL. * Remove H5_TERM_GLOBAL test in H5T_init. H5T_init was unusual in that it tested H5_TERM_GLOBAL and exited early if it was set. No other module initializers did that, and I cannot find any reason that should be necessary. Tests still pass when I remove it, so away it goes. * Use HD prefix. * Add function header comments. * Drop the intermediate variable, it's only used once. * Extract subroutine `H5FDperform_init(hid_t (*init)(void))` that initializes the library, if necessary, before calling its VFD-initializer argument. Use H5FDperform_init in the definition of the symbols H5FD_<vfd> (e.g., H5FD_SEC2), which may be evaluated before the library is initialized, like so: ``` ``` I implement H5FDperform_init in its own source file, H5FDperform.c, and exclude that file from trace processing because the `bin/trace` cannot deal with the function-pointer type. * Straggler from last: add new source file src/H5FDperform.c. * Committing clang-format changes * Add a missing file to the MANIFEST. * Switch to FUNC_ENTER_API_NOINIT in H5FDperform_init() and hbool_t in H5_term_library(). Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Fix the function cast error in H5Dchunk.c and activate (#1170)David Young2021-11-081-1/+14
| | | `-Werror=cast-function-type`. Again.
* Assume C99 fixed sized ints exist, use them (#470)Sean McBride2021-11-0812-245/+126
| | | | | | | | | | | | | * Committing clang-format changes * Assume C99 fixed sized ints exist, use them * Assume H5_SIZEOF_LONG_DOUBLE != 0, `long double` has existed since C89 Note, this is only assuming that `long double` exists, no assumptions about its size have been touched. Didn't remove any code that does things like test if `long double` and `double` have different sizes. * Committing clang-format changes Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* OESS-168: Remove clang warnings. (#1124)H. Joe Lee2021-11-052-12/+22
| | | | | | | | | | | * OESS-168: Remove clang warnings. * OESS-168: Remove clang warnings. * Committing clang-format changes * OESS-168: Address @derobins review for FALLTHROUGH. Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* New references for Dimension Scale APIs (#1139)jhendersonHDF2021-11-053-25/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Enable usage of new-style references with dimension scale APIs * Add API to check if an object ID represents a native connector object * Modified code to use new function H5DSwith_new_ref to determine if new references should be used with Dimension Scales. The new function return TRUE if non-native connector is used or if H5_DIMENSION_SCALES_WITH_NEW_REF varible is define at configure time (--enable-dimension-scales-with-new-ref). Tested on jelly. ToDo: generate testing file on BE system and enable the test; add flag to CMake; test netCDF-4 with the new references. * Adding new test files generated on BE system (hedgehog) created by 32 and 64-bit library. test_ds chokes on test_ds_le_new_ref.h5 on BE system; test passes for test_ds_be_new_ref-32bit.h5 for the 32-bit library and fails for the 64-bit library, and vice versa. I am checking the files for further investigation; but current implementation of the new references is not portable between LE and BE systems, and 32 and 64-bit systems. * Minor fixes for testing issues * Update test_ds.c Enabled broken test; tests pass now. * Update RELEASE.txt Documented new option to use new references with the HDF5 dimension scales APIs (H5DS*). * Update MANIFEST for new 32-bit new-style references test file for H5DS APIs * Update 'dimension scales w/ new-style refs' feature based on review Co-authored-by: Elena <epourmal@hdfgroup.org>
* OESS-168: Remove clang warnings. (#1105)H. Joe Lee2021-11-041-33/+33
| | | | | | | | | | | | | * OESS-168: Remove clang warnings. * Committing clang-format changes * OESS-168: Address @soumagne review. * Committing clang-format changes * OESS-168: Address @soumagne review. Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* OESS-168: Remove clang warnings. (#1127)H. Joe Lee2021-11-021-6/+6
| | | | | * OESS-168: Remove clang warnings. * OESS-168: Address @lrknox clang-format review.
* Removes the "try free" behavior from the skip lists (#1126)Dana Robinson2021-10-222-470/+200
| | | | | | | | | | | | | | * Removes the "try free" behavior from the skip lists This was only used in the ID code when iterating and a callback could delete IDs. It is not used anywhere else in the library and is now pointless overhead. Also quiets the const warnings when returning stored elements. They only need to be const with respect to the skip list code, which should never modify them. The library can do whatever it wants with the elements it stored. * Formatted source
* OESS-168: Remove clang warnings. (#1117)H. Joe Lee2021-10-211-1/+1
|
* Fix map open to use correct VOL argument structure (#1116)jhendersonHDF2021-10-211-1/+3
| | | Fix map iterate by setting key memory type ID field
* OESS-168: Remove clang warnings. (#1076)H. Joe Lee2021-10-081-9/+9
|
* Fix bug with cross platform compatibility of references within vlens. (#1064)Neil Fortner2021-10-011-2/+2
| | | No testing yet.
* Fix Mirror, HDFS and ROS3 case statements for VFD value in H5trace (#1062)jhendersonHDF2021-09-301-6/+6
|
* Update compact dataset I/O routines to handle driver-level memory copy (#1054)jhendersonHDF2021-09-304-13/+145
| | | | | | | | | | * Update compact dataset I/O routines to handle driver-level memory copy * Combine compact I/O read/write struct into single I/O struct Rename CTL memory copy flag and H5Fquery routine to get file driver structure * Add RELEASE.txt entry for new "ctl" memory copy operation
* VFD plugins (#602)jhendersonHDF2021-09-2943-500/+2589
| | | | | | | | | | | | | | | | | * Implement support for loading of Virtual File Drivers as plugins Fix plugin caching for VOL connector and VFD plugins Fix plugin iteration to skip paths that can't be opened * Enable dynamic loading of VFDs with HDF5_DRIVER environment variable * Temporarily disable error reporting during H5F_open double file open * Default to using HDstat in h5_get_file_size for unknown VFDs * Use macros for some environment variables that HDF5 interprets * Update "null" and "ctl testing" VFDs
* Update version to 1.13.0-7 after snapshot release 1.13.0-6. (#1048)Larry Knox2021-09-291-2/+2
|
* Update Platforms Tested in RELEASE.txt. (#1045)hdf5-1_13_0-rc6Larry Knox2021-09-281-2/+2
| | | | | | * Update Platforms Tested in RELEASE.txt. Remove Tested Configuration Features Summary for updated replacement. * Set version to 1.13.0-6 for rc6 snapshot.
* VFD ctl feature (#981)jhendersonHDF2021-09-2317-146/+526
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Added "ctl" callback to the VFD interface, and the associated H5FDctl() and H5FD_ctl() calls. Modified the MPIO VFD accordingly -- specifically: Added ctl() call with op-code support to expose rank, size, and communicator. Modified H5FD_mpi_get_rank(), H5FD_mpi_get_size(), and H5FD_mpi_get_comm() to use the new ctl() callback. In passing removed the const qualifier from the file parameter of these functions, as the file parameter of the ctl callback is not const. Deleted the old H5FD__mpio_mpi_rank(), H5FD__mpio_mpi_size(), and H5FD__mpio_communicator() calls from the MPIO VFD. Deleted H5FD_class_mpi_t from H5FDprivate.h, and modified the MPIO VFD accordingly. Note that all VFDs now use H5FD_class_t, with no special class for VFDs that that support MPI. Some minor touch ups to the Neil's selection I/O mods in passing. Tested serial and parallel, debug and production on charis and jelly. * Reserve a range of VFD "ctl" opcodes for library and experimental usage * Add "ctl" callbacks to passthrough VFDs * Add RELEASE.txt entry for "ctl" callback * Use H5FDopen with H5F_ACC_RDWR flag instead of H5F_ACC_TRUNC in vfd test * Remove handling of passthrough "ctl" flag from multi VFD * Move logic for testing H5FD_CTL__TEST_OPCODE into a testing VFD Revise description of "ctl" callback in RELEASE.txt Remove unused H5FD_CTL__NUM_OPCODES definition Fix some warnings in multi VFD Co-authored-by: mainzer <mainzer#hdfgroup.org>
* Modified gcc/clang warning suppression macros to account for some warnings ↵Sean McBride2021-09-1610-106/+134
| | | | | | | | | | | | | | | | | flags being supported by one compiler but not the other (#379) * Committing clang-format changes * Fixed GCC warning suppression pragmas to also work with clang H5_GCC_DIAG_ON remains gcc-only. Added a new H5_CLANG_DIAG_ON that's clang-only, but it's not used anywhere currently. Added a new H5_GCC_CLANG_DIAG_ON that works with both compilers, which afterall support mostly the same warnings. Changed almost all uses of H5_GCC_DIAG_ON to use H5_GCC_CLANG_DIAG_ON, with the exception of a couple, where they really were suppressing gcc-only warnings. * Committing clang-format changes Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Fix several warnings (#720)jhendersonHDF2021-09-1413-33/+47
|
* H5Ztrans: (feature) Improved H5Z_xform_noop() and H5Z_xform_create() … (#933)Jan-Willem Blokland2021-09-131-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * H5Ztrans: (feature) Improved H5Z_xform_noop() and H5Z_xform_create() function - Made a small improvement for H5Z_xform_noop() function. Now, the function will also return TRUE if the data transform function expression = "x". For this case, the HDF5 library behaves in a similar fashion as the case when no data transform function has been specified. - Improved the inline documentation of the function H5Z_xform_create() such it is more inline with the rest of the code. * Committing clang-format changes * H5Ztrans: (feature) Added 3 tests for improved H5Z_xform_noop() function - Added serial test with data transform expression = "x" to verify the improved H5Z_xform_noop() function behaves as expected. - Added 2 parallel tests with data transform expression = "x" in combination with a filter. Before, these tests will fail but with the improved H5Z_xform_noop() function they work and result in the expected behavior. - Small bug fix for one of parallel filter tests. * Committing clang-format changes * H5Ztrans: (feature) Added release note about detection of the simple data transform function "x". - Added a brief explanation about the implemented improvement of the detection of the simple data transform function "x" to the RELEASE.txt file. Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Fix various warnings and issues in doxygen doc generation (#994)Allen Byrne2021-09-103-43/+11
| | | | | * Fix various warnings and issues in doxygen doc generation * Add new file to list
* Update copyright headers with reproduction notice in 5 files (#993)Larry Knox2021-09-082-17/+14
| | | | | | | | | * Update copyright headers with reproduction notice in 5 files that did not match terms in COPYING file . * Committing clang-format changes Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Small doxygen fixes plus simple doc fixes (#989)Allen Byrne2021-09-042-10/+8
| | | | Change doxygen generated file location Clang format override for flags