Commit 9c02a351 authored by unknown's avatar unknown
Browse files

Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0

into gluh.mysql.r18.ru:/home/gluh/MySQL/mysql-5.0.last

parents 295db433 3f0cb69a
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -571,8 +571,11 @@ where table_schema='information_schema' limit 2;
TABLE_NAME	TABLE_TYPE	ENGINE
SCHEMATA	TEMPORARY	MyISAM
TABLES	TEMPORARY	MyISAM
show tables from information_schema like "t%";
Tables_in_information_schema (t%)
show tables from information_schema like "T%";
Tables_in_information_schema (T%)
TABLES
TABLE_PRIVILEGES
TABLE_CONSTRAINTS
create database information_schema;
ERROR HY000: Can't create database 'information_schema'; database exists
use information_schema;
+1 −1
Original line number Diff line number Diff line
@@ -281,7 +281,7 @@ drop view vo;
select TABLE_NAME,TABLE_TYPE,ENGINE
from information_schema.tables 
where table_schema='information_schema' limit 2;
show tables from information_schema like "t%";
show tables from information_schema like "T%";

--error 1007
create database information_schema;
+1 −0
Original line number Diff line number Diff line
@@ -5339,6 +5339,7 @@ TABLE_LIST *st_select_lex::add_table_to_list(THD *thd,
               ptr->table_name, information_schema_name.str);
      DBUG_RETURN(0);
    }
    ptr->schema_table_name= ptr->table_name;
    ptr->schema_table= schema_table;
  }
  ptr->select_lex=  lex->current_select;
+13 −4
Original line number Diff line number Diff line
@@ -1802,7 +1802,7 @@ int get_all_tables(THD *thd, TABLE_LIST *tables, COND *cond)
    res= open_and_lock_tables(thd, show_table_list);
    if (schema_table->process_table(thd, show_table_list,
                                    table, res, show_table_list->db,
                                    show_table_list->table_name))
                                    show_table_list->alias))
    {
      DBUG_RETURN(1);
    }
@@ -1911,7 +1911,8 @@ int get_all_tables(THD *thd, TABLE_LIST *tables, COND *cond)
            show_table_list->lock_type= lock_type;
            res= open_and_lock_tables(thd, show_table_list);
            if (schema_table->process_table(thd, show_table_list, table,
                                            res, base_name, file_name))
                                            res, base_name,
                                            show_table_list->alias))
            {
              DBUG_RETURN(1);
            }
@@ -3183,8 +3184,16 @@ int mysql_schema_table(THD *thd, LEX *lex, TABLE_LIST *table_list)
  }
  table->s->tmp_table= TMP_TABLE;
  table->grant.privilege= SELECT_ACL;
  table->alias_name_used= 0;
  table_list->schema_table_name= table_list->table_name;
  /*
    This test is necessary to make
    case insensitive file systems +
    upper case table names(information schema tables) +
    views
    working correctly
  */
  table->alias_name_used= my_strcasecmp(table_alias_charset,
                                        table_list->schema_table_name,
                                        table_list->alias);
  table_list->table_name= (char*) table->s->table_name;
  table_list->table= table;
  table->next= thd->derived_tables;