diff options
author | Praveenkumar Hulakund <praveenkumar.hulakund@oracle.com> | 2012-07-26 23:53:45 +0530 |
---|---|---|
committer | Praveenkumar Hulakund <praveenkumar.hulakund@oracle.com> | 2012-07-26 23:53:45 +0530 |
commit | 3785ca65f5e05b32ed5fccec3186532b9969524b (patch) | |
tree | 83029a796049094a284c2ddcefeef09bfc80419a /tests | |
parent | 2e1f259f7420f8bf8901c1a4eb866f0a5ad5438b (diff) | |
parent | bb64579de82c98f7ca6d73a56b29ef8655469b7f (diff) | |
download | mariadb-git-3785ca65f5e05b32ed5fccec3186532b9969524b.tar.gz |
Merge from 5.1 to 5.5
Diffstat (limited to 'tests')
-rw-r--r-- | tests/mysql_client_fw.c | 16 | ||||
-rw-r--r-- | tests/mysql_client_test.c | 7 |
2 files changed, 16 insertions, 7 deletions
diff --git a/tests/mysql_client_fw.c b/tests/mysql_client_fw.c index 5a305dbcb19..11f81d86caa 100644 --- a/tests/mysql_client_fw.c +++ b/tests/mysql_client_fw.c @@ -48,6 +48,7 @@ static unsigned int opt_count= 0; static unsigned int iter_count= 0; static my_bool have_innodb= FALSE; static char *opt_plugin_dir= 0, *opt_default_auth= 0; +static unsigned int opt_drop_db= 1; static const char *opt_basedir= "./"; static const char *opt_vardir= "mysql-test/var"; @@ -96,7 +97,7 @@ DBUG_PRINT("test", ("name: %s", str)); \ static void print_error(const char *msg); static void print_st_error(MYSQL_STMT *stmt, const char *msg); -static void client_disconnect(MYSQL* mysql, my_bool drop_db); +static void client_disconnect(MYSQL* mysql); /* @@ -370,7 +371,7 @@ static MYSQL* client_connect(ulong flag, uint protocol, my_bool auto_reconnect) /* Close the connection */ -static void client_disconnect(MYSQL* mysql, my_bool drop_db) +static void client_disconnect(MYSQL* mysql) { static char query[MAX_TEST_QUERY_LENGTH]; @@ -378,7 +379,7 @@ static void client_disconnect(MYSQL* mysql, my_bool drop_db) if (mysql) { - if (drop_db) + if (opt_drop_db) { if (!opt_silent) fprintf(stdout, "\n dropping the test database '%s' ...", current_db); @@ -1162,6 +1163,8 @@ static struct my_option client_test_long_options[] = &opt_count, 0, GET_UINT, REQUIRED_ARG, 1, 0, 0, 0, 0, 0}, {"database", 'D', "Database to use", &opt_db, &opt_db, 0, GET_STR_ALLOC, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, +{"do-not-drop-database", 'd', "Do not drop database while disconnecting", + 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}, {"debug", '#', "Output debug log", &default_dbug_option, &default_dbug_option, 0, GET_STR, OPT_ARG, 0, 0, 0, 0, 0, 0}, {"help", '?', "Display this help and exit", 0, 0, 0, GET_NO_ARG, NO_ARG, 0, @@ -1265,6 +1268,9 @@ char *argument) else opt_silent++; break; + case 'd': + opt_drop_db= 0; + break; case 'A': /* When the embedded server is being tested, the test suite needs to be @@ -1389,7 +1395,7 @@ int main(int argc, char **argv) fprintf(stderr, "\n\nGiven test not found: '%s'\n", *argv); fprintf(stderr, "See legal test names with %s -T\n\nAborting!\n", my_progname); - client_disconnect(mysql, 1); + client_disconnect(mysql); free_defaults(defaults_argv); exit(1); } @@ -1402,7 +1408,7 @@ int main(int argc, char **argv) /* End of tests */ } - client_disconnect(mysql, 1); /* disconnect from server */ + client_disconnect(mysql); /* disconnect from server */ free_defaults(defaults_argv); print_test_output(); diff --git a/tests/mysql_client_test.c b/tests/mysql_client_test.c index 7f07a245187..97ea018b280 100644 --- a/tests/mysql_client_test.c +++ b/tests/mysql_client_test.c @@ -17609,7 +17609,8 @@ static void test_bug43560(void) const char* values[] = {"eins", "zwei", "drei", "viele", NULL}; const char insert_str[] = "INSERT INTO t1 (c2) VALUES (?)"; unsigned long length; - + const unsigned int drop_db= opt_drop_db; + DBUG_ENTER("test_bug43560"); myheader("test_bug43560"); @@ -17674,9 +17675,11 @@ static void test_bug43560(void) rc= mysql_stmt_execute(stmt); DIE_UNLESS(rc && mysql_stmt_errno(stmt) == CR_SERVER_LOST); - client_disconnect(conn, 0); + opt_drop_db= 0; + client_disconnect(conn); rc= mysql_query(mysql, "DROP TABLE t1"); myquery(rc); + opt_drop_db= drop_db; DBUG_VOID_RETURN; } |