summaryrefslogtreecommitdiff
path: root/storage/innobase/include/db0err.h
diff options
context:
space:
mode:
Diffstat (limited to 'storage/innobase/include/db0err.h')
-rw-r--r--storage/innobase/include/db0err.h110
1 files changed, 68 insertions, 42 deletions
diff --git a/storage/innobase/include/db0err.h b/storage/innobase/include/db0err.h
index ed7ce151718..747e9b5364e 100644
--- a/storage/innobase/include/db0err.h
+++ b/storage/innobase/include/db0err.h
@@ -1,7 +1,24 @@
-/******************************************************
-Global error codes for the database
+/*****************************************************************************
+
+Copyright (c) 1996, 2009, Innobase Oy. All Rights Reserved.
+
+This program is free software; you can redistribute it and/or modify it under
+the terms of the GNU General Public License as published by the Free Software
+Foundation; version 2 of the License.
+
+This program is distributed in the hope that it will be useful, but WITHOUT
+ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License along with
+this program; if not, write to the Free Software Foundation, Inc., 59 Temple
+Place, Suite 330, Boston, MA 02111-1307 USA
-(c) 1996 Innobase Oy
+*****************************************************************************/
+
+/**************************************************//**
+@file include/db0err.h
+Global error codes for the database
Created 5/24/1996 Heikki Tuuri
*******************************************************/
@@ -10,71 +27,80 @@ Created 5/24/1996 Heikki Tuuri
#define db0err_h
-#define DB_SUCCESS 10
+enum db_err {
+ DB_SUCCESS = 10,
-/* The following are error codes */
-#define DB_ERROR 11
-#define DB_OUT_OF_MEMORY 12
-#define DB_OUT_OF_FILE_SPACE 13
-#define DB_LOCK_WAIT 14
-#define DB_DEADLOCK 15
-#define DB_ROLLBACK 16
-#define DB_DUPLICATE_KEY 17
-#define DB_QUE_THR_SUSPENDED 18
-#define DB_MISSING_HISTORY 19 /* required history data has been
+ /* The following are error codes */
+ DB_ERROR,
+ DB_INTERRUPTED,
+ DB_OUT_OF_MEMORY,
+ DB_OUT_OF_FILE_SPACE,
+ DB_LOCK_WAIT,
+ DB_DEADLOCK,
+ DB_ROLLBACK,
+ DB_DUPLICATE_KEY,
+ DB_QUE_THR_SUSPENDED,
+ DB_MISSING_HISTORY, /* required history data has been
deleted due to lack of space in
rollback segment */
-#define DB_CLUSTER_NOT_FOUND 30
-#define DB_TABLE_NOT_FOUND 31
-#define DB_MUST_GET_MORE_FILE_SPACE 32 /* the database has to be stopped
+ DB_CLUSTER_NOT_FOUND = 30,
+ DB_TABLE_NOT_FOUND,
+ DB_MUST_GET_MORE_FILE_SPACE, /* the database has to be stopped
and restarted with more file space */
-#define DB_TABLE_IS_BEING_USED 33
-#define DB_TOO_BIG_RECORD 34 /* a record in an index would become
- bigger than 1/2 free space in a page
- frame */
-#define DB_LOCK_WAIT_TIMEOUT 35 /* lock wait lasted too long */
-#define DB_NO_REFERENCED_ROW 36 /* referenced key value not found
+ DB_TABLE_IS_BEING_USED,
+ DB_TOO_BIG_RECORD, /* a record in an index would not fit
+ on a compressed page, or it would
+ become bigger than 1/2 free space in
+ an uncompressed page frame */
+ DB_LOCK_WAIT_TIMEOUT, /* lock wait lasted too long */
+ DB_NO_REFERENCED_ROW, /* referenced key value not found
for a foreign key in an insert or
update of a row */
-#define DB_ROW_IS_REFERENCED 37 /* cannot delete or update a row
+ DB_ROW_IS_REFERENCED, /* cannot delete or update a row
because it contains a key value
which is referenced */
-#define DB_CANNOT_ADD_CONSTRAINT 38 /* adding a foreign key constraint
+ DB_CANNOT_ADD_CONSTRAINT, /* adding a foreign key constraint
to a table failed */
-#define DB_CORRUPTION 39 /* data structure corruption noticed */
-#define DB_COL_APPEARS_TWICE_IN_INDEX 40/* InnoDB cannot handle an index
+ DB_CORRUPTION, /* data structure corruption noticed */
+ DB_COL_APPEARS_TWICE_IN_INDEX, /* InnoDB cannot handle an index
where same column appears twice */
-#define DB_CANNOT_DROP_CONSTRAINT 41 /* dropping a foreign key constraint
+ DB_CANNOT_DROP_CONSTRAINT, /* dropping a foreign key constraint
from a table failed */
-#define DB_NO_SAVEPOINT 42 /* no savepoint exists with the given
+ DB_NO_SAVEPOINT, /* no savepoint exists with the given
name */
-#define DB_TABLESPACE_ALREADY_EXISTS 43 /* we cannot create a new single-table
+ DB_TABLESPACE_ALREADY_EXISTS, /* we cannot create a new single-table
tablespace because a file of the same
name already exists */
-#define DB_TABLESPACE_DELETED 44 /* tablespace does not exist or is
+ DB_TABLESPACE_DELETED, /* tablespace does not exist or is
being dropped right now */
-#define DB_LOCK_TABLE_FULL 45 /* lock structs have exhausted the
+ DB_LOCK_TABLE_FULL, /* lock structs have exhausted the
buffer pool (for big transactions,
InnoDB stores the lock structs in the
buffer pool) */
-#define DB_FOREIGN_DUPLICATE_KEY 46 /* foreign key constraints
+ DB_FOREIGN_DUPLICATE_KEY, /* foreign key constraints
activated by the operation would
lead to a duplicate key in some
table */
-#define DB_TOO_MANY_CONCURRENT_TRXS 47 /* when InnoDB runs out of the
+ DB_TOO_MANY_CONCURRENT_TRXS, /* when InnoDB runs out of the
preconfigured undo slots, this can
only happen when there are too many
concurrent transactions */
-#define DB_UNSUPPORTED 48 /* when InnoDB sees any artefact or
+ DB_UNSUPPORTED, /* when InnoDB sees any artefact or
a feature that it can't recoginize or
work with e.g., FT indexes created by
a later version of the engine. */
-/* The following are partial failure codes */
-#define DB_FAIL 1000
-#define DB_OVERFLOW 1001
-#define DB_UNDERFLOW 1002
-#define DB_STRONG_FAIL 1003
-#define DB_RECORD_NOT_FOUND 1500
-#define DB_END_OF_INDEX 1501
+
+ DB_PRIMARY_KEY_IS_NULL, /* a column in the PRIMARY KEY
+ was found to be NULL */
+
+ /* The following are partial failure codes */
+ DB_FAIL = 1000,
+ DB_OVERFLOW,
+ DB_UNDERFLOW,
+ DB_STRONG_FAIL,
+ DB_ZIP_OVERFLOW,
+ DB_RECORD_NOT_FOUND = 1500,
+ DB_END_OF_INDEX
+};
#endif