summaryrefslogtreecommitdiffstats
path: root/src/H5VLint.c
Commit message (Collapse)AuthorAgeFilesLines
* Spelling fixes for codespell (#2038)Dana Robinson2022-08-181-1/+1
| | | | | | | * Spelling fixes for codespell * Committing clang-format changes Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* clang 13 format #1933 (#1939)Allen Byrne2022-07-271-21/+21
|
* Commit codespell spelling corrections.Larry Knox2022-04-071-2/+2
|
* Hdf5 1 12 merges (#1528)jhendersonHDF2022-03-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Use internal version of H5Eprint2 to avoid possible stack overflow (#661) * Add support for parallel filters to h5repack (#832) * Allow parallel filters feature for comm size of 1 (#840) * Avoid popping API context when one wasn't pushed (#848) * Fix several warnings (#720) * Don't allow H5Pset(get)_all_coll_metadata_ops for DXPLs (#1201) * Fix free list tracking and cleanup cast alignment warnings (#1288) * Fix free list tracking and cleanup cast alignment warnings * Add free list tracking code to H5FL 'arr' routines * Fix usage of several HDfprintf format specifiers after HDfprintf removal (#1324) * Use appropriate printf format specifiers for haddr_t and hsize_t types directly (#1340) * Fix H5ACmpio dirty bytes creation debugging (#1357) * Fix documentation for H5D_space_status_t enum values (#1372) * Parallel rank0 deadlock fixes (#1183) * Fix several places where rank 0 can skip past collective MPI operations on failure * Committing clang-format changes Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com> * Fix a few issues noted by LGTM (#1421) * Fix cache sanity checking code by moving functions to wider scope (#1435) * Fix metadata cache bug when resizing a pinned/protected entry (v2) (#1463) * Disable memory alloc sanity checks by default for Autotools debug builds (#1468) * Committing clang-format changes Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* Merge H5Fopen VOL auto-detect feature and latest VOL fixes to 1.12 (#395)jhendersonHDF2021-03-151-0/+21
| | | | | | | * Enable H5Fopen to probe list of available VOL connectors when opening a file * Unwrap file VOL object when destroying file (#308) * Check for wrap context before unwrapping file VOL object in H5F__dest (#325)
* Update URL in source file Copyright headers for web copy of COPYINGLarry Knox2021-02-201-1/+1
| | | | file - src and test directories.
* 1 12 Whitespace changes after clang-format run (#288)Allen Byrne2021-01-291-6/+6
| | | | | | | | | | | | | | | | | | | | | * OESS-98 fix tools test for plugins * sync fork * Merge of changes from dev * Move problem option to bottom of the list until fixed * HDFFV-11106 - fix parsing optional args * HDFFV-11106 add note * grammer fix * Whitespace after clang formatting * Undo format version 11 changes * Update check to working version
* Merge PR #274 to 1.12 Branch (#283)Neil Fortner2021-01-271-4/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Improve performance of multiple calls to H5Sget_select_elem_pointlist (#270) * Cache the pointer to the next point to process after the last call to H5S__get_select_elem_pointlist. This allows the normal process of iterating over the points in batches to be much more efficient, as the library does not need to traverse the entirety of the preceding points every time the funciton is re-entered. * Update RELEASE.txt for point selection iteration performance fix. * Fix problems with vlens and refs inside compound using H5VLget_file_type() (#274) * Fixed problems with vlens and refs inside compound using H5VLget_file_type() * Fix date in RELEASE.txt * Add assertions * Move some manipulation of H5VL_object_t struct fields into the H5VL package. * Add fix that was mistakenly left off merge commit. * Update src/H5Tprivate.h Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
* Merge VOL framework versioning to 1.12 (#154)Quincey Koziol2020-12-101-10/+62
| | | | | * Enforce VOL framework version compatibility when registering connectors. Also add a version for the connector itself, some refactoring on the register calls, and move the logic for matching / rejecting a VOL connector class from the plugin module to the VOL module. (#151) * Revise VOL framework version compatibility for the 1.12 release branch
* Basic alignment with async branch (#115) (#137)Quincey Koziol2020-11-301-2/+1
| | | | | | | * Basic alignment with async branch - trivial changes to reduce clutter in overall diff. * Update minor error code to reflect change within library * Update the error output to match library
* Merge changes from developAllen Byrne2020-10-081-10/+12
| | | | | Comments and whitespace Skip file-locking and cache changes
* Source formattedAllen Byrne2020-10-011-438/+390
|
* Sync with developDana Robinson2020-08-011-6/+6
|
* Fix some places where H5P_DEFAULT gets passed down to a VOL connectorJordan Henderson2020-02-011-1/+1
|
* Introduce new H5VL _by_value routinesJordan Henderson2020-01-291-9/+115
|
* Squashed commit of the token_refactoring branch:Dana Robinson2020-01-191-3/+38
|
* Refactor all the 'H5VL_*_optional' callbacks to move the type of operation outQuincey Koziol2020-01-041-21/+133
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Modify H5VL initialization routines to initialize all VOL-managed objectNeil Fortner2019-12-131-0/+19
| | | | | types. Modify H5VLwrap_register() to reject non-VOL-managed object types. Also fix overisights in h5trace.c from previous changes.
* Fix bugs in H5VL file comparison code. Add short circuit success toNeil Fortner2019-12-061-0/+6
| | | | H5VL_cmp_connector_cls().
* Merged HDFFV-10929_2GB_testing to hdf5_1_12Richard Warren2019-12-061-9/+92
|
* Add 'blob' callbacks to VOL, along with a native implementation to store themQuincey Koziol2019-10-081-4/+25
| | | | | | | 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.
* Added the map (H5M) APIDana Robinson2019-08-131-1/+3
|
* Add support for GCC 7.x warnings, update warnhist script to account for them,Quincey Koziol2019-06-211-0/+1
| | | | clean up warnings.
* Add an 'unwrap' VOL callback, so that connectors can unwrap an underlyingQuincey Koziol2019-04-211-1/+27
| | | | object without closing it. (Especially needed for pass-through connectors)
* Merge remote-tracking branch 'origin/develop' into env_vol_loadQuincey Koziol2019-04-031-1/+1
|\
| * Added an H5MM_memcpy call that checks for buffer overlap.Dana Robinson2019-03-161-1/+1
| |
* | Merge remote-tracking branch 'origin/develop' into env_vol_loadQuincey Koziol2019-03-121-23/+345
|\ \ | |/
| * Add API routines to retrieve, restore, reset, and free library state.Quincey Koziol2019-03-111-23/+345
| | | | | | | | | | | | (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)
* | Specify the default VOL connector to use with an environment variable.Quincey Koziol2019-03-101-45/+584
|/ | | | | | | | 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.
* Revise "management" VOL callbacks into 'info' and object 'wrap / retrieval'Quincey Koziol2019-02-231-9/+9
| | | | classes.
* Add ID type (of eventual hid_t) to the VOL "wrap" callback.Quincey Koziol2019-02-071-5/+5
|
* Corrected comment in src/H5VLint.c, fixed pass-through info size inQuincey Koziol2019-01-061-3/+5
| | | | | | | 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).
* Added more sub-tests to the VOL plugin test.Dana Robinson2018-12-281-1/+1
|
* Moved the optional enums to H5VLnative.h and converted to an intDana Robinson2018-12-181-1/+1
| | | | typedef and a set of #defines.
* Merge pull request #1364 in HDFFV/hdf5 from ↵Dana Robinson2018-12-171-1/+0
|\ | | | | | | | | | | | | ~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.
| * Removed H5I_REFERENCE from the library. It has always been unusedDana Robinson2018-12-081-1/+0
| | | | | | | | and has been marked 'deprecated' since 1.10.0. Fixes HDFFV-10252.
* | Make sure to free copy of VOL connector's name when H5VL_register_connector ↵Jordan Henderson2018-12-141-3/+6
|/ | | | fails
* Added 'notify' callback for async requests; switched VOL class and infoQuincey Koziol2018-11-281-23/+41
| | | | | | 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 VOL connector info to the flie access property list returned fromQuincey Koziol2018-11-181-5/+98
| | | | H5Fget_access_plist(). Also, other misc. cleanups, etc.
* Switch driver | plugin => connector.Quincey Koziol2018-11-041-88/+88
|
* Add ref counter to VOL object wrapping in API contexts, so that re-entrant /Quincey Koziol2018-10-291-22/+53
| | | | recursive routines work correctly. Another minor cleanup in the attribute code.
* Duplicate name of VOL plugin class, to avoid continuing to refer to the caller'sQuincey Koziol2018-10-271-6/+9
| | | | string when making a copy of the class for internal use.
* Checkpoint progress on stacking VOL plugins - all standalone regression testsQuincey Koziol2018-10-261-57/+126
| | | | in the 'test' directory appear to be working.
* Updates after merging changes from develop.Quincey Koziol2018-10-261-9/+9
|
* Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into ↵Quincey Koziol2018-10-251-81/+135
|\ | | | | | | stackable_vol
| * Updates to the VOL ID and object API calls.Dana Robinson2018-10-171-64/+140
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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()
* | Squashed commit of private branch changes to support stackable VOL plugins.Quincey Koziol2018-10-251-1632/+286
|/ | | | modified: test/dsets.c
* VOL FEATUREDana Robinson2018-10-101-0/+2192