MySQL 5.6.14 Source Code Document
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
row0purge.h
Go to the documentation of this file.
1
/*****************************************************************************
2
3
Copyright (c) 1997, 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 row0purge_h
27
#define row0purge_h
28
29
#include "univ.i"
30
#include "
data0data.h
"
31
#include "
btr0types.h
"
32
#include "
btr0pcur.h
"
33
#include "
dict0types.h
"
34
#include "
trx0types.h
"
35
#include "
que0types.h
"
36
#include "
row0types.h
"
37
#include "
row0purge.h
"
38
#include "
ut0vec.h
"
39
40
/********************************************************************/
43
UNIV_INTERN
44
purge_node_t
*
45
row_purge_node_create
(
46
/*==================*/
47
que_thr_t
* parent,
49
mem_heap_t
*
heap
)
50
__attribute__((nonnull, warn_unused_result));
51
/***********************************************************/
66
UNIV_INTERN
67
bool
68
row_purge_poss_sec
(
69
/*===============*/
70
purge_node_t
* node,
71
dict_index_t
*
index
,
72
const
dtuple_t
*
entry
)
73
__attribute__((nonnull, warn_unused_result));
74
/***************************************************************
75
Does the purge operation for a single undo log record. This is a high-level
76
function used in an SQL execution graph.
77
@return query thread to run next or NULL */
78
UNIV_INTERN
79
que_thr_t
*
80
row_purge_step
(
81
/*===========*/
82
que_thr_t
*
thr
)
83
__attribute__((nonnull, warn_unused_result));
84
85
/* Purge node structure */
86
87
struct
purge_node_t
{
88
que_common_t
common
;
89
/*----------------------*/
90
/* Local storage for this graph node */
91
roll_ptr_t
roll_ptr;
/* roll pointer to undo log record */
92
ib_vector_t
*
undo_recs
;
94
undo_no_t
undo_no;
/* undo number of the record */
95
96
ulint rec_type;
/* undo log record type: TRX_UNDO_INSERT_REC,
97
... */
98
dict_table_t
*
table
;
100
ulint cmpl_info;
/* compiler analysis info of an update */
101
102
upd_t
*
update
;
104
dtuple_t
*
ref
;
106
dtuple_t
*
row
;
109
dict_index_t
*
index
;
111
mem_heap_t
*
heap
;
114
ibool found_clust;
/* TRUE if the clustered index record
115
determined by ref was found in the clustered
116
index, and we were able to position pcur on
117
it */
118
btr_pcur_t
pcur
;
120
ibool done;
/* Debug flag */
121
122
};
123
124
#ifndef UNIV_NONINL
125
#include "row0purge.ic"
126
#endif
127
128
#endif
storage
innobase
include
row0purge.h
Generated on Sat Nov 9 2013 01:26:35 for MySQL 5.6.14 Source Code Document by
1.8.1.2