13 #define KMR_CKPT_DIRNAME "ckptdir" 14 #define KMR_CKPT_FNAME_PREFIX "kmrckpt" 15 #define KMR_CKPT_PATHLEN 512 16 #define KMR_CKPT_DIRLEN 256 17 #define KMR_CKPT_MSGLEN 512 36 #define KMR_CKPT_LIST_MAX 1000 39 typedef void * (*kmr_ckpt_list_alocfn_t)(
void *);
41 typedef void (*kmr_ckpt_list_freefn_t)(
void *);
43 typedef int (*kmr_ckpt_list_compfn_t)(
void *,
void *);
49 kmr_ckpt_list_alocfn_t alocfn;
50 kmr_ckpt_list_freefn_t freefn;
51 kmr_ckpt_list_compfn_t compfn;
77 char ckpt_dname[KMR_CKPT_DIRLEN];
80 long progress_counter;
82 long prev_global_progress;
87 long saved_element_count;
90 void *saved_adding_point;
93 void *saved_current_block;
97 int kv_positions_count;
101 _Bool slct_cur_take_ckpt;
124 enum kmr_ckpt_log_state {
125 KMR_CKPT_LOG_WHOLE_START,
126 KMR_CKPT_LOG_WHOLE_FINISH,
127 KMR_CKPT_LOG_BLOCK_START,
128 KMR_CKPT_LOG_BLOCK_ADD,
129 KMR_CKPT_LOG_BLOCK_FINISH,
130 KMR_CKPT_LOG_INDEX_START,
131 KMR_CKPT_LOG_INDEX_ADD,
132 KMR_CKPT_LOG_INDEX_FINISH,
133 KMR_CKPT_LOG_DELETE_START,
134 KMR_CKPT_LOG_DELETE_FINISH,
135 KMR_CKPT_LOG_DELETABLE,
136 KMR_CKPT_LOG_PROGRESS,
137 KMR_CKPT_LOG_SKIPPED,
138 KMR_CKPT_LOG_LOCK_START,
139 KMR_CKPT_LOG_LOCK_FINISH
175 char fname[KMR_CKPT_PATHLEN];
176 char dname[KMR_CKPT_DIRLEN];
185 long done_ikv_lst_size;
216 #define KMR_CKPT_DUMMY_ID 0
kmr_kv_field
Datatypes of Keys or Values.
kmr_ckpt_mode
Checkpoint modes.