diff options
author | unknown <heikki@donna.mysql.fi> | 2002-02-08 23:24:36 +0200 |
---|---|---|
committer | unknown <heikki@donna.mysql.fi> | 2002-02-08 23:24:36 +0200 |
commit | 17b2cd98c9b142fb4414cde86a3ce4026c486bc8 (patch) | |
tree | f718275499aebb5dcdef5c9071f169c6afbc02b2 /innobase/dict | |
parent | 73edf19b0c0a06e0271090002c6bd33df886d87b (diff) | |
download | mariadb-git-17b2cd98c9b142fb4414cde86a3ce4026c486bc8.tar.gz |
dict0crea.c:
Add some error messages to help in tracking Harald Fuchs' foreign key failure
innobase/dict/dict0crea.c:
Add some error messages to help in tracking Harald Fuchs' foreign key failure
Diffstat (limited to 'innobase/dict')
-rw-r--r-- | innobase/dict/dict0crea.c | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/innobase/dict/dict0crea.c b/innobase/dict/dict0crea.c index f60db829380..ddaad90af34 100644 --- a/innobase/dict/dict0crea.c +++ b/innobase/dict/dict0crea.c @@ -1235,16 +1235,21 @@ loop: if (error != DB_SUCCESS) { fprintf(stderr, - "InnoDB: foreign constraint creation failed;\n" + "InnoDB: Foreign key constraint creation failed:\n" "InnoDB: internal error number %lu\n", error); - ut_a(error == DB_OUT_OF_FILE_SPACE); - - fprintf(stderr, "InnoDB: tablespace is full\n"); - - trx_general_rollback_for_mysql(trx, FALSE, NULL); - - error = DB_MUST_GET_MORE_FILE_SPACE; + if (error == DB_DUPLICATE_KEY) { + fprintf(stderr, + "InnoDB: Duplicate key error in system table %s index %s\n", + ((dict_index_t*)trx->error_info)->table_name, + ((dict_index_t*)trx->error_info)->name); + + fprintf(stderr, + "InnoDB: Maybe the internal data dictionary of InnoDB is\n" + "InnoDB: out-of-sync from the .frm files of your tables.\n" + "InnoDB: See section 15.1 Troubleshooting data dictionary operations\n" + "InnoDB: at http://www.innodb.com/ibman.html\n"); + } return(error); } |