diff options
author | John Mainzer <mainzer@hdfgroup.org> | 2010-10-17 07:52:19 (GMT) |
---|---|---|
committer | John Mainzer <mainzer@hdfgroup.org> | 2010-10-17 07:52:19 (GMT) |
commit | 93b2b7cf0782943085e2e9cb87459ed60d10c97b (patch) | |
tree | c279ed3cf00e85662cbc201c51050aebd2e4f479 /src/H5ACprivate.h | |
parent | 1c14d3e96d8e4ab0b504ca98fdd3958c9cc451ea (diff) | |
download | hdf5-93b2b7cf0782943085e2e9cb87459ed60d10c97b.zip hdf5-93b2b7cf0782943085e2e9cb87459ed60d10c97b.tar.gz hdf5-93b2b7cf0782943085e2e9cb87459ed60d10c97b.tar.bz2 |
[svn-r19621] Port fo fix for the round robin parallel flush bug caused by the failure
of the H5Ocache.c code to update its image of the on disk representation
of the object header on a call to clear callback.
This wasn't an issue as long as all flushes of the object header were
made from the same process, but if an object header is modified, and
then flushed on one process and cleared on the rest, the changes were
not be reflected in the images of the on disk representation on all
processes where the object header was cleared rather than flushed.
If one of these processes did the next flush, the changes were lost in
the on disk representation.
Fixed this by causing all dirty messages and to be written to the copy
of the on disk image maintained by the object header code on both flush
and clear.
Also added associated test code in t_mdset.c.
Also checking in some cache debug code developed while chasing this bug.
Commit tested and tested (parallel) on phoenix.
Diffstat (limited to 'src/H5ACprivate.h')
-rw-r--r-- | src/H5ACprivate.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/H5ACprivate.h b/src/H5ACprivate.h index 1c37d41..359b576 100644 --- a/src/H5ACprivate.h +++ b/src/H5ACprivate.h @@ -339,6 +339,8 @@ H5_DLL herr_t H5AC_set_write_done_callback(H5C_t * cache_ptr, void (* write_done)(void)); H5_DLL herr_t H5AC_stats(const H5F_t *f); +H5_DLL herr_t H5AC_dump_cache(const H5F_t *f); + H5_DLL herr_t H5AC_get_cache_auto_resize_config(const H5AC_t * cache_ptr, H5AC_cache_config_t *config_ptr); |