summaryrefslogtreecommitdiff
path: root/storage/innobase/dict/dict0dict.cc
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2019-04-24 12:03:11 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2019-04-24 12:03:11 +0300
commitbfb0726fc24acb896e54bc7ef7536ad1aab9d574 (patch)
treea48e5d91d8427fefe2121128a4b3416d8d76e8a3 /storage/innobase/dict/dict0dict.cc
parent9dcfd6be94bd83d14fd48d69ce487eb0ea3fe37f (diff)
parentd5da8ae04d57556f517c0f03afeafe73c6cc75d1 (diff)
downloadmariadb-git-bfb0726fc24acb896e54bc7ef7536ad1aab9d574.tar.gz
Merge 5.5 into 10.1
Diffstat (limited to 'storage/innobase/dict/dict0dict.cc')
-rw-r--r--storage/innobase/dict/dict0dict.cc18
1 files changed, 13 insertions, 5 deletions
diff --git a/storage/innobase/dict/dict0dict.cc b/storage/innobase/dict/dict0dict.cc
index 06c63fd7121..1e9d9f8d74e 100644
--- a/storage/innobase/dict/dict0dict.cc
+++ b/storage/innobase/dict/dict0dict.cc
@@ -4445,11 +4445,19 @@ dict_create_foreign_constraints_low(
}
orig = ptr;
- ptr = dict_accept(cs, ptr, "TABLE", &success);
-
- if (!success) {
-
- goto loop;
+ for (;;) {
+ ptr = dict_accept(cs, ptr, "TABLE", &success);
+ if (success) {
+ break;
+ }
+ ptr = dict_accept(cs, ptr, "ONLINE", &success);
+ if (success) {
+ continue;
+ }
+ ptr = dict_accept(cs, ptr, "IGNORE", &success);
+ if (!success) {
+ goto loop;
+ }
}
/* We are doing an ALTER TABLE: scan the table name we are altering */