mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merged the code of mwl 106 into the latest 5.3 with mwl 90 pushed.
Resolved all conflicts and failures.
This commit is contained in:
@ -755,7 +755,8 @@ mysqld_show_create(THD *thd, TABLE_LIST *table_list)
|
||||
{
|
||||
Show_create_error_handler view_error_suppressor(thd, table_list);
|
||||
thd->push_internal_handler(&view_error_suppressor);
|
||||
bool error= open_normal_and_derived_tables(thd, table_list, 0);
|
||||
bool error= open_normal_and_derived_tables(thd, table_list, 0,
|
||||
DT_PREPARE | DT_CREATE);
|
||||
thd->pop_internal_handler();
|
||||
if (error && (thd->killed || thd->main_da.is_error()))
|
||||
DBUG_RETURN(TRUE);
|
||||
@ -930,7 +931,8 @@ mysqld_list_fields(THD *thd, TABLE_LIST *table_list, const char *wild)
|
||||
DBUG_ENTER("mysqld_list_fields");
|
||||
DBUG_PRINT("enter",("table: %s",table_list->table_name));
|
||||
|
||||
if (open_normal_and_derived_tables(thd, table_list, 0))
|
||||
if (open_normal_and_derived_tables(thd, table_list, 0,
|
||||
DT_PREPARE | DT_CREATE))
|
||||
DBUG_VOID_RETURN;
|
||||
table= table_list->table;
|
||||
|
||||
@ -1744,7 +1746,7 @@ view_store_options(THD *thd, TABLE_LIST *table, String *buff)
|
||||
static void append_algorithm(TABLE_LIST *table, String *buff)
|
||||
{
|
||||
buff->append(STRING_WITH_LEN("ALGORITHM="));
|
||||
switch ((int8)table->algorithm) {
|
||||
switch ((int16)table->algorithm) {
|
||||
case VIEW_ALGORITHM_UNDEFINED:
|
||||
buff->append(STRING_WITH_LEN("UNDEFINED "));
|
||||
break;
|
||||
@ -3443,8 +3445,9 @@ fill_schema_show_cols_or_idxs(THD *thd, TABLE_LIST *tables,
|
||||
SQLCOM_SHOW_FIELDS is used because it satisfies 'only_view_structure()'
|
||||
*/
|
||||
lex->sql_command= SQLCOM_SHOW_FIELDS;
|
||||
res= open_normal_and_derived_tables(thd, show_table_list,
|
||||
MYSQL_LOCK_IGNORE_FLUSH);
|
||||
res= (open_normal_and_derived_tables(thd, show_table_list,
|
||||
MYSQL_LOCK_IGNORE_FLUSH,
|
||||
DT_PREPARE | DT_CREATE));
|
||||
lex->sql_command= save_sql_command;
|
||||
/*
|
||||
get_all_tables() returns 1 on failure and 0 on success thus
|
||||
@ -3886,8 +3889,9 @@ int get_all_tables(THD *thd, TABLE_LIST *tables, COND *cond)
|
||||
show_table_list->i_s_requested_object=
|
||||
schema_table->i_s_requested_object;
|
||||
DEBUG_SYNC(thd, "before_open_in_get_all_tables");
|
||||
res= open_normal_and_derived_tables(thd, show_table_list,
|
||||
MYSQL_LOCK_IGNORE_FLUSH);
|
||||
res= (open_normal_and_derived_tables(thd, show_table_list,
|
||||
MYSQL_LOCK_IGNORE_FLUSH,
|
||||
DT_PREPARE | DT_CREATE));
|
||||
lex->sql_command= save_sql_command;
|
||||
/*
|
||||
XXX: show_table_list has a flag i_is_requested,
|
||||
|
Reference in New Issue
Block a user