summaryrefslogtreecommitdiffstats
path: root/src/H5C2private.h
diff options
context:
space:
mode:
authorJohn Mainzer <mainzer@hdfgroup.org>2008-03-20 21:35:41 (GMT)
committerJohn Mainzer <mainzer@hdfgroup.org>2008-03-20 21:35:41 (GMT)
commit437208be66bcaffa01ab5630a91d9f340d95941a (patch)
tree39901a6bdee42b0521a618a68fa648e97fe88307 /src/H5C2private.h
parentcbdca772735710a372dcf57915d3bc5bff58ef07 (diff)
downloadhdf5-437208be66bcaffa01ab5630a91d9f340d95941a.zip
hdf5-437208be66bcaffa01ab5630a91d9f340d95941a.tar.gz
hdf5-437208be66bcaffa01ab5630a91d9f340d95941a.tar.bz2
[svn-r14761] Several odds and sods:
1) Code to read and write the metadata journaling configuration block and associated test code. (Quincey: Just recalled that I have not converted the memory type of the metadata journaling configuration block to H5FD_MEM_SUPER per our email conversation. It will be in the next checkin.) 2) Dummy begin/end transaction calls on the off chance that Quincey gets to working on this before I check in the real ones. 3) Updates to cache2 in test to reduce the size of the test according to the value of the HDF5TestExpress environment variable. Run times on Phoenix using the core file driver are as follows: HDF5TestExpress = 0 20:20 HDF5TestExpress = 1 4:56 HDF5TestExpress = 2 3:18 HDF5TestExpress = 3 0:25 With HDF5TestExpress = 3, I skip the smoke checks entirely. With HDF5TestExpress = 2, I set the number of itterations as low as it can go without a major re-write. (Albert: I hope running with HDF5TestExpress = 2 will work for you. If it doesn't, we will just have to run with HDF5TestExpress = 3 on RedStorm, and skip the smoke checks for now. Tested serial on Phonenix and parallel on kagiso.
Diffstat (limited to 'src/H5C2private.h')
-rw-r--r--src/H5C2private.h41
1 files changed, 40 insertions, 1 deletions
diff --git a/src/H5C2private.h b/src/H5C2private.h
index 4a7c4b9..67d59a9 100644
--- a/src/H5C2private.h
+++ b/src/H5C2private.h
@@ -83,7 +83,7 @@
* want them on for testing on occasion, but in general they should be
* off.
*/
-#define H5C2_MAINTAIN_CLEAN_AND_DIRTY_LRU_LISTS 0
+#define H5C2_MAINTAIN_CLEAN_AND_DIRTY_LRU_LISTS 0 /* JRM */
#endif /* H5_HAVE_PARALLEL */
@@ -1409,6 +1409,17 @@ H5_DLL herr_t H5C2_validate_resize_config(H5C2_auto_size_ctl_t * config_ptr,
unsigned int tests);
+/**************************************************************************/
+/***************** journaling function definitions proper: ****************/
+/**************************************************************************/
+
+H5_DLL herr_t H5C2__begin_transaction(H5C2_t * cache_ptr,
+ uint64_t * trans_num_ptr);
+
+H5_DLL herr_t H5C2__end_transaction(H5C2_t * cache_ptr,
+ uint64_t trans_num);
+
+
/*****************************************************************************/
/****************** journal buffer function definitions: *********************/
/*****************************************************************************/
@@ -1466,5 +1477,33 @@ H5_DLL herr_t H5C2_jb__bin2hex(uint8_t * buf,
size_t buf_offset,
size_t buf_size);
+/*****************************************************************************/
+/********** journal config block management function definitions: ************/
+/*****************************************************************************/
+
+H5_DLL herr_t H5C2_create_journal_config_block(H5C2_t * cache_ptr,
+ hid_t dxpl_id,
+ const char * journal_file_name_ptr);
+
+H5_DLL herr_t H5C2_discard_journal_config_block(H5C2_t * cache_ptr,
+ hid_t dxpl_id);
+
+H5_DLL herr_t H5C2_get_journaling_in_progress(H5C2_t * cache_ptr,
+ hid_t dxpl_id);
+
+H5_DLL herr_t H5C2_load_journal_config_block(H5C2_t * cache_ptr,
+ hid_t dxpl_id,
+ haddr_t block_addr,
+ hsize_t block_len);
+
+H5_DLL herr_t H5C2_mark_journaling_in_progress(H5C2_t * cache_ptr,
+ hid_t dxpl_id,
+ const char * journal_file_name_ptr);
+
+H5_DLL herr_t H5C2_unmark_journaling_in_progress(H5C2_t * cache_ptr,
+ hid_t dxpl_id);
+
+
+
#endif /* !_H5C2private_H */