diff options
author | Vailin Choi <vchoi@jam.ad.hdfgroup.org> | 2018-11-14 21:35:35 (GMT) |
---|---|---|
committer | Vailin Choi <vchoi@jam.ad.hdfgroup.org> | 2018-11-14 21:35:35 (GMT) |
commit | ce2748f0114cb1eae00799f8349a5451152c7fa3 (patch) | |
tree | fd3e39e6de7b37651a2c7047bd3ad128b5c4e204 /src/H5MFsection.c | |
parent | e62f4bd4fab00b0cd03e269a858c21558a9321fa (diff) | |
download | hdf5-ce2748f0114cb1eae00799f8349a5451152c7fa3.zip hdf5-ce2748f0114cb1eae00799f8349a5451152c7fa3.tar.gz hdf5-ce2748f0114cb1eae00799f8349a5451152c7fa3.tar.bz2 |
(A) Fixes for the assertion failures described in issue #2 (see John Mainzer's last checkin message):
--src/H5PB.c: checks for size >= page size
--src/H5MF.c: disable/enable page buffering in H5MF_tidy_self_referential_fsm_hack()
--src/H5MFsection.c: call H5PB_remove_entry() for both raw/metadata pages in H5MF__sect_small_merge()
(B) Port and modify existing concurrent swmr tests to VFD SWMR. Also modify the following:
--remove flushes from VFD SWMR writer tests
--set Nreaders to 0 in test/testvfdswmr.sh.in to test for writers only
Please enter the commit message for your changes. Lines starting
Diffstat (limited to 'src/H5MFsection.c')
-rw-r--r-- | src/H5MFsection.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/H5MFsection.c b/src/H5MFsection.c index 1d217a1..3b0a1c2 100644 --- a/src/H5MFsection.c +++ b/src/H5MFsection.c @@ -771,11 +771,11 @@ H5MF__sect_small_merge(H5FS_section_info_t **_sect1, H5FS_section_info_t *_sect2 if(H5MF_xfree(udata->f, udata->alloc_type, (*sect1)->sect_info.addr, (*sect1)->sect_info.size) < 0) HGOTO_ERROR(H5E_RESOURCE, H5E_CANTFREE, FAIL, "can't free merged section") - /* Need to free possible metadata page in the PB cache */ - /* This is in response to the data corruption bug from fheap.c with page buffering + page strategy */ - /* Note: Large metadata page bypasses the PB cache */ - /* Note: Update of raw data page (large or small sized) is handled by the PB cache */ - if(udata->f->shared->pb_ptr != NULL && udata->alloc_type != H5FD_MEM_DRAW) + /* Need to free possible raw/metadata page in the page buffer. + * This is in response to the data corruption bug from test/fheap.c + * when page buffering + page aggregation strategy are used. + * Note: Large raw/metadata page bypasses the page buffer */ + if(udata->f->shared->pb_ptr != NULL) if(H5PB_remove_entry(udata->f, (*sect1)->sect_info.addr) < 0) HGOTO_ERROR(H5E_RESOURCE, H5E_CANTFREE, FAIL, "can't free merged section") |