summaryrefslogtreecommitdiffstats
path: root/src/H5Cpkg.h
Commit message (Collapse)AuthorAgeFilesLines
* Brings a lot of smaller changes from developDana Robinson2021-04-091-14/+16
|
* Brings the rest of the header changes from developDana Robinson2021-04-061-3/+7
|
* Updates license url and history docsDana Robinson2021-03-251-1/+1
|
* Formats the source and updates the gcc warning pragmasDana Robinson2021-03-251-2789/+2277
|
* Modified page buffer to split entries only where necessary -- specificallymainzer2020-05-211-0/+165
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when handling an I/O request on a metadata entry that has been sub-allocated from a larger file space allocation (i.e. fixed and extensible array), and that crosses at least one page boundary. . This required modifying the metadata cache to provide the type of the metadata cache entry in the current I/O request. For now, this is done with a function call. Once we are sure this works, it may be appropriate to convert this to a macro, or to add a flags parameter to the H5F block read/write calls. Also updated the metadata cache to report whether a read request is speculative -- again via a function call. This allowed me to remove the last address static variable in the H5PB_read() call, which is necessary to support multiple files opened in VFD SWMR mode. Also re-wrote the H5PB_remove_entries() call to handle release of large metadata file space allocations that have been sub-allocated into multiple metadata entries. Also modified the call to H5PB_remove_entries() in H5MF__xfree_impl() to invoke it whenever the page buffer is enabled and the size of the space to be freed is of page size or larger. Tested serial / debug on charis and Jelly. Found a bug in H5MF_xfree_impl(), in which the call to H5PB_remove_entries() is skipped due to HGOTO_DONE calls earlier in the function. While the obvious action is to move the call earlier in the function, best to consult with Vailin first, as there is much going on and it would be best to avoid making the situation worse. If nothing else, there are some error management issues.
* Trim trailing whitespaceQuincey Koziol2020-05-201-153/+153
|
* Reduce casts of HDcalloc()/HDmalloc() that -Wc++-compat required.David Young2020-05-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reduce gratuitous casts---e.g., (size_t)1. Use the right format string for a pointer. In the H5C sanity checks, change a "size increase" variable from ssize_t (too narrow) to int64_t (wide enough). Parenthesize every appearance of `storage` in the macro `H5D_CHUNK_STORAGE_INDEX_CHK(storage)` so that you can pass in an expression like &sc and it works properly. Disallow re-assignment of the `dset` parameter to H5D__chunk_init() because it helped assure me that it's safe to replace the repeating expression `&dset->shared->layout.storage.u.chunk` with `sc` throughout. Replace lengthy expressions such as `&dset->shared->layout.storage.u.chunk` with `sc` throughout several functions in H5Dchunk.c ISTR that the compiler warned that `sc` was declared but unused in a couple of functions, and then I found that `sc` could be used in many places. Maybe the disused `sc` appeared because a bunch of code was copied and pasted, I don't know. Anyway, it's a lot tighter code now that I use `sc`. In H5D__chunk_update_old_edge_chunks() and H5D__chunk_delete() I actually expand `sc` and another temporary variable, `pline`, because they're used only in !defined(NDEBUG) code. This squashes unused-variable warnings in the defined(NDEBUG) configuration. Don't drop the `volatile` qualification with a cast in tools/src/h5import/h5import.c.
* Squashed commit of the token_refactoring branch:Dana Robinson2020-05-201-1/+1
|
* Revert "Make a squash commit of 'Quiet some warnings by adjusting warnings ↵David Young2020-05-201-1/+1
| | | | level and fixing some code.' (commit 5c911d8baf3)"
* Change some GCC warnings to errors. Fix code to quiet some warnings.David Young2020-05-201-1/+1
|
* Merge all of my changes from merge-back-to-feature-vfd_swmr-attempt-1,David Young2019-12-091-38/+12
| | | | | | | | including the merge of `hdffv/hdf5/develop`, back to the branch that Vailin and I share. Now I need to put this branch on a fork with a less confusing name than vchoi_fork!
* Intermin commit to allow update from Vailin's recent changesmainzer2019-01-151-6/+10
|
* Interim checkin to allow Vailin to address assertion failure inmainzer2019-01-031-57/+154
| | | | | | | | | | | | | | | | the memory manager -- details shown below. Note that there are other issues as well -- this is not a working version. [mainzer@jelly test]$ ./vfd_swmr Testing Configure VFD SWMR with fapl PASSED Testing VFD SWMR configuration for the file and fapl PASSED Testing H5Fvfd_swmr_end_tick() for VFD SWMR PASSED Testing Create/Open/Flush an HDF5 file for VFD SWMR PASSED Testing Verify the metadata file for VFD SWMR writer vfd_swmr: H5MVsection.c:233: H5MV__sect_can_merge: Assertion `((sect1->sect_info.addr)!=((haddr_t)(long)(-1)) && (sect2->sect_info.addr)!=((haddr_t)(long)(-1)) && (sect1->sect_info.addr)<(sect2->sect_info.addr))' failed. Abort (core dumped) [mainzer@jelly test]$
* Fixed HDFFV-10404Binh-Minh Ribler2018-07-131-9/+9
| | | | | | | | | 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
* Add API context interface and use it throughout the library.Quincey Koziol2018-03-151-16/+14
|
* Better segregate clean & dirty LRU lists so that they are only defined whenQuincey Koziol2017-09-301-0/+2
| | | | the H5C_MAINTAIN_CLEAN_AND_DIRTY_LRU_LISTS macro is defined.
* 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.
* Omnibus checkin for several relatively minor modifications:mainzer2017-03-281-0/+21
| | | | | | | | | | | | | | | | | | | | 1) Added code test/page_buffer.c to verify that page buffering is disabled in parallel builds. 2) Added code to test/cache_image.c to verify correct interaction between evict on close and cache image -- in particular management of a file containing a cache image containing dirty metadata that has been opened R/O. Also fix for the bug exposed. 3) Added code to testpar/t_cache_image.c to verify expected procedure for reading cache images, and also supporting stats collection code needed for the test. 4) Repair of an overactive sanity check in H5C__reconstruct_cache_contents(). 5) Other minor tidies in passing. Tested serial and parallel, debug and production on Jelly.
* Final merge of page buffering branch to developQuincey Koziol2017-03-141-1/+2
|
* Merge in reentrency changes to "make space in cache" from page_buffering branch.Quincey Koziol2017-03-131-0/+18
|
* Minor cleanups and bring over "prefetched dirty" fixes for entries loaded fromQuincey Koziol2017-03-121-0/+12
| | | | a cache image.
* Misc. small cleanups to sync against incoming page buffering changes.Quincey Koziol2017-03-021-3/+4
|
* Normalize against incoming page buffering changes.Quincey Koziol2017-03-011-13/+13
|
* Corrected version of 4b5e05c084f93c35dae946c2c9e814d565a613b0:Quincey Koziol2017-02-281-77/+59
| | | | | Fix some more signed -> unsigned value issues with cache data structures, also misc. style cleanups. All to align w/incoming page_buffering changes.
* Revert "Fix some more signed -> unsigned value issues with cache data ↵Quincey Koziol2017-02-281-18/+32
| | | | | | structures, also" This reverts commit 4b5e05c084f93c35dae946c2c9e814d565a613b0.
* Align w/incoming page buffering changes.Quincey Koziol2017-02-251-3/+3
|
* Fix some more signed -> unsigned value issues with cache data structures, alsoQuincey Koziol2017-02-231-32/+18
| | | | misc. style cleanups. All to align w/incoming page_buffering changes.
* Simplify H5C__serialize_single_entry(), using H5C__generate_image()Quincey Koziol2017-02-021-0/+2
|
* Cache image feature and testingQuincey Koziol2017-01-291-6/+340
|
* Bring change to use array of metadata cache entry classes for H5C_createQuincey Koziol2017-01-281-25/+3
| | | | instead of array of class names from cache image branch.
* Switch list lengths to unsigned integers (to align better w/cache image merge)Quincey Koziol2017-01-281-21/+16
|
* Bring changes to metadata cache "get entry status" call and newQuincey Koziol2017-01-061-0/+2
| | | | | "child serialized / unserialized" messages and support from the cache image branch.
* Bring file shutdown code from cache image branchQuincey Koziol2017-01-051-0/+45
|
* Remove 'const' from cache client pre_serialize callback, to reduce warnings,Quincey Koziol2017-01-031-1/+1
| | | | | and correspondingly remove 'const' from some internal routines. Also rename some H5MF* routines to reflect their static/package usage.
* Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into ↵Quincey Koziol2017-01-021-1/+1
|\ | | | | | | develop_merge_cache_image_04
| * Fixed a macro in H5Cpkg.h that was only updated in the version thatDana Robinson2017-01-021-1/+1
| | | | | | | | is used in develop/debug mode.
* | Align with incoming cache_image branch changes: use the index list (instead ofQuincey Koziol2017-01-021-1/+16
|/ | | | | the hash buckets) for scanning the entries during a flush, and also add in counters for tracking operations during cache flushes.
* Bring support for doubly-linked list of all entries in cache from incomingQuincey Koziol2016-12-301-116/+324
| | | | cache image branch.
* More normalizations against incoming cache image branch.Quincey Koziol2016-12-291-6/+3
|
* Bring SWMR support in to the main development branch. (Finally!) More testsQuincey Koziol2016-12-021-6/+2
| | | | and the tool and API wrappers will be coming in over the weekend.
* Remove "collective write list" parameter from H5C__flush_single_entry() as itQuincey Koziol2016-11-281-6/+10
| | | | | is only used in a couple of places. The collective write list has been moved to be internal to the cache data structure instead.
* Eliminate unnecessary data structure for parallel collective metadata cache I/OQuincey Koziol2016-11-281-9/+0
|
* Align w/minor cleanups in revise_chunks branch.Quincey Koziol2016-11-121-24/+51
|
* Clean up cache code to eliminate dead-ends and unify code.Quincey Koziol2016-11-101-14/+54
|
* Switch to new, more scalable, metadata cache entry tagging.Quincey Koziol2016-11-071-4/+12
|
* Code style and warning cleanups, from revise_chunks branch.Quincey Koziol2016-11-061-44/+12
|
* Add logging prototypes and cache struct fields.Quincey Koziol2016-11-041-0/+26
|
* [svn-r30112] Description:Quincey Koziol2016-06-281-21/+3
| | | | | | | | | | Move updated flush dependency code in metadata cache from revise_chunks branch to trunk. Also many of the cleanups from r30111 in the revise_chunks branch. Tested on: MacOSX/64 10.11.5 (amazon) w/serial, parallel & production (h5committest forthcoming)
* [svn-r30068] Description:Quincey Koziol2016-06-131-0/+17
| | | | | | | | Bring metadata cache corking to trunk. Tested on: MacOSX/64 10.11.5 (amazon) w/serial, parallel & production (h5committest forthcoming)
* [svn-r30035] Description:Quincey Koziol2016-06-061-0/+9
| | | | | | | | Extract tagging routines into separate source module. Tested on: MacOSX/64 10.11.5 (amazon) w/serial & parallel (h5committest forthcoming)