~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to storage/innobase/include/univ.i

  • Committer: Brian Aker
  • Date: 2009-03-17 04:26:36 UTC
  • mfrom: (933.1.4 innodb-plugin-merge)
  • Revision ID: brian@tangent.org-20090317042636-oyd238h2u2bqhfy1
Merging new Innodb

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*****************************************************************************
 
2
 
 
3
Copyright (c) 1994, 2009, Innobase Oy. All Rights Reserved.
 
4
Copyright (c) 2008, Google Inc.
 
5
 
 
6
Portions of this file contain modifications contributed and copyrighted by
 
7
Google, Inc. Those modifications are gratefully acknowledged and are described
 
8
briefly in the InnoDB documentation. The contributions by Google are
 
9
incorporated with their permission, and subject to the conditions contained in
 
10
the file COPYING.Google.
 
11
 
 
12
This program is free software; you can redistribute it and/or modify it under
 
13
the terms of the GNU General Public License as published by the Free Software
 
14
Foundation; version 2 of the License.
 
15
 
 
16
This program is distributed in the hope that it will be useful, but WITHOUT
 
17
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 
18
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 
19
 
 
20
You should have received a copy of the GNU General Public License along with
 
21
this program; if not, write to the Free Software Foundation, Inc., 59 Temple
 
22
Place, Suite 330, Boston, MA 02111-1307 USA
 
23
 
 
24
*****************************************************************************/
 
25
 
1
26
/***************************************************************************
2
27
Version control for database, common definitions, and include files
3
28
 
4
 
(c) 1994 - 2000 Innobase Oy
5
 
 
6
29
Created 1/20/1994 Heikki Tuuri
7
30
****************************************************************************/
8
31
 
15
38
 
16
39
#define INNODB_VERSION_MAJOR    1
17
40
#define INNODB_VERSION_MINOR    0
18
 
#define INNODB_VERSION_BUGFIX   2
 
41
#define INNODB_VERSION_BUGFIX   3
19
42
 
20
43
/* The following is the InnoDB version as shown in
21
44
SELECT plugin_version FROM information_schema.plugins;
99
122
#  define UNIV_CAN_USE_X86_ASSEMBLER
100
123
# endif
101
124
 
 
125
/* For InnoDB rw_locks to work with atomics we need the thread_id
 
126
to be no more than machine word wide. The following enables using
 
127
atomics for InnoDB rw_locks where these conditions are met. */
 
128
#ifdef HAVE_GCC_ATOMIC_BUILTINS
 
129
/* if HAVE_ATOMIC_PTHREAD_T is defined at this point that means that
 
130
the code from plug.in has defined it and we do not need to include
 
131
ut0auxconf.h which would either define HAVE_ATOMIC_PTHREAD_T or will
 
132
be empty */
 
133
# ifndef HAVE_ATOMIC_PTHREAD_T
 
134
#  include "ut0auxconf.h"
 
135
# endif /* HAVE_ATOMIC_PTHREAD_T */
 
136
/* now HAVE_ATOMIC_PTHREAD_T is eventually defined either by plug.in or
 
137
from Makefile.in->ut0auxconf.h */
 
138
# ifdef HAVE_ATOMIC_PTHREAD_T
 
139
#  define INNODB_RW_LOCKS_USE_ATOMICS
 
140
# endif /* HAVE_ATOMIC_PTHREAD_T */
 
141
#endif /* HAVE_GCC_ATOMIC_BUILTINS */
 
142
 
102
143
/* We only try to do explicit inlining of functions with gcc and
103
144
Microsoft Visual C++ */
104
145
 
139
180
                                                Valgrind instrumentation */
140
181
#define UNIV_DEBUG_PRINT                        /* Enable the compilation of
141
182
                                                some debug print functions */
 
183
#define UNIV_AHI_DEBUG                          /* Enable adaptive hash index
 
184
                                                debugging without UNIV_DEBUG */
142
185
#define UNIV_BUF_DEBUG                          /* Enable buffer pool
143
186
                                                debugging without UNIV_DEBUG */
144
187
#define UNIV_DEBUG                              /* Enable ut_ad() assertions