| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
| |
APIs (#1184)
|
| |
|
|
|
|
| |
The operations that were changed are fundamentally not const since the
shadow operation can modify the node structure when SWMR is in use.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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>
|
|
|
| |
`-Werror=cast-function-type`. Again.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add timing option to h5repack
* Adjust help text
* fix format
* fix typos
* Correct spacing
* Change timing to use H5Timer
* Committing clang-format changes
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
* 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>
|
|
|
|
|
| |
* OESS-168: Remove clang warnings.
* OESS-168: Address @byrnHDF and @derobinson review.
|
|
|
|
|
| |
* OESS-168: Remove clang warnings.
* OESS-168: Address @derobins review.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
* 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.
* OESS-168: Address @lrknox clang-format review.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
|
|
|
|
|
| |
* Split dir create into separate macro
* Correct VFD settings
|
| |
|
|
|
|
|
|
| |
* H5repack tests should fail if a corrupted file causes h5repack to
segfault/core dump.
* Add release note for HDFV-10590, CVE-2018-17432.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
| |
|
|
|
| |
Fix map iterate by setting key memory type ID field
|
|
|
|
|
| |
* Add release note for HDFFV-11150 fix.
* Add note about gif tool CVEs.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Move test utilities to utils/test folder
* Fix makefile assignment
* Add new dir
* add new folder
* Correct copied makefile
* Fix dir typo
* Add missing include dir
* Remove unnecessary lib link
* Correct dependent dirs
* Fix conditional checks
* Disable test if not built
* fix path to executable
* Use fixture for swmr_vfd check
* Add release note
* Correct shell tests and c++ flag warning
* Update autotools c++ warning
* Fix typo
|
|
|
|
|
|
|
|
|
| |
* OESS-168: Remove clang warnings.
* Committing clang-format changes
* OESS-168: Fix CI failure.
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* OESS-168: Remove clang warnings.
* Committing clang-format changes
* Address review by @jehndersonHDF.
* Address review by @jehndersonHDF.
* OESS-168: Fix CI failure.
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
|
| |
|
| |
|
|
|
|
|
| |
* Add missing dataset reference text
* Only print name if not printing data
|
|
|
|
|
|
|
| |
* OESS-168: Remove clang warnings.
* Committing clang-format changes
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
|
|
|
|
|
| |
* OESS-168: Remove clang warnings.
* Address review by @jehndersonHDF.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
flags files (#1033)
* Avoid maintenance headaches: delete the `noerror-` variants of the
compiler flags files, since they essentially duplicate the `error-`
files modulo the replacement of `-Werror=` with `-W` and any changes in
comments. (I verified the duplication with a script.)
For autoconf, reinstate the use of the `demote_errors` shell function to
derive the `noerror-` content from the `error-` content. `demote_errors`
replaces `-Werror=` with `-W` when `WARNINGS_AS_ERRORS` is `no`.
Slightly reorder `configure.ac` so that the setting of
`WARNINGS_AS_ERRORS` takes effect before the `error-` files are sourced.
* Take a stab at updating the CMake files to match the changes I made to
the autoconf files to remove `noerror-` files. I'm not much of a CMake
user so these changes are quite rough.
Looks like the duplication can be reduced with the introduction of a new
macro.
* Delete `noerror-` files from the MANIFEST.
* Reduce duplication in the CMake files: perform the
HDF5_ENABLE_WARNINGS_AS_ERRORS test once in the ADD_H5_FLAGS macro.
* Add a release note.
|
| |
|
|
|
|
|
| |
* Fix ASAN issue in h5dump error path
* Rework error allocation free.
|
| |
|
|
|
| |
No testing yet.
|
|
|
|
|
|
|
| |
* OESS-168: Remove clang warnings.
* Committing clang-format changes
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|