MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
trx0roll.h
Go to the documentation of this file.
1 /*****************************************************************************
2 
3 Copyright (c) 1996, 2012, Oracle and/or its affiliates. All Rights Reserved.
4 
5 This program is free software; you can redistribute it and/or modify it under
6 the terms of the GNU General Public License as published by the Free Software
7 Foundation; version 2 of the License.
8 
9 This program is distributed in the hope that it will be useful, but WITHOUT
10 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
12 
13 You should have received a copy of the GNU General Public License along with
14 this program; if not, write to the Free Software Foundation, Inc.,
15 51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
16 
17 *****************************************************************************/
18 
19 /**************************************************/
26 #ifndef trx0roll_h
27 #define trx0roll_h
28 
29 #include "univ.i"
30 #include "trx0trx.h"
31 #include "trx0types.h"
32 #include "mtr0mtr.h"
33 #include "trx0sys.h"
34 
35 /*******************************************************************/
40 UNIV_INTERN
41 ibool
43 /*========*/
44  const trx_t* trx);
45 /*******************************************************************/
48 UNIV_INTERN
51 /*============*/
52  trx_t* trx);
53 /*******************************************************************/
55 UNIV_INTERN
56 void
58 /*==============*/
59  trx_undo_arr_t* arr);
60 /*******************************************************************/
63 UNIV_INLINE
66 /*======================*/
67  trx_undo_arr_t* arr,
68  ulint n);
69 /********************************************************************/
77 UNIV_INTERN
80 /*========================*/
81  trx_t* trx,
83  roll_ptr_t* roll_ptr,
84  mem_heap_t* heap);
85 /********************************************************************/
90 UNIV_INTERN
91 ibool
93 /*=================*/
94  trx_t* trx,
95  undo_no_t undo_no);
96 /*******************************************************************/
98 UNIV_INTERN
99 void
101 /*=================*/
102  trx_t* trx,
103  undo_no_t undo_no);
104 /*******************************************************************/
109 UNIV_INTERN
110 void
112 /*============================*/
113  ibool all);
115 /*******************************************************************/
122 extern "C" UNIV_INTERN
123 os_thread_ret_t
125 /*================================================*/
126  void* arg __attribute__((unused)));
129 /*********************************************************************/
132 UNIV_INTERN
135 /*=============*/
136  mem_heap_t* heap);
137 /***********************************************************/
140 UNIV_INTERN
141 que_thr_t*
143 /*==============*/
144  que_thr_t* thr);
145 /*******************************************************************/
148 UNIV_INTERN
149 dberr_t
151 /*===================*/
152  trx_t* trx)
153  __attribute__((nonnull));
154 /*******************************************************************/
157 UNIV_INTERN
158 dberr_t
160 /*=================================*/
161  trx_t* trx)
162  __attribute__((nonnull));
163 /*******************************************************************/
166 UNIV_INTERN
167 dberr_t
169 /*======================*/
170  trx_t* trx,
171  trx_savept_t* savept)
174  __attribute__((nonnull(1)));
175 /*******************************************************************/
184 UNIV_INTERN
185 dberr_t
187 /*================================*/
188  trx_t* trx,
189  const char* savepoint_name,
190  ib_int64_t* mysql_binlog_cache_pos)
196  __attribute__((nonnull, warn_unused_result));
197 /*******************************************************************/
203 UNIV_INTERN
204 dberr_t
206 /*====================*/
207  trx_t* trx,
208  const char* savepoint_name,
209  ib_int64_t binlog_cache_pos)
213  __attribute__((nonnull));
214 /*******************************************************************/
219 UNIV_INTERN
220 dberr_t
222 /*============================*/
223  trx_t* trx,
224  const char* savepoint_name)
225  __attribute__((nonnull, warn_unused_result));
226 /*******************************************************************/
228 UNIV_INTERN
229 void
231 /*=====================*/
232  trx_t* trx,
239  ibool in_use;
243 };
244 
249  ulint n_cells;
250  ulint n_used;
253 };
254 
262 };
263 
265 struct roll_node_t{
268  ibool partial;
274 };
275 
278  char* name;
281  ib_int64_t mysql_binlog_cache_pos;
289 };
290 
291 #ifndef UNIV_NONINL
292 #include "trx0roll.ic"
293 #endif
294 
295 #endif