Drizzled Public API Documentation
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
read0read.h
Go to the documentation of this file.
1
/*****************************************************************************
2
3
Copyright (C) 1997, 2009, Innobase Oy. 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., 51 Franklin
15
St, Fifth Floor, Boston, MA 02110-1301 USA
16
17
*****************************************************************************/
18
19
/**************************************************/
26
#pragma once
27
#ifndef read0read_h
28
#define read0read_h
29
30
#include "univ.i"
31
32
33
#include "
ut0byte.h
"
34
#include "
ut0lst.h
"
35
#include "
trx0trx.h
"
36
#include "
read0types.h
"
37
38
/*********************************************************************/
42
UNIV_INTERN
43
read_view_t
*
44
read_view_open_now
(
45
/*===============*/
46
trx_id_t
cr_trx_id,
48
mem_heap_t
* heap);
50
/*********************************************************************/
54
UNIV_INTERN
55
read_view_t
*
56
read_view_oldest_copy_or_open_new
(
57
/*==============================*/
58
trx_id_t
cr_trx_id,
60
mem_heap_t
* heap);
62
/*********************************************************************/
64
UNIV_INTERN
65
void
66
read_view_close
(
67
/*============*/
68
read_view_t
* view);
69
/*********************************************************************/
72
UNIV_INTERN
73
void
74
read_view_close_for_mysql
(
75
/*======================*/
76
trx_t
* trx);
77
/*********************************************************************/
80
UNIV_INLINE
81
ibool
82
read_view_sees_trx_id
(
83
/*==================*/
84
const
read_view_t
* view,
85
trx_id_t
trx_id);
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_struct
{
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_struct
{
180
mem_heap_t
* heap;
182
read_view_t
* read_view;
184
};
185
186
#ifndef UNIV_NONINL
187
#include "read0read.ic"
188
#endif
189
190
#endif
plugin
innobase
include
read0read.h
Generated on Wed Aug 21 2013 20:36:50 for drizzle by
1.8.4