Drizzled Public API Documentation
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
data_dictionary.h
1
/* - mode: c; c-basic-offset: 2; indent-tabs-mode: nil; -*-
2
* vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
3
*
4
* Copyright (C) 2010 Joseph Daly <skinny.moey@gmail.com>
5
*
6
* This program is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation; either version 2 of the License, or
9
* (at your option) any later version.
10
*
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License
17
* along with this program; if not, write to the Free Software
18
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
19
*/
20
21
#pragma once
22
23
#include <drizzled/plugin/table_function.h>
24
#include <drizzled/field.h>
25
26
#include "
trx0i_s.h
"
27
#include "
trx0trx.h
"
/* for TRX_QUE_STATE_STR_MAX_LEN */
28
#include "
buf0buddy.h
"
/* for i_s_cmpmem */
29
#include "
buf0buf.h
"
/* for buf_pool and PAGE_ZIP_MIN_SIZE */
30
#include "
ha_prototypes.h
"
/* for innobase_convert_name() */
31
#include "
srv0start.h
"
/* for srv_was_started */
32
#include "
btr0pcur.h
"
/* for file sys_tables related info. */
33
#include "
btr0types.h
"
34
#include "
dict0load.h
"
/* for file sys_tables related info. */
35
#include "
dict0mem.h
"
36
#include "
dict0types.h
"
37
38
class
InnodbSysTablesTool
:
public
drizzled::plugin::TableFunction
39
{
40
public
:
41
InnodbSysTablesTool
();
42
class
Generator
:
public
drizzled::plugin::TableFunction::Generator
43
{
44
public
:
45
Generator
(
drizzled::Field
**arg);
46
47
bool
populate();
48
private
:
49
btr_pcur_t
pcur;
50
const
rec_t* rec;
51
mem_heap_t
* heap;
52
mtr_t
mtr;
53
};
54
55
Generator
*generator(
drizzled::Field
**arg)
56
{
57
return
new
Generator
(arg);
58
}
59
};
60
61
class
InnodbSysTableStatsTool
:
public
drizzled::plugin::TableFunction
62
{
63
public
:
64
InnodbSysTableStatsTool
();
65
class
Generator
:
public
drizzled::plugin::TableFunction::Generator
66
{
67
public
:
68
Generator
(
drizzled::Field
**arg);
69
70
bool
populate();
71
private
:
72
btr_pcur_t
pcur;
73
const
rec_t* rec;
74
mem_heap_t
* heap;
75
mtr_t
mtr;
76
};
77
78
Generator
*generator(
drizzled::Field
**arg)
79
{
80
return
new
Generator
(arg);
81
}
82
};
83
84
class
InnodbSysIndexesTool
:
public
drizzled::plugin::TableFunction
85
{
86
public
:
87
InnodbSysIndexesTool
();
88
class
Generator
:
public
drizzled::plugin::TableFunction::Generator
89
{
90
public
:
91
Generator
(
drizzled::Field
**arg);
92
93
bool
populate();
94
private
:
95
btr_pcur_t
pcur;
96
const
rec_t* rec;
97
mem_heap_t
* heap;
98
mtr_t
mtr;
99
};
100
101
Generator
*generator(
drizzled::Field
**arg)
102
{
103
return
new
Generator
(arg);
104
}
105
};
106
107
class
InnodbSysColumnsTool
:
public
drizzled::plugin::TableFunction
108
{
109
public
:
110
InnodbSysColumnsTool
();
111
class
Generator
:
public
drizzled::plugin::TableFunction::Generator
112
{
113
public
:
114
Generator
(
drizzled::Field
**arg);
115
116
bool
populate();
117
private
:
118
btr_pcur_t
pcur;
119
const
rec_t* rec;
120
mem_heap_t
* heap;
121
mtr_t
mtr;
122
};
123
124
Generator
*generator(
drizzled::Field
**arg)
125
{
126
return
new
Generator
(arg);
127
}
128
};
129
130
class
InnodbSysFieldsTool
:
public
drizzled::plugin::TableFunction
131
{
132
public
:
133
InnodbSysFieldsTool
();
134
class
Generator
:
public
drizzled::plugin::TableFunction::Generator
135
{
136
public
:
137
Generator
(
drizzled::Field
**arg);
138
139
bool
populate();
140
private
:
141
btr_pcur_t
pcur;
142
const
rec_t* rec;
143
mem_heap_t
* heap;
144
index_id_t last_id;
145
mtr_t
mtr;
146
};
147
148
Generator
*generator(
drizzled::Field
**arg)
149
{
150
return
new
Generator
(arg);
151
}
152
};
153
154
class
InnodbSysForeignTool
:
public
drizzled::plugin::TableFunction
155
{
156
public
:
157
InnodbSysForeignTool
();
158
class
Generator
:
public
drizzled::plugin::TableFunction::Generator
159
{
160
public
:
161
Generator
(
drizzled::Field
**arg);
162
163
bool
populate();
164
private
:
165
btr_pcur_t
pcur;
166
const
rec_t* rec;
167
mem_heap_t
* heap;
168
mtr_t
mtr;
169
};
170
171
Generator
*generator(
drizzled::Field
**arg)
172
{
173
return
new
Generator
(arg);
174
}
175
};
176
177
class
InnodbSysForeignColsTool
:
public
drizzled::plugin::TableFunction
178
{
179
public
:
180
InnodbSysForeignColsTool
();
181
class
Generator
:
public
drizzled::plugin::TableFunction::Generator
182
{
183
public
:
184
Generator
(
drizzled::Field
**arg);
185
186
bool
populate();
187
private
:
188
btr_pcur_t
pcur;
189
const
rec_t* rec;
190
mem_heap_t
* heap;
191
mtr_t
mtr;
192
};
193
194
Generator
*generator(
drizzled::Field
**arg)
195
{
196
return
new
Generator
(arg);
197
}
198
};
199
200
class
CmpTool
:
public
drizzled::plugin::TableFunction
201
{
202
public
:
203
204
CmpTool
(
bool
reset);
205
206
class
Generator
:
public
drizzled::plugin::TableFunction::Generator
207
{
208
public
:
209
Generator
(
drizzled::Field
**arg,
bool
outer_reset);
210
211
bool
populate();
212
private
:
213
uint32_t record_number;
214
bool
inner_reset;
215
};
216
217
Generator
*generator(
drizzled::Field
**arg)
218
{
219
return
new
Generator
(arg, outer_reset);
220
}
221
private
:
222
bool
outer_reset;
223
};
224
225
class
CmpmemTool
:
public
drizzled::plugin::TableFunction
226
{
227
public
:
228
229
CmpmemTool
(
bool
reset);
230
231
class
Generator
:
public
drizzled::plugin::TableFunction::Generator
232
{
233
public
:
234
Generator
(
drizzled::Field
**arg,
bool
outer_reset);
235
236
~
Generator
();
237
238
bool
populate();
239
private
:
240
uint32_t record_number;
241
bool
inner_reset;
242
};
243
244
Generator
*generator(
drizzled::Field
**arg)
245
{
246
return
new
Generator
(arg, outer_reset);
247
}
248
private
:
249
bool
outer_reset;
250
};
251
252
class
InnodbTrxTool
:
public
drizzled::plugin::TableFunction
253
{
254
public
:
255
256
InnodbTrxTool
(
const
char
* in_table_name);
257
258
class
Generator
:
public
drizzled::plugin::TableFunction::Generator
259
{
260
public
:
261
Generator
(
drizzled::Field
**arg,
const
char
* in_table_name);
262
263
~
Generator
();
264
265
bool
populate();
266
private
:
267
void
populate_innodb_trx();
268
void
populate_innodb_locks();
269
void
populate_innodb_lock_waits();
270
271
private
:
272
uint32_t record_number;
273
uint32_t number_rows;
274
const
char
* table_name;
275
};
276
277
Generator
*generator(
drizzled::Field
**arg)
278
{
279
return
new
Generator
(arg, table_name);
280
}
281
private
:
282
const
char
* table_name;
283
};
284
dict0mem.h
drizzled::plugin::TableFunction
Definition:
table_function.h:60
InnodbSysTableStatsTool
Definition:
data_dictionary.h:61
ha_prototypes.h
InnodbSysTableStatsTool::Generator
Definition:
data_dictionary.h:65
CmpmemTool
Definition:
data_dictionary.h:225
buf0buddy.h
InnodbSysIndexesTool
Definition:
data_dictionary.h:84
InnodbSysTablesTool
Definition:
data_dictionary.h:38
InnodbSysForeignTool::Generator
Definition:
data_dictionary.h:158
CmpmemTool::Generator
Definition:
data_dictionary.h:231
InnodbSysTablesTool::Generator
Definition:
data_dictionary.h:42
InnodbSysFieldsTool::Generator
Definition:
data_dictionary.h:134
btr_pcur_struct
Definition:
btr0pcur.h:458
srv0start.h
trx0i_s.h
btr0types.h
dict0types.h
InnodbSysFieldsTool
Definition:
data_dictionary.h:130
InnodbSysColumnsTool
Definition:
data_dictionary.h:107
InnodbSysIndexesTool::Generator
Definition:
data_dictionary.h:88
drizzled::Field
Definition:
field.h:68
drizzled::plugin::TableFunction::Generator
Definition:
table_function.h:96
InnodbSysColumnsTool::Generator
Definition:
data_dictionary.h:111
InnodbSysForeignTool
Definition:
data_dictionary.h:154
mem_block_info_struct
Definition:
mem0mem.h:351
btr0pcur.h
InnodbSysForeignColsTool
Definition:
data_dictionary.h:177
dict0load.h
CmpTool::Generator
Definition:
data_dictionary.h:206
trx0trx.h
InnodbTrxTool
Definition:
data_dictionary.h:252
InnodbSysForeignColsTool::Generator
Definition:
data_dictionary.h:181
mtr_struct
Definition:
mtr0mtr.h:441
buf0buf.h
CmpTool
Definition:
data_dictionary.h:200
InnodbTrxTool::Generator
Definition:
data_dictionary.h:258
plugin
innobase
handler
data_dictionary.h
Generated on Fri May 23 2014 13:09:19 for drizzle by
1.8.7