summaryrefslogtreecommitdiff
path: root/innobase/include
diff options
context:
space:
mode:
authorunknown <aivanov@mysql.com>2006-04-20 23:09:49 +0400
committerunknown <aivanov@mysql.com>2006-04-20 23:09:49 +0400
commit66ee876ba3b50fba4ed159eb23587bf02fc2d44b (patch)
treec521f14ae71f3ca4157aef4b3a2b63f929314bf6 /innobase/include
parent5a19f3bc71b9db630fac01561ffc6f37434ac509 (diff)
downloadmariadb-git-66ee876ba3b50fba4ed159eb23587bf02fc2d44b.tar.gz
Applied innodb-4.1-ss22 snapshot.
Fix BUG#16814: "SHOW INNODB STATUS format error in LATEST FOREIGN KEY ERROR section" Add a missing newline to the LAST FOREIGN KEY ERROR section in SHOW INNODB STATUS output. Fix BUG#18934: "InnoDB crashes when table uses column names like DB_ROW_ID". Refuse tables that use reserved column names. innobase/dict/dict0dict.c: Applied innodb-4.1-ss22 snapshot. dict_foreign_error_report(): Always print a newline after invoking dict_print_info_on_foreign_key_in_create_format() (Bug#16814). Refuse tables that use reserved column names (Bug#18934). innobase/dict/dict0mem.c: Applied innodb-4.1-ss22 snapshot. Refuse tables that use reserved column names (Bug#18934). innobase/include/dict0dict.h: Applied innodb-4.1-ss22 snapshot. Refuse tables that use reserved column names (Bug#18934). innobase/include/dict0mem.h: Applied innodb-4.1-ss22 snapshot. Refuse tables that use reserved column names (Bug#18934). innobase/include/univ.i: Applied innodb-4.1-ss22 snapshot. innobase/row/row0mysql.c: Applied innodb-4.1-ss22 snapshot. Refuse tables that use reserved column names (Bug#18934).
Diffstat (limited to 'innobase/include')
-rw-r--r--innobase/include/dict0dict.h9
-rw-r--r--innobase/include/dict0mem.h7
-rw-r--r--innobase/include/univ.i3
3 files changed, 19 insertions, 0 deletions
diff --git a/innobase/include/dict0dict.h b/innobase/include/dict0dict.h
index bf1382e8bb2..1226055e135 100644
--- a/innobase/include/dict0dict.h
+++ b/innobase/include/dict0dict.h
@@ -98,6 +98,15 @@ ulint
dict_col_get_clust_pos(
/*===================*/
dict_col_t* col);
+/********************************************************************
+If the given column name is reserved for InnoDB system columns, return
+TRUE. */
+
+ibool
+dict_col_name_is_reserved(
+/*======================*/
+ /* out: TRUE if name is reserved */
+ const char* name); /* in: column name */
/************************************************************************
Initializes the autoinc counter. It is not an error to initialize an already
initialized counter. */
diff --git a/innobase/include/dict0mem.h b/innobase/include/dict0mem.h
index 1e496a25477..5c3a4ed76d4 100644
--- a/innobase/include/dict0mem.h
+++ b/innobase/include/dict0mem.h
@@ -55,6 +55,13 @@ dict_mem_table_create(
is ignored if the table is made
a member of a cluster */
ulint n_cols); /* in: number of columns */
+/********************************************************************
+Free a table memory object. */
+
+void
+dict_mem_table_free(
+/*================*/
+ dict_table_t* table); /* in: table */
/**************************************************************************
Creates a cluster memory object. */
diff --git a/innobase/include/univ.i b/innobase/include/univ.i
index 625978ffc38..6939edbcaf8 100644
--- a/innobase/include/univ.i
+++ b/innobase/include/univ.i
@@ -242,6 +242,9 @@ contains the sum of the following flag and the locally stored len. */
#define UNIV_EXTERN_STORAGE_FIELD (UNIV_SQL_NULL - UNIV_PAGE_SIZE)
+/* Compile-time constant of the given array's size. */
+#define UT_ARR_SIZE(a) (sizeof(a) / sizeof((a)[0]))
+
#include <stdio.h>
#include "ut0dbg.h"
#include "ut0ut.h"