Loading sql/set_var.cc +1 −1 Original line number Diff line number Diff line Loading @@ -3905,7 +3905,7 @@ bool sys_var_opt_readonly::update(THD *thd, set_var *var) can cause to wait on a read lock, it's required for the client application to unlock everything, and acceptable for the server to wait on all locks. */ if (close_cached_tables(thd, true, NULL, false)) if (result= close_cached_tables(thd, true, NULL, false)) goto end_with_read_lock; if (result= make_global_read_lock_block_commit(thd)) Loading sql/sql_table.cc +10 −3 Original line number Diff line number Diff line Loading @@ -5405,16 +5405,19 @@ bool mysql_alter_table(THD *thd,char *new_db, char *new_name, { my_message(ER_LOCK_OR_ACTIVE_TRANSACTION, ER(ER_LOCK_OR_ACTIVE_TRANSACTION), MYF(0)); DBUG_RETURN(1); DBUG_RETURN(TRUE); } if (wait_if_global_read_lock(thd,0,1)) DBUG_RETURN(1); DBUG_RETURN(TRUE); VOID(pthread_mutex_lock(&LOCK_open)); if (lock_table_names(thd, table_list)) { error= TRUE; goto view_err; } error=0; error= FALSE; if (!do_rename(thd, table_list, new_db, new_name, new_name, 1)) { if (mysql_bin_log.is_open()) Loading Loading @@ -5555,6 +5558,10 @@ bool mysql_alter_table(THD *thd,char *new_db, char *new_name, error=table->file->disable_indexes(HA_KEY_SWITCH_NONUNIQ_SAVE); /* COND_refresh will be signaled in close_thread_tables() */ break; default: DBUG_ASSERT(FALSE); error= 0; break; } if (error == HA_ERR_WRONG_COMMAND) { Loading Loading
sql/set_var.cc +1 −1 Original line number Diff line number Diff line Loading @@ -3905,7 +3905,7 @@ bool sys_var_opt_readonly::update(THD *thd, set_var *var) can cause to wait on a read lock, it's required for the client application to unlock everything, and acceptable for the server to wait on all locks. */ if (close_cached_tables(thd, true, NULL, false)) if (result= close_cached_tables(thd, true, NULL, false)) goto end_with_read_lock; if (result= make_global_read_lock_block_commit(thd)) Loading
sql/sql_table.cc +10 −3 Original line number Diff line number Diff line Loading @@ -5405,16 +5405,19 @@ bool mysql_alter_table(THD *thd,char *new_db, char *new_name, { my_message(ER_LOCK_OR_ACTIVE_TRANSACTION, ER(ER_LOCK_OR_ACTIVE_TRANSACTION), MYF(0)); DBUG_RETURN(1); DBUG_RETURN(TRUE); } if (wait_if_global_read_lock(thd,0,1)) DBUG_RETURN(1); DBUG_RETURN(TRUE); VOID(pthread_mutex_lock(&LOCK_open)); if (lock_table_names(thd, table_list)) { error= TRUE; goto view_err; } error=0; error= FALSE; if (!do_rename(thd, table_list, new_db, new_name, new_name, 1)) { if (mysql_bin_log.is_open()) Loading Loading @@ -5555,6 +5558,10 @@ bool mysql_alter_table(THD *thd,char *new_db, char *new_name, error=table->file->disable_indexes(HA_KEY_SWITCH_NONUNIQ_SAVE); /* COND_refresh will be signaled in close_thread_tables() */ break; default: DBUG_ASSERT(FALSE); error= 0; break; } if (error == HA_ERR_WRONG_COMMAND) { Loading