InnoDB Plugin
1.0
Main Page
Data Structures
Files
File List
Globals
include
read0read.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 read0read_h
27
#define read0read_h
28
29
#include "
univ.i
"
30
31
32
#include "
ut0byte.h
"
33
#include "
ut0lst.h
"
34
#include "
trx0trx.h
"
35
#include "
read0types.h
"
36
37
/*********************************************************************/
41
UNIV_INTERN
42
read_view_t
*
43
read_view_open_now
(
44
/*===============*/
45
trx_id_t
cr_trx_id,
47
mem_heap_t
* heap);
49
/*********************************************************************/
53
UNIV_INTERN
54
read_view_t
*
55
read_view_purge_open
(
56
/*=================*/
57
mem_heap_t
* heap);
59
/*********************************************************************/
61
UNIV_INLINE
62
void
63
read_view_remove
(
64
/*=============*/
65
read_view_t
* view,
66
bool
own_mutex);
68
/*********************************************************************/
71
UNIV_INTERN
72
void
73
read_view_close_for_mysql
(
74
/*======================*/
75
trx_t
* trx);
76
/*********************************************************************/
79
UNIV_INLINE
80
bool
81
read_view_sees_trx_id
(
82
/*==================*/
83
const
read_view_t
* view,
84
trx_id_t
trx_id)
85
__attribute__((nonnull, warn_unused_result));
86
/*********************************************************************/
88
UNIV_INTERN
89
void
90
read_view_print
(
91
/*============*/
92
const
read_view_t
* view);
93
/*********************************************************************/
97
UNIV_INTERN
98
cursor_view_t
*
99
read_cursor_view_create_for_mysql
(
100
/*==============================*/
101
trx_t
* cr_trx);
102
/*********************************************************************/
105
UNIV_INTERN
106
void
107
read_cursor_view_close_for_mysql
(
108
/*=============================*/
109
trx_t
* trx,
110
cursor_view_t
* curview);
111
/*********************************************************************/
115
UNIV_INTERN
116
void
117
read_cursor_set_for_mysql
(
118
/*======================*/
119
trx_t
* trx,
120
cursor_view_t
* curview);
125
struct
read_view_t
{
126
ulint
type
;
127
undo_no_t
undo_no
;
131
trx_id_t
low_limit_no
;
137
trx_id_t
low_limit_id
;
141
trx_id_t
up_limit_id
;
146
ulint
n_trx_ids
;
148
trx_id_t
*
trx_ids
;
156
trx_id_t
creator_trx_id
;
159
UT_LIST_NODE_T(
read_view_t
)
view_list
;
161
};
162
164
#define VIEW_NORMAL 1
168
#define VIEW_HIGH_GRANULARITY 2
173
/* @} */
174
179
struct
cursor_view_t
{
180
mem_heap_t
* heap;
182
read_view_t
* read_view;
184
ulint n_mysql_tables_in_use;
187
};
188
189
#ifndef UNIV_NONINL
190
#include "
read0read.ic
"
191
#endif
192
193
#endif
Generated on Fri Aug 21 2015 19:14:24 for InnoDB Plugin by
1.8.1.2