summaryrefslogtreecommitdiff
path: root/innobase/dict/dict0dict.c
diff options
context:
space:
mode:
authorunknown <monty@mashka.mysql.fi>2002-08-08 03:29:36 +0300
committerunknown <monty@mashka.mysql.fi>2002-08-08 03:29:36 +0300
commit8d417fa8487cddec56e49ff614ff87a7a5ce3d86 (patch)
treeda5d29e4a08217e2773b16c5aef05ab734c760e4 /innobase/dict/dict0dict.c
parentadb29bc1546f2c91a2dd671968f21d206301182d (diff)
parent3a4baab12fda330c432a0681b5d7f87241c0c9ca (diff)
downloadmariadb-git-8d417fa8487cddec56e49ff614ff87a7a5ce3d86.tar.gz
merge
BitKeeper/etc/logging_ok: auto-union include/my_sys.h: Auto merged innobase/include/dyn0dyn.h: Auto merged innobase/include/dyn0dyn.ic: Auto merged myisam/mi_check.c: Auto merged sql/ha_berkeley.h: Auto merged sql/ha_innodb.h: Auto merged sql/item_func.cc: Auto merged sql/item_func.h: Auto merged sql/item_timefunc.h: Auto merged sql/lex.h: Auto merged sql/mysql_priv.h: Auto merged sql/mysqld.cc: Auto merged sql/set_var.cc: Auto merged sql/sql_cache.cc: Auto merged sql/sql_delete.cc: Auto merged sql/sql_parse.cc: Auto merged sql/sql_select.cc: Auto merged sql/sql_update.cc: Auto merged sql/sql_yacc.yy: Auto merged
Diffstat (limited to 'innobase/dict/dict0dict.c')
-rw-r--r--innobase/dict/dict0dict.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/innobase/dict/dict0dict.c b/innobase/dict/dict0dict.c
index b053724c0e3..5abec8dbb1e 100644
--- a/innobase/dict/dict0dict.c
+++ b/innobase/dict/dict0dict.c
@@ -261,7 +261,7 @@ dict_table_get_index_noninline(
{
return(dict_table_get_index(table, name));
}
-
+
/************************************************************************
Initializes the autoinc counter. It is not an error to initialize an already
initialized counter. */
@@ -2810,6 +2810,12 @@ dict_update_statistics_low(
index = dict_table_get_first_index(table);
+ if (index == NULL) {
+ /* Table definition is corrupt */
+
+ return;
+ }
+
while (index) {
size = btr_get_size(index, BTR_TOTAL_SIZE);
@@ -3201,6 +3207,14 @@ dict_print_info_on_foreign_keys(
buf2 += sprintf(buf2, ")");
+ if (foreign->type == DICT_FOREIGN_ON_DELETE_CASCADE) {
+ buf2 += sprintf(buf2, " ON DELETE CASCADE");
+ }
+
+ if (foreign->type == DICT_FOREIGN_ON_DELETE_SET_NULL) {
+ buf2 += sprintf(buf2, " ON DELETE SET NULL");
+ }
+
foreign = UT_LIST_GET_NEXT(foreign_list, foreign);
}