Loading mysql-test/r/information_schema.result +13 −0 Original line number Diff line number Diff line Loading @@ -1084,3 +1084,16 @@ DROP TABLE t1; DROP VIEW v1; DROP FUNCTION func1; DROP FUNCTION func2; create database mysqltest; create table mysqltest.t1(a int); select table_schema from information_schema.tables where table_schema='mysqltest'; table_schema drop database mysqltest; select column_type, group_concat(table_schema, '.', table_name), count(*) as num from information_schema.columns where table_schema='information_schema' and (column_type = 'varchar(7)' or column_type = 'varchar(20)') group by column_type order by num; column_type group_concat(table_schema, '.', table_name) num varchar(20) information_schema.COLUMNS 1 varchar(7) information_schema.ROUTINES,information_schema.VIEWS 2 mysql-test/t/information_schema.test +19 −0 Original line number Diff line number Diff line Loading @@ -790,3 +790,22 @@ DROP TABLE t1; DROP VIEW v1; DROP FUNCTION func1; DROP FUNCTION func2; # # Bug #15851 Unlistable directories yield no info from information_schema # create database mysqltest; create table mysqltest.t1(a int); --exec chmod -r $MYSQL_TEST_DIR/var/master-data/mysqltest select table_schema from information_schema.tables where table_schema='mysqltest'; --exec chmod +r $MYSQL_TEST_DIR/var/master-data/mysqltest drop database mysqltest; # # Bug#15307 GROUP_CONCAT() with ORDER BY returns empty set on information_schema # select column_type, group_concat(table_schema, '.', table_name), count(*) as num from information_schema.columns where table_schema='information_schema' and (column_type = 'varchar(7)' or column_type = 'varchar(20)') group by column_type order by num; mysys/my_lib.c +2 −0 Original line number Diff line number Diff line Loading @@ -170,6 +170,8 @@ MY_DIR *my_dir(const char *path, myf MyFlags) bzero(finfo.mystat, sizeof(MY_STAT)); VOID(strmov(tmp_file,dp->d_name)); VOID(my_stat(tmp_path, finfo.mystat, MyFlags)); if (!(finfo.mystat->st_mode & MY_S_IREAD)) continue; } else finfo.mystat= NULL; Loading sql/sql_prepare.cc +2 −0 Original line number Diff line number Diff line Loading @@ -2111,6 +2111,8 @@ void reinit_stmt_before_use(THD *thd, LEX *lex) were closed in the end of previous prepare or execute call. */ tables->table= 0; /* Reset is_schema_table_processed value(needed for I_S tables */ tables->is_schema_table_processed= FALSE; if (tables->prep_on_expr) { Loading sql/sql_select.cc +6 −0 Original line number Diff line number Diff line Loading @@ -11582,6 +11582,12 @@ create_sort_index(THD *thd, JOIN *join, ORDER *order, goto err; } } /* Fill schema tables with data before filesort if it's necessary */ if ((join->select_lex->options & OPTION_SCHEMA_TABLE) && get_schema_tables_result(join)) goto err; if (table->s->tmp_table) table->file->info(HA_STATUS_VARIABLE); // Get record count table->sort.found_records=filesort(thd, table,sortorder, length, Loading Loading
mysql-test/r/information_schema.result +13 −0 Original line number Diff line number Diff line Loading @@ -1084,3 +1084,16 @@ DROP TABLE t1; DROP VIEW v1; DROP FUNCTION func1; DROP FUNCTION func2; create database mysqltest; create table mysqltest.t1(a int); select table_schema from information_schema.tables where table_schema='mysqltest'; table_schema drop database mysqltest; select column_type, group_concat(table_schema, '.', table_name), count(*) as num from information_schema.columns where table_schema='information_schema' and (column_type = 'varchar(7)' or column_type = 'varchar(20)') group by column_type order by num; column_type group_concat(table_schema, '.', table_name) num varchar(20) information_schema.COLUMNS 1 varchar(7) information_schema.ROUTINES,information_schema.VIEWS 2
mysql-test/t/information_schema.test +19 −0 Original line number Diff line number Diff line Loading @@ -790,3 +790,22 @@ DROP TABLE t1; DROP VIEW v1; DROP FUNCTION func1; DROP FUNCTION func2; # # Bug #15851 Unlistable directories yield no info from information_schema # create database mysqltest; create table mysqltest.t1(a int); --exec chmod -r $MYSQL_TEST_DIR/var/master-data/mysqltest select table_schema from information_schema.tables where table_schema='mysqltest'; --exec chmod +r $MYSQL_TEST_DIR/var/master-data/mysqltest drop database mysqltest; # # Bug#15307 GROUP_CONCAT() with ORDER BY returns empty set on information_schema # select column_type, group_concat(table_schema, '.', table_name), count(*) as num from information_schema.columns where table_schema='information_schema' and (column_type = 'varchar(7)' or column_type = 'varchar(20)') group by column_type order by num;
mysys/my_lib.c +2 −0 Original line number Diff line number Diff line Loading @@ -170,6 +170,8 @@ MY_DIR *my_dir(const char *path, myf MyFlags) bzero(finfo.mystat, sizeof(MY_STAT)); VOID(strmov(tmp_file,dp->d_name)); VOID(my_stat(tmp_path, finfo.mystat, MyFlags)); if (!(finfo.mystat->st_mode & MY_S_IREAD)) continue; } else finfo.mystat= NULL; Loading
sql/sql_prepare.cc +2 −0 Original line number Diff line number Diff line Loading @@ -2111,6 +2111,8 @@ void reinit_stmt_before_use(THD *thd, LEX *lex) were closed in the end of previous prepare or execute call. */ tables->table= 0; /* Reset is_schema_table_processed value(needed for I_S tables */ tables->is_schema_table_processed= FALSE; if (tables->prep_on_expr) { Loading
sql/sql_select.cc +6 −0 Original line number Diff line number Diff line Loading @@ -11582,6 +11582,12 @@ create_sort_index(THD *thd, JOIN *join, ORDER *order, goto err; } } /* Fill schema tables with data before filesort if it's necessary */ if ((join->select_lex->options & OPTION_SCHEMA_TABLE) && get_schema_tables_result(join)) goto err; if (table->s->tmp_table) table->file->info(HA_STATUS_VARIABLE); // Get record count table->sort.found_records=filesort(thd, table,sortorder, length, Loading