~drizzle-trunk/drizzle/development

641.2.2 by Monty Taylor
InnoDB Plugin 1.0.3
1
/*****************************************************************************
2
1999.6.1 by kalebral at gmail
update Copyright strings to a more common format to help with creating the master debian copyright file
3
Copyright (C) 1996, 2009, Innobase Oy. All Rights Reserved.
641.2.2 by Monty Taylor
InnoDB Plugin 1.0.3
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
1802.10.2 by Monty Taylor
Update all of the copyright headers to include the correct address.
14
this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
15
St, Fifth Floor, Boston, MA 02110-1301 USA
641.2.2 by Monty Taylor
InnoDB Plugin 1.0.3
16
17
*****************************************************************************/
18
641.2.3 by Monty Taylor
InnoDB Plugin 1.0.4
19
/**************************************************//**
20
@file include/db0err.h
641.1.2 by Monty Taylor
Imported 1.0.1 with clean - with no changes.
21
Global error codes for the database
22
23
Created 5/24/1996 Heikki Tuuri
24
*******************************************************/
25
26
#ifndef db0err_h
27
#define db0err_h
28
29
30
enum db_err {
1819.7.159 by Marko Mäkelä, Stewart Smith
Merge Revision revid:marko.makela@oracle.com-20100602113733-fslfv73nhi0d17t4 from MySQL InnoDB
31
	DB_SUCCESS_LOCKED_REC = 9,	/*!< like DB_SUCCESS, but a new
32
					explicit record lock was created */
641.1.2 by Monty Taylor
Imported 1.0.1 with clean - with no changes.
33
	DB_SUCCESS = 10,
34
35
	/* The following are error codes */
36
	DB_ERROR,
1819.5.113 by stewart at flamingspork
[patch 113/129] Merge patch for revision 1926 from InnoDB SVN:
37
	DB_INTERRUPTED,
641.1.2 by Monty Taylor
Imported 1.0.1 with clean - with no changes.
38
	DB_OUT_OF_MEMORY,
39
	DB_OUT_OF_FILE_SPACE,
40
	DB_LOCK_WAIT,
41
	DB_DEADLOCK,
42
	DB_ROLLBACK,
43
	DB_DUPLICATE_KEY,
44
	DB_QUE_THR_SUSPENDED,
45
	DB_MISSING_HISTORY,		/* required history data has been
46
					deleted due to lack of space in
47
					rollback segment */
48
	DB_CLUSTER_NOT_FOUND = 30,
49
	DB_TABLE_NOT_FOUND,
50
	DB_MUST_GET_MORE_FILE_SPACE,	/* the database has to be stopped
51
					and restarted with more file space */
52
	DB_TABLE_IS_BEING_USED,
53
	DB_TOO_BIG_RECORD,		/* a record in an index would not fit
54
					on a compressed page, or it would
55
					become bigger than 1/2 free space in
56
					an uncompressed page frame */
57
	DB_LOCK_WAIT_TIMEOUT,		/* lock wait lasted too long */
58
	DB_NO_REFERENCED_ROW,		/* referenced key value not found
59
					for a foreign key in an insert or
60
					update of a row */
61
	DB_ROW_IS_REFERENCED,		/* cannot delete or update a row
62
					because it contains a key value
63
					which is referenced */
64
	DB_CANNOT_ADD_CONSTRAINT,	/* adding a foreign key constraint
65
					to a table failed */
66
	DB_CORRUPTION,			/* data structure corruption noticed */
67
	DB_COL_APPEARS_TWICE_IN_INDEX,	/* InnoDB cannot handle an index
68
					where same column appears twice */
69
	DB_CANNOT_DROP_CONSTRAINT,	/* dropping a foreign key constraint
70
					from a table failed */
71
	DB_NO_SAVEPOINT,		/* no savepoint exists with the given
72
					name */
73
	DB_TABLESPACE_ALREADY_EXISTS,	/* we cannot create a new single-table
74
					tablespace because a file of the same
75
					name already exists */
76
	DB_TABLESPACE_DELETED,		/* tablespace does not exist or is
77
					being dropped right now */
78
	DB_LOCK_TABLE_FULL,		/* lock structs have exhausted the
79
					buffer pool (for big transactions,
80
					InnoDB stores the lock structs in the
81
					buffer pool) */
82
	DB_FOREIGN_DUPLICATE_KEY,	/* foreign key constraints
83
					activated by the operation would
84
					lead to a duplicate key in some
85
					table */
86
	DB_TOO_MANY_CONCURRENT_TRXS,	/* when InnoDB runs out of the
87
					preconfigured undo slots, this can
88
					only happen when there are too many
89
					concurrent transactions */
90
	DB_UNSUPPORTED,			/* when InnoDB sees any artefact or
91
					a feature that it can't recoginize or
92
					work with e.g., FT indexes created by
93
					a later version of the engine. */
94
95
	DB_PRIMARY_KEY_IS_NULL,		/* a column in the PRIMARY KEY
96
					was found to be NULL */
97
1819.7.68 by Stewart Smith
Merge initial InnoDB+ import.
98
	DB_STATS_DO_NOT_EXIST,		/* an operation that requires the
99
					persistent storage, used for recording
100
					table and index statistics, was
101
					requested but this storage does not
102
					exist itself or the stats for a given
103
					table do not exist */
1819.9.148 by Jimmy Yang, Stewart Smith
Merge Revision revid:jimmy.yang@oracle.com-20101006135534-6m2rb97xpbrkxux5 from MySQL InnoDB
104
	DB_FOREIGN_EXCEED_MAX_CASCADE,	/* Foreign key constraint related
105
					cascading delete/update exceeds
106
					maximum allowed depth */
1819.9.207 by Jimmy Yang, Stewart Smith
Merge Revision revid:jimmy.yang@oracle.com-20101115070804-gz1z4s7l3u4p48f5 from MySQL InnoDB
107
	DB_CHILD_NO_INDEX,		/* the child (foreign) table does not
108
					have an index that contains the
109
					foreign keys as its prefix columns */
110
	DB_PARENT_NO_INDEX,		/* the parent table does not
111
					have an index that contains the
112
					foreign keys as its prefix columns */
1819.7.68 by Stewart Smith
Merge initial InnoDB+ import.
113
641.1.2 by Monty Taylor
Imported 1.0.1 with clean - with no changes.
114
	/* The following are partial failure codes */
115
	DB_FAIL = 1000,
116
	DB_OVERFLOW,
117
	DB_UNDERFLOW,
118
	DB_STRONG_FAIL,
119
	DB_ZIP_OVERFLOW,
120
	DB_RECORD_NOT_FOUND = 1500,
121
	DB_END_OF_INDEX
122
};
123
124
#endif