summaryrefslogtreecommitdiffstats
path: root/src/H5O.c
Commit message (Collapse)AuthorAgeFilesLines
* Refactor all the 'H5VL_*_optional' callbacks to move the type of operation outQuincey Koziol2019-12-201-16/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Fix H5VL_token_t type and fix H5VL_loc_by_token to use H5VL_token_t *Jerome Soumagne2019-12-051-2/+2
|
* Remove H5VL_NATIVE_FILE_GET_FILE_ID and add H5VL_OBJECT_GET_FILEJerome Soumagne2019-11-271-1/+1
| | | | Remove H5F__get_file_id() and use only private routine instead
* Use API context to store/retrieve LCPL when creating intermediate groupsChris Hogan2019-10-291-1/+4
|
* Fix encode and decode of tokens in H5VLnativeJerome Soumagne2019-10-111-8/+36
| | | | | | | | 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
* Adapt Jerome's "file info" H5VL 'get' query to retrieve container token info.Quincey Koziol2019-10-081-2/+2
| | | | Remove "by address" location for VOL operations. (Switching to "by token")
* Converted H5O MD cache cork calls to use the VOL.Dana Robinson2019-09-271-54/+156
|
* Fix issue in H5Lcreate_hard and H5Olink where entire H5VL_loc_params_t ↵Jordan Henderson2019-08-211-1/+1
| | | | structure was passed via varargs
* Added the map (H5M) APIDana Robinson2019-08-131-0/+1
|
* Add support for GCC 7.x warnings, update warnhist script to account for them,Quincey Koziol2019-06-211-0/+1
| | | | clean up warnings.
* Refactor link creation parameters from being passing as properties in theQuincey Koziol2019-04-251-12/+1
| | | | link creation property list to vararg function parameters.
* Moved private native VOL connector functions to H5VLnative_private.h.Dana Robinson2018-12-201-1/+2
|
* Moved the optional enums to H5VLnative.h and converted to an intDana Robinson2018-12-181-0/+1
| | | | typedef and a set of #defines.
* Added missing H5O calls.Dana Robinson2018-12-181-1/+1
|
* Updated enums in VOL va_lists to be passed as ints.Dana Robinson2018-12-181-1/+1
|
* 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.
* | Moved the native VOL connector's optional enums to theDana Robinson2018-12-151-7/+7
|/ | | | | public headers and renamed to include native/NATIVE in the name.
* Switch loc_params to VOL callbacks to pass struct by pointer instead of byQuincey Koziol2018-11-221-16/+16
| | | | value.
* Switch switch remainder of API routines to use VOL callbacks.Quincey Koziol2018-11-101-15/+15
|
* Switch driver | plugin => connector.Quincey Koziol2018-11-041-7/+7
|
* Refactor and standardize object VOL callbacks.Quincey Koziol2018-11-011-143/+16
|
* Refactor and standardize the link VOL callbacks. Also fix error stack forQuincey Koziol2018-11-011-3/+6
| | | | testing.
* Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into ↵Quincey Koziol2018-10-251-20/+20
|\ | | | | | | stackable_vol
| * Updates to the VOL ID and object API calls.Dana Robinson2018-10-171-17/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-26/+135
|/ | | | modified: test/dsets.c
* VOL FEATUREDana Robinson2018-10-101-76/+260
|
* Remainder of vol_normalization changes (dataset, attribute, files, objects).Dana Robinson2018-09-241-116/+128
|
* Removed 'VOL' versions of FUNC_ENTER macros as well as empty functionsDana Robinson2018-09-181-13/+13
| | | | orginally intended to support the full SWMR feature.
* Fixed HDFFV-10404Binh-Minh Ribler2018-07-131-1/+1
| | | | | | | | | Description: Applied the typo fixes from user's report. The previous pull request couldn't be merged because it was too old, and it was too complicated for me to resolve conflicts. Platform tested: Linux/64 (jelly) - very minor
* Fix for HDFFV-10180 Performance issues with H5Oget_info.Vailin Choi2018-04-241-60/+83
|
* Remove redundant 'is_collective' parameter from H5CX_set_loc.Quincey Koziol2018-03-271-3/+3
|
* Cleanup API context function usage.Quincey Koziol2018-03-191-159/+36
|
* Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into ↵Quincey Koziol2018-03-181-1/+0
|\ | | | | | | | | | | merge_func_enter_vol Plus initial steps toward merging API context push into FUNC_ENTER_API* macros
| * (1) Merge branch 'develop' into bugfix/version_boundsVailin Choi2017-11-251-2719/+20
| |\ | | | | | | | | | | | | | | | (2) Add two new options to h5repack for low and high bounds as in H5Pset_libver_bounds. (3) Modify message pre_copy callbacks so that H5Ocopy can handle version bounds check. (4) Add version bounds check for cache image feature.
| * | Initial checkin for library version boundsVailin Choi2017-10-031-15/+67
| | | | | | | | | | | | Code changes to provide versioning support when adding to the enumerated defines for H5F_libver_t.
* | | Add API context interface and use it throughout the library.Quincey Koziol2018-03-151-121/+200
| |/ |/|
* | Moved code from H5O.c to H5Oint.cDana Robinson2017-11-141-2662/+18
| |
* | Added H5Oint.c file.Dana Robinson2017-11-141-4/+2
|/
* Merge pull request #426 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10 to ↵Larry Knox2017-04-251-6/+4
| | | | | | | | | | hdf5_1_10 * commit '54957d37f5aa73912763dbb6e308555e863c43f4': Commit copyright header change for src/H5PLpkg.c which was added after running script to make changes. Add new files in release_docs to MANIFEST. Cimmit changes to Makefile.in(s) and H5PL.c that resulted from running autogen.sh. Merge pull request #407 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10_1 to hdf5_1_10_1 Change copyright headers to replace url referring to file to be removed and replace it with new url for COPYING file.
* Cache image feature and testingQuincey Koziol2017-01-291-3/+4
|
* Bring file shutdown code from cache image branchQuincey Koziol2017-01-051-2/+2
|
* Bring SWMR support in to the main development branch. (Finally!) More testsQuincey Koziol2016-12-021-14/+111
| | | | and the tool and API wrappers will be coming in over the weekend.
* Merge branch 'develop' into eoc_valgrind_bugfixDana Robinson2016-11-261-78/+8
|\
| * Bring over support for retrying metadata cache entry loads, along with all theQuincey Koziol2016-11-201-78/+8
| | | | | | | | supporting metadata cache callback changes, etc.
* | Tentative fix for valgrind issues related to EoC.Dana Robinson2016-11-261-3/+12
|/ | | | | | | | | Adds /*out*/ parameters to H5O_close() and H5F_try_close() so that H5D/G_close() will know when H5O_close() has triggered a file close and thus the file struct is not reliable. Also removes the H5F_CLOSING() macro and related which were formerly used to check if the file was closing.
* Code style and warning cleanups, from revise_chunks branch.Quincey Koziol2016-11-061-6/+10
|
* Cleaned up feature for dissemination to LLNL:Dana Robinson2016-09-191-6/+2
| | | | | | | - Removed support for datatypes. - Commented out support for groups - General change clean-up - Added a list of improvements to BRANCH.txt
* [svn-r30106] Moved datatype close code to new internal function. H5Oclose()Dana Robinson2016-06-251-2/+6
| | | | now supports evict-on-close for datatypes.
* [svn-r30104] Fixes evict-on-close feature by propagating globalDana Robinson2016-06-241-1/+1
| | | | | flush flag up the function call stack and not setting it during H5Dclose().