diff options
author | John Mainzer <mainzer@hdfgroup.org> | 2008-02-25 10:01:56 (GMT) |
---|---|---|
committer | John Mainzer <mainzer@hdfgroup.org> | 2008-02-25 10:01:56 (GMT) |
commit | 738078322dd2b189ec1233c9ea59f218c2008740 (patch) | |
tree | 81ac2180a5f6eed1d65198de2abf2c6569bf48bb /src/H5C2private.h | |
parent | cd571e4a45e5af71ae608388141e6b28a16f8171 (diff) | |
download | hdf5-738078322dd2b189ec1233c9ea59f218c2008740.zip hdf5-738078322dd2b189ec1233c9ea59f218c2008740.tar.gz hdf5-738078322dd2b189ec1233c9ea59f218c2008740.tar.bz2 |
[svn-r14642] Folded initial version of Mike M's journal entry logging code into
the journaling branch. Added several new errors, and made many edits
to Mike's code (don't worry Mike -- changes I made were on items I
neglected to discuss with you).
Serial test on Phoenix only.
Diffstat (limited to 'src/H5C2private.h')
-rw-r--r-- | src/H5C2private.h | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/src/H5C2private.h b/src/H5C2private.h index b70e968..a829ed5 100644 --- a/src/H5C2private.h +++ b/src/H5C2private.h @@ -1408,5 +1408,56 @@ H5_DLL herr_t H5C2_unprotect(H5C2_t * cache_ptr, H5_DLL herr_t H5C2_validate_resize_config(H5C2_auto_size_ctl_t * config_ptr, unsigned int tests); + +/*****************************************************************************/ +/****************** journal buffer function definitions: *********************/ +/*****************************************************************************/ + +typedef struct H5C2_jbrb_t H5C2_jbrb_t; + +H5_DLL herr_t H5C2_jb__flush_full_buffers(H5C2_jbrb_t * struct_ptr); + +H5_DLL herr_t H5C2_jb__flush(H5C2_jbrb_t * struct_ptr); + +H5_DLL herr_t H5C2_jb__write_to_buffer(H5C2_jbrb_t * struct_ptr, + size_t size, + const char * data); + +H5_DLL herr_t H5C2_jb__init(H5C2_jbrb_t * struct_ptr, + char * HDF5_file_name, + char * journal_file_name, + size_t buf_size, + int num_bufs, + hbool_t use_aio, + hbool_t human_readable); + +H5_DLL herr_t H5C2_jb__start_transaction(H5C2_jbrb_t * struct_ptr, + unsigned long trans_num); + +H5_DLL herr_t H5C2_jb__journal_entry(H5C2_jbrb_t * struct_ptr, + unsigned long trans_num, + haddr_t base_addr, + size_t length, + char * body); + +H5_DLL herr_t H5C2_jb__end_transaction(H5C2_jbrb_t * struct_ptr, + unsigned long trans_num); + +H5_DLL herr_t H5C2_jb__comment(H5C2_jbrb_t * struct_ptr, + char * comment_ptr); + +H5_DLL herr_t H5C2_jb__get_last_transaction_on_disk(H5C2_jbrb_t * struct_ptr, + unsigned long * trans_num_ptr); + +H5_DLL herr_t H5C2_jb__trunc(H5C2_jbrb_t * struct_ptr); + +H5_DLL herr_t H5C2_jb__takedown(H5C2_jbrb_t * struct_ptr); + +H5_DLL herr_t H5C2_jb__reconfigure(H5C2_jbrb_t * struct_ptr, + size_t new_buf_size, + int new_num_bufs, + hbool_t new_use_aio); + + #endif /* !_H5C2private_H */ |