summaryrefslogtreecommitdiffstats
path: root/src/H5PBpkg.h
Commit message (Collapse)AuthorAgeFilesLines
* Brings the rest of the header changes from developDana Robinson2021-04-061-3/+3
|
* Updates license url and history docsDana Robinson2021-03-251-1/+1
|
* Formats the source and updates the gcc warning pragmasDana Robinson2021-03-251-1380/+1138
|
* Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mineDavid Young2020-05-261-5/+5
|\
| * Reduce differences with may-merge-mainzer-to-mine.David Young2020-05-261-5/+5
| |
* | Modified page buffer to split entries only where necessary -- specificallymainzer2020-05-211-5/+21
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Delete a macro that's not used.David Young2019-12-131-26/+0
|
* Tidied up comments and removed some stats code that is un-reachable.mainzer2019-07-061-9/+3
|
* Interim checkin to allow Vailin to address assertion failure inmainzer2019-01-031-5/+5
| | | | | | | | | | | | | | | | 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]$
* interim checkin of VFD SWMR writer EOT code.mainzer2018-12-071-12/+114
| | | | | Added code supporting first cut at the writer end of tick operations. Tested (to the extent possible) on charis and jelly.
* local commit of first cut at vfd swmr writer EOT code.mainzer2018-11-191-228/+577
| | | | | | This is necessary to allow access to Vailin's recent changes This version passes non-swmr tests in a serial / debug build on charis.
* Initial checkin of page buffer re-implementation to support VFD SWMR.mainzer2018-11-041-16/+1482
| | | | | | | | | | | | | | | | | | | | | | Tested serial / debug on Charis and Jelly. Two known issues: 1) New page buffer seems to expose issues in the accumulator code. For whatever reason, fheap with the new page buffer exposes corruption issues if the page buffer uses H5F__accum_read/write(), but the problems go away if the page buffers uses H5FD_read/write() instead. Need to either chase this or dis-able page bufffer in combination with the accumulator. 2) Encountered a number of assertion failures that are explainable by the free space manager code not telling the page buffer to discard pages when they are freed. Wrote code to handle this -- once the free space manager is modified, this code should be removed and the original assertions restored.
* 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.
* Final merge of page buffering branch to developQuincey Koziol2017-03-141-0/+60