Drizzled Public API Documentation
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
lock0priv.h
Go to the documentation of this file.
1
/*****************************************************************************
2
3
Copyright (C) 2007, 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 lock0priv_h
28
#define lock0priv_h
29
30
#ifndef LOCK_MODULE_IMPLEMENTATION
31
/* If you need to access members of the structures defined in this
32
file, please write appropriate functions that retrieve them and put
33
those functions in lock/ */
34
#error Do not include lock0priv.h outside of the lock/ module
35
#endif
36
37
#include "univ.i"
38
#include "
dict0types.h
"
39
#include "
hash0hash.h
"
40
#include "
trx0types.h
"
41
#include "
ut0lst.h
"
42
44
typedef
struct
lock_table_struct
lock_table_t
;
46
struct
lock_table_struct
{
47
dict_table_t
*
table
;
49
UT_LIST_NODE_T
(
lock_t
)
50
locks
;
52
};
53
55
typedef struct
lock_rec_struct
lock_rec_t
;
57
struct
lock_rec_struct
{
58
ulint
space
;
59
ulint
page_no
;
60
ulint
n_bits
;
64
};
65
67
struct
lock_struct
{
68
trx_t
*
trx
;
70
UT_LIST_NODE_T
(
lock_t
)
71
trx_locks;
73
ulint type_mode;
77
hash_node_t hash;
79
dict_index_t
* index;
80
union {
81
lock_table_t
tab_lock
;
82
lock_rec_t
rec_lock
;
83
} un_member;
84
};
85
86
/*********************************************************************/
89
UNIV_INLINE
90
ulint
91
lock_get_type_low
(
92
/*==============*/
93
const
lock_t
* lock);
95
/*********************************************************************/
98
UNIV_INTERN
99
const
lock_t
*
100
lock_rec_get_prev
(
101
/*==============*/
102
const
lock_t
* in_lock,
103
ulint heap_no);
105
#ifndef UNIV_NONINL
106
#include "lock0priv.ic"
107
#endif
108
109
#endif
/* lock0priv_h */
lock_rec_struct::page_no
ulint page_no
Definition:
lock0priv.h:59
lock_struct::tab_lock
lock_table_t tab_lock
Definition:
lock0priv.h:81
lock_table_struct::locks
locks
Definition:
lock0priv.h:50
lock_rec_struct::space
ulint space
Definition:
lock0priv.h:58
ut0lst.h
dict_table_struct
Definition:
dict0mem.h:476
lock_rec_get_prev
UNIV_INTERN const lock_t * lock_rec_get_prev(const lock_t *in_lock, ulint heap_no)
Definition:
lock0lock.cc:1314
lock_rec_struct::n_bits
ulint n_bits
Definition:
lock0priv.h:60
dict0types.h
lock_table_struct
Definition:
lock0priv.h:46
lock_rec_struct
Definition:
lock0priv.h:57
UT_LIST_NODE_T
#define UT_LIST_NODE_T(TYPE)
Definition:
ut0lst.h:73
trx0types.h
dict_index_struct
Definition:
dict0mem.h:336
lock_struct::rec_lock
lock_rec_t rec_lock
Definition:
lock0priv.h:82
lock_struct::trx
trx_t * trx
Definition:
lock0priv.h:68
lock_get_type_low
UNIV_INLINE ulint lock_get_type_low(const lock_t *lock)
lock_struct
Definition:
lock0priv.h:67
lock_table_struct::table
dict_table_t * table
Definition:
lock0priv.h:47
hash0hash.h
trx_struct
Definition:
trx0trx.h:473
plugin
innobase
include
lock0priv.h
Generated on Thu Dec 4 2014 10:50:09 for drizzle by
1.8.8