diff options
-rw-r--r-- | client/mysqldump.c | 23 | ||||
-rw-r--r-- | mysql-test/r/mysqldump.result | 4 |
2 files changed, 25 insertions, 2 deletions
diff --git a/client/mysqldump.c b/client/mysqldump.c index 976a6642ea0..f8314444051 100644 --- a/client/mysqldump.c +++ b/client/mysqldump.c @@ -203,7 +203,9 @@ static struct my_option my_long_options[] = {"default-character-set", OPT_DEFAULT_CHARSET, "Set the default character set.", (gptr*) &default_charset, (gptr*) &default_charset, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, - {"delayed-insert", OPT_DELAYED, "Insert rows with INSERT DELAYED.", + {"delayed-insert", OPT_DELAYED, "Insert rows with INSERT DELAYED; " + "currently ignored because of http://bugs.mysql.com/bug.php?id=7815 " + "but will be re-enabled later", (gptr*) &opt_delayed, (gptr*) &opt_delayed, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, {"delete-master-logs", OPT_DELETE_MASTER_LOGS, @@ -708,6 +710,25 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)), } break; } +#ifndef REMOVE_THIS_CODE_WHEN_FIX_BUG_7815 + case (int) OPT_DELAYED: + /* + Because of http://bugs.mysql.com/bug.php?id=7815, we disable + --delayed-insert; when the bug gets fixed by checking the storage engine + (using the table definition cache) before printing INSERT DELAYED, we + can correct the option's description and re-enable it again (scheduled + for later 5.0 or 5.1 versions). + It's ok to do the if() below as get_one_option is called after + opt_delayed is set. + */ + if (opt_delayed) + { + fprintf(stderr, "Warning: ignoring --delayed-insert (as explained " + "in the output of 'mysqldump --help').\n"); + opt_delayed= 0; + } + break; +#endif } return 0; } diff --git a/mysql-test/r/mysqldump.result b/mysql-test/r/mysqldump.result index 6d03e8603cb..aa453c4eb31 100644 --- a/mysql-test/r/mysqldump.result +++ b/mysql-test/r/mysqldump.result @@ -679,7 +679,9 @@ CREATE TABLE `t1` ( /*!40000 ALTER TABLE `t1` DISABLE KEYS */; -INSERT DELAYED IGNORE INTO `t1` VALUES (1),(2),(3),(4),(5),(6); +LOCK TABLES `t1` WRITE; +INSERT IGNORE INTO `t1` VALUES (1),(2),(3),(4),(5),(6); +UNLOCK TABLES; /*!40000 ALTER TABLE `t1` ENABLE KEYS */; /*!40101 SET SQL_MODE=@OLD_SQL_MODE */; |