From 619232cc8b1e9a5c6da9145e46dddae999cec260 Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 17 Oct 2002 19:34:02 +0300 Subject: Fixed three bugs in mysqlcheck and changed documentation for mysqld_multi client/mysqlcheck.c: Fixed three bugs in mysqlcheck: 1. mysqlcheck died with error Got error: 1103: Incorrect table name when executing 'REPAIR TABLE' 2. --auto-repair used together with --all-in-1 (-1) tried to fix next table in a row, independent whether the next table was OK or corrupted, in case an error was found from a previous table and the previous table remained unfixed. 3. --auto-repair didn't work at all when -1 option wasn't used; broken tables were not noticed at all. scripts/mysqld_multi.sh: Changed documentation --- client/mysqlcheck.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'client/mysqlcheck.c') diff --git a/client/mysqlcheck.c b/client/mysqlcheck.c index 394555f37a9..24b67a60255 100644 --- a/client/mysqlcheck.c +++ b/client/mysqlcheck.c @@ -16,7 +16,7 @@ /* By Jani Tolonen, 2001-04-20, MySQL Development Team */ -#define CHECK_VERSION "2.4.1" +#define CHECK_VERSION "2.4.2" #include "client_priv.h" #include @@ -463,7 +463,7 @@ static int handle_request_for_tables(char *tables, uint length) if (!(query =(char *) my_malloc((sizeof(char)*(length+110)), MYF(MY_WME)))) return 1; - sprintf(query, "%s TABLE `%s` %s", op, tables, options); + sprintf(query, "%s TABLE %s %s", op, tables, options); if (mysql_query(sock, query)) { sprintf(message, "when executing '%s TABLE `%s` %s", op, tables,options); @@ -493,12 +493,9 @@ static void print_result() if (status) { - if (found_error) - { - if (what_to_do != DO_REPAIR && opt_auto_repair && - (!opt_fast || strcmp(row[3],"OK"))) - insert_dynamic(&tables4repair, row[0]); - } + if (found_error && opt_auto_repair && what_to_do != DO_REPAIR && + (!opt_fast || strcmp(row[3],"OK"))) + insert_dynamic(&tables4repair, prev); found_error=0; if (opt_silent) continue; @@ -515,6 +512,9 @@ static void print_result() strmov(prev, row[0]); putchar('\n'); } + if (found_error && opt_auto_repair && what_to_do != DO_REPAIR && + (!opt_fast || strcmp(row[3],"OK"))) + insert_dynamic(&tables4repair, prev); mysql_free_result(res); } -- cgit v1.2.1