diff options
author | unknown <aivanov@mysql.com> | 2006-04-20 23:09:49 +0400 |
---|---|---|
committer | unknown <aivanov@mysql.com> | 2006-04-20 23:09:49 +0400 |
commit | 66ee876ba3b50fba4ed159eb23587bf02fc2d44b (patch) | |
tree | c521f14ae71f3ca4157aef4b3a2b63f929314bf6 /innobase/include | |
parent | 5a19f3bc71b9db630fac01561ffc6f37434ac509 (diff) | |
download | mariadb-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.h | 9 | ||||
-rw-r--r-- | innobase/include/dict0mem.h | 7 | ||||
-rw-r--r-- | innobase/include/univ.i | 3 |
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" |