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.
Comment added to address HDFFV-8270. The sample ontput in the
file's comments are not up-to-date with the scripts in the file
that remove output unique to certain systems when running test
scripts. This output doesn't match expected output files for
the tests, causing them to fail. Ther output_filter.sh file
removes such output. Currently we don't have access to these
systems to update the comments.
testflushrefresh.sh.in:
flushrefresh and other SWMR tests have been failing
occasionally but regularly since bringing them to the develop
branch. The logs and debugging point to unexpected deletion of
signal files as the point of failure, and John Mainzer suggests
that two such tests running simultaneously in the same directory
may lead to the operating system deleting the other test's
signal file. Running the flushrefresh test in its own directory
seems to solve the problem.
* commit 'bd85e57904f1f943774bb99ea5e8b0d074db0edb':
tools/test/h5diff/testh5diff.sh.in: Add code to delete copies of test .h5 files copied from tools/testfiles/vds to tools/test/h5diff/testfiles when running "make check" for an in-source build.
Add code to delete copies of test .h5 files copied from
tools/testfiles/vds to tools/test/h5diff/testfiles when running
"make check" for an in-source build.
tools/test/misc/testh5repart.sh.in:
Change the name of the temporary test directory from "testfiles"
which is also used for 2 h5mkgrp test files under source control to
"testrepart" to avoid deleting source controlled files when running
"make check" in the source directory.
Fix test scripts that remove source-controlled files during "make check" when run in-source.
Fix test scripts that don't remove test files because they add files to test directories but don't remove them if the build directories are the same as the source directory.
Fix any test source file or Makefile.am files for tests that leave data files are removed by neither "make check" nor "make distclean".
flush1/2 fix w/ non-SWMR VFDs + code overhaul
* commit 'fcb7e204b568efb785f47153172147b83da5418a':
Updated the flush1/2 test to not be a mess and to handle non-SWMR-enabled VFDs.
Added a missing "vfd check" test file for use in scripts (should have been brought from revise_chunks).
* commit 'e41a15b7f07dc39b7d68f4635965d0b8b440d299':
Added a missing test file needed for the flushrefresh script.
Final fix for evict-on-close issues with new-style groups.
* commit '02879bc4b2ba161dc259bf28a71e7a99b44be0e3':
Updated the H5FS cache code to grab the correct tag and modified the freespace test to use dxpls that have been tagged with the H5AC__FREESPACE_TAG global tag instead of H5AC_ind_read_dxpl_id. The library code now expects the owner of the free space manager to tag it so the owner-less free space managers in the freespace tag had to be tagged with *something* to avoid cache errors.
Changed the name of H5MF_alloc_close() to H5MF__alloc_close() to make the FUNC_ENTER macro happy.
Reverted the freespace test. The TAG macros in H5MF_get_freespace() make the changes unnecessary.
Added missing TAG macros to H5MF_get_freespace().
Updated the freespace test so functions take a common, tagged dxpl so the test will work with the new H5FS tag changes.
Updated the cache_tagging test so it correctly analyzes the new fractal heap free space manager behavior.
Added TAG macros to the H5MF package code so H5AC__FREESPACE_TAG gets set on the dxpl correctly. Also restored the TAG macro to H5FS__cache_hdr_pre_serialize() since otherwise the tag won't be initialized.
First cut at fixing the tagging issue with the free space managers. * Converted the tag macros to regular ones so the parent's tag is used via the dxpl.
the freespace test to use dxpls that have been tagged with
the H5AC__FREESPACE_TAG global tag instead of H5AC_ind_read_dxpl_id.
The library code now expects the owner of the free space manager
to tag it so the owner-less free space managers in the freespace
tag had to be tagged with *something* to avoid cache errors.
the new fractal heap free space manager behavior.
Also converted the debug output of the cache_tagging
test to use the revised H5AC_dump_cache() function.
* Converted the tag macros to regular ones so the parent's tag
is used via the dxpl.
* Updated the tag sanity check logic so for free space managers.
* Turned new-style group checks back on in test/evict_on_close.c
Fix for some evict-on-close issues revealed by Valgrind.
* commit 'd3dbe9d90ee71b231b3264e1d62d3efbae3242ef':
Tentative fix for valgrind issues related to EoC.
Fix for tfile.c valgrind issues.
* commit '191cc19ae0a2feb72d2171a0808fdc71a3b862dd':
Added vlen reclaim functions to a test in tfile.c that leaks memory.
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.
Fixed a few memory issues in the tests.
* commit 'e2863ca880a6983558d3ba3e5219164a57287f04':
Fixed a few memory problems in test/cache_logging.c and test/h5test.c (which show up in test/vfd.c).
* commit 'b2878dec04c120e4e3cdf00e943283e359862c84':
Move cache debugging routines into separate module.
Change file memory type for extending to default, and correct error in backward compatibility for multi VFD.
Warning and whitespace cleanup.
Improvements to the log VFD, for helping with SWMR debugging.
Minor code cleanups.
Uncomment line in test/objcopy.c, clean up whitespace and POSIX call wrapping in tools code.