diff options
19 files changed, 558 insertions, 839 deletions
diff --git a/configure.in b/configure.in index b67f060ff30..0878f0331e4 100644 --- a/configure.in +++ b/configure.in @@ -7,7 +7,7 @@ AC_INIT(sql/mysqld.cc) AC_CANONICAL_SYSTEM # The Docs Makefile.am parses this line! # remember to also change ndb version below and update version.c in ndb -AM_INIT_AUTOMAKE(mysql, 5.0.50) +AM_INIT_AUTOMAKE(mysql, 5.0.52) AM_CONFIG_HEADER([include/config.h:config.h.in]) PROTOCOL_VERSION=10 @@ -23,7 +23,7 @@ NDB_SHARED_LIB_VERSION=$NDB_SHARED_LIB_MAJOR_VERSION:0:0 # ndb version NDB_VERSION_MAJOR=5 NDB_VERSION_MINOR=0 -NDB_VERSION_BUILD=50 +NDB_VERSION_BUILD=52 NDB_VERSION_STATUS="" # Set all version vars based on $VERSION. How do we do this more elegant ? diff --git a/libmysql/libmysql.c b/libmysql/libmysql.c index a3919974a97..2e10060f1d3 100644 --- a/libmysql/libmysql.c +++ b/libmysql/libmysql.c @@ -4699,7 +4699,7 @@ int cli_read_binary_rows(MYSQL_STMT *stmt) if (!mysql) { set_stmt_error(stmt, CR_SERVER_LOST, unknown_sqlstate); - return 1; + DBUG_RETURN(1); } net = &mysql->net; diff --git a/mysql-test/include/have_bug25714.inc b/mysql-test/include/have_bug25714.inc index 0c995cd0d4c..0c09ae1a035 100644 --- a/mysql-test/include/have_bug25714.inc +++ b/mysql-test/include/have_bug25714.inc @@ -3,5 +3,5 @@ # --require r/have_bug25714.require disable_query_log; -eval select LENGTH("MYSQL_BUG25714") > 0 as "have_bug25714_exe"; +eval select LENGTH("$MYSQL_BUG25714") > 0 as "have_bug25714_exe"; enable_query_log; diff --git a/mysql-test/suite/funcs_1/README.txt b/mysql-test/suite/funcs_1/README.txt index 4661864cf5e..bf6ac945cb1 100644 --- a/mysql-test/suite/funcs_1/README.txt +++ b/mysql-test/suite/funcs_1/README.txt @@ -110,3 +110,25 @@ Carsten 16.09.2005 4. Fixed datadict_<engine>.result files after the change that added 2 columns to the VIEWS table (DEFINER varchar(77), SECURITY_TYPE varchar(7)). =================================================================== +Matthias 25.08.2007 +------------------- +Fixes for Bugs 30418,30420,30438,30440 +1. Replace error numbers with error names +2. Replace static "InnoDB" (not all time available) used within an + "alter table" by $OTHER_ENGINE_TYPE (set to MEMORY or MyISAM). + Minor adjustment of column data type. +3. Use mysqltest result set sorting in several cases. +4. Avoid any statistics about help tables, because their content + depends on configuration: + developer release - help tables are empty + build release - help tables have content + growing with version +5. Add two help table related tests (one for build, one for developer) + to ensure that informations about help tables within + INFORMATION_SCHEMA.TABLES/STATISTICS are checked. +General note: + Most INFORMATION_SCHEMA properties (table layout, permissions etc.) + are not affected by our variation of the storage engines except + that some properties of our tables using a specific storage + engine become visible. So it makes sense to decompose + this test into a storage engine specific part and a non + storage engine specific part in future. diff --git a/mysql-test/suite/funcs_1/datadict/datadict_master.inc b/mysql-test/suite/funcs_1/datadict/datadict_master.inc index 2c8ceb4e68e..3992f6325eb 100644 --- a/mysql-test/suite/funcs_1/datadict/datadict_master.inc +++ b/mysql-test/suite/funcs_1/datadict/datadict_master.inc @@ -1,5 +1,23 @@ #### suite/funcs_1/datadict/datadict_master.inc # +# Checks of INFORMATION_SCHEMA table properties and content. +# (mostly only the features introduced with MySQL 5.1) +# +# Please set the variable $OTHER_ENGINE_TYPE before sourcing this script. +# $OTHER_ENGINE_TYPE must be +# - <> $engine_type +# - all time available like MyISAM or MEMORY +# +# Last change: +# 2007-08-24 mleich Fixes for the bugs +# #30438 "{memory,myisam,ndb}__datadict" tests fail: +# Use "InnoDB" without checking +# #30418 "datadict" tests (all engines) fail: +# Dependency on the host name for ordering +# #30420 "datadict" tests (all engines) fail: +# Release build has help tables loaded +# + --disable_abort_on_error let $message= . @@ -13,8 +31,9 @@ let $message= . *__datadict.test are started. This can be a result of showing e.g. maximum . values of the number of rows of tables. . -. This .result file has been checked OK with Linux 5.0.23-bk, -. ChangeSet@1.2211, 2006-06-28 10:11:43-07:00. +. This .result file has been checked OK with Linux 5.0.48, +. build tree ChangeSet@1.2477.6.3, 2007-07-30 +. except that the not fixed Bug#30020 causes a difference. .; --source include/show_msg80.inc @@ -105,6 +124,7 @@ SELECT DISTINCT u, AS Server_Clean FROM db_datadict.vu1; --replace_result $SERVER_NAME <SERVER_NAME> +--sorted_result SELECT * FROM db_datadict.vu order by u; delimiter //; @@ -156,7 +176,8 @@ SELECT * FROM tables # 17 CHECK_TIME --replace_column 9 "#ARL#" 10 "#DL#" 11 "#MDL#" 12 "#IL#" 13 "#DF#" 15 "YYYY-MM-DD hh:mm:ss" 16 "YYYY-MM-DD hh:mm:ss" 17 "YYYY-MM-DD hh:mm:ss" SELECT * FROM tables - WHERE NOT( table_schema = 'information_schema'); +WHERE NOT( table_schema = 'information_schema') + AND NOT (table_schema = 'mysql' AND table_name LIKE 'help_%'); --horizontal_results --enable_ps_protocol @@ -176,9 +197,11 @@ select collation_name, character_set_name into @x,@y select * from routines; select count(*) from routines; -select * from statistics; +select * from statistics +where not (table_schema = 'mysql' and table_name like 'help_%'); select * from views; --replace_result $SERVER_NAME <SERVER_NAME> +--sorted_result select * from user_privileges order by grantee, privilege_type; select * from schema_privileges; select * from table_privileges; @@ -187,7 +210,8 @@ select * from table_constraints; select * from key_column_usage; select count(*) as max_recs from key_column_usage; -select max(cardinality) from statistics; +select max(cardinality) from statistics +where not (table_schema = 'mysql' and table_name like 'help_%'); select concat("View '", table_name, "' is associated with the database '", table_schema, "'.") @@ -199,6 +223,7 @@ select concat("Table or view '", table_name, from tables; --replace_result $SERVER_NAME <SERVER_NAME> +--sorted_result select grantee as "user's having select privilege", substring( grantee, length(SUBSTRING_INDEX(grantee,_utf8'@',1))+2 ) from user_privileges where privilege_type = 'select' @@ -233,47 +258,47 @@ let $dd_part2= LIMIT 1; # check again, but from different database (will fail due to missing database name) use db_datadict; ---error 1146 +--error ER_NO_SUCH_TABLE select * from schemata; ---error 1146 +--error ER_NO_SUCH_TABLE select * from tables; ---error 1146 +--error ER_NO_SUCH_TABLE select s.catalog_name, s.schema_name, s.default_character_set_name, t.table_type, t.engine from schemata s inner join tables t ORDER BY s.catalog_name, s.schema_name, s.default_character_set_name; ---error 1146 +--error ER_NO_SUCH_TABLE select * from columns limit 0, 5; ---error 1146 +--error ER_NO_SUCH_TABLE select * from character_sets limit 0, 5; ---error 1146 +--error ER_NO_SUCH_TABLE select * from collations limit 0, 5; ---error 1146 +--error ER_NO_SUCH_TABLE select * from collation_character_set_applicability limit 0, 5; ---error 1146 +--error ER_NO_SUCH_TABLE select * from routines limit 0, 5; ---error 1146 +--error ER_NO_SUCH_TABLE select * from statistics limit 0, 5; ---error 1146 +--error ER_NO_SUCH_TABLE select * from views limit 0, 5; ---error 1146 +--error ER_NO_SUCH_TABLE select * from user_privileges limit 0, 5; ---error 1146 +--error ER_NO_SUCH_TABLE select * from schema_privileges limit 0, 5; ---error 1146 +--error ER_NO_SUCH_TABLE select * from table_privileges limit 0, 5; ---error 1146 +--error ER_NO_SUCH_TABLE select * from column_privileges limit 0, 5; ---error 1146 +--error ER_NO_SUCH_TABLE select * from table_constraints limit 0, 5; ---error 1146 +--error ER_NO_SUCH_TABLE select * from key_column_usage limit 0, 5; # Reference Manual 22.1.16 - we will add more ...: -# --error 1146 +# --error ER_NO_SUCH_TABLE # select * from parameters; -# --error 1146 +# --error ER_NO_SUCH_TABLE # select * from referential_constraints; -# --error 1146 +# --error ER_NO_SUCH_TABLE # select * from triggers; let $message= will fail due to missing database name; let $dd_part1= SELECT * FROM; @@ -316,7 +341,8 @@ SELECT * FROM information_schema.tables # 17 CHRCK_TIME --replace_column 9 "#ARL#" 10 "#DL#" 11 "#MDL#" 12 "#IL#" 13 "#DF#" 15 "YYYY-MM-DD hh:mm:ss" 16 "YYYY-MM-DD hh:mm:ss" 17 "YYYY-MM-DD hh:mm:ss" SELECT * FROM information_schema.tables - WHERE NOT( table_schema = 'information_schema'); +WHERE NOT( table_schema = 'information_schema') + AND NOT (table_schema = 'mysql' AND table_name LIKE 'help_%'); --horizontal_results --enable_ps_protocol @@ -383,13 +409,15 @@ select * from collation_character_set_applicability order by character_set_name desc, collation_name limit 0, 5; select routine_definition from routines; -select * from statistics group by index_name asc limit 0, 5; +select * from statistics where table_name not like 'help_%' +group by index_name asc limit 0, 5; select concat(table_schema, ', ', table_name, ', ', view_definition) view_info from views; select concat(table_schema, ', ', table_name) "Table_info" from tables ORDER BY 1; --replace_result $SERVER_NAME <SERVER_NAME> +--sorted_result select distinct grantee from user_privileges order by grantee, privilege_type; select * from schema_privileges where table_catalog is null limit 0, 5; select * from table_privileges where grantee like '%r%' limit 0, 5; @@ -402,8 +430,10 @@ select sum(ordinal_position) from key_column_usage; select * from schemata limit 0,5; select * from schemata limit 0,5; --replace_result $SERVER_NAME <SERVER_NAME> +--sorted_result select distinct grantee from user_privileges; --replace_result $SERVER_NAME <SERVER_NAME> +--sorted_result select all grantee from user_privileges order by grantee, privilege_type; select id , character_set_name from collations order by id asc limit 10; @@ -448,13 +478,13 @@ connect (u3212,localhost,user_3212,,db_datadict); --source suite/funcs_1/include/show_connection.inc # no db given --> db_datadict.schema does not exist ---error 1146 +--error ER_NO_SUCH_TABLE eval SELECT * INTO OUTFILE '../tmp/out.$ENGINE_TYPE.user.file' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' FROM schemata LIMIT 0, 5; ---error 1146 +--error ER_NO_SUCH_TABLE eval SELECT * FROM schemata LIMIT 0, 5; @@ -529,43 +559,43 @@ let $message= Testcase 3.2.1.3:; ################################################################################ #FIXME: in this block we had --error 1288 until Mid Sep05, check the change! ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into schemata (catalog_name, schema_name, default_character_set_name, sql_path) values ('null', 'db1', 'latin1', 'null'); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into tables (table_schema, table_name)values('db_datadict', 't1'); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into columns (table_name, column_name)values('t3', 'f2'); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into character_sets (character_set_name, default_collate_name, description, maxlen) values('cp1251', 'cp1251_general_ci', 'windows cyrillic', 1); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into collations ( collation_name, character_set_name, id, is_default, is_compiled, sortlen) values ('cp1251_bin', 'cp1251', 50, '', '', 0); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into collation_character_set_applicability (collation_name, character_set_name) values (' big5_chinese_ci', 'big6'); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into routines(routine_name, routine_type ) values ('p2', 'procedure'); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into statistics(table_schema, table_name, index_name) values ('mysql', 'db', 'primary'); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into views(table_schema, table_name) values ('db2', 'v2'); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into user_privileges (privilege_type, is_grantable) values ('select', 'yes'); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into schema_privileges (table_schema, privilege_type) values('db2', 'insert'); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into table_privileges (able_schema, table_name, privilege_type) values('db2', 'v2', 'insert'); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into column_privileges (table_name, column_name, privilege_type) values ('t3', 'f3', 'insert'); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into table_constraints ( constraint_schema, constraint_name, table_schema) values ('primary', 'mysql', 'user'); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into key_column_usage (constraint_schema, constraint_name, table_name) values ('mysql', 'primary', 'db'); @@ -586,7 +616,7 @@ delimiter ;// SELECT table_schema, privilege_type FROM information_schema.schema_privileges WHERE table_schema LIKE 'db%'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR call db_datadict.sp_4_1_3(); #FIXME: check for the diffs Win ./. Linux @@ -607,7 +637,7 @@ connect (u413,localhost,user_4_1_3,,test); use information_schema; #FIXME: check later the change from 1288 to 1044 (since Mid Sep05) ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into table_constraints ( constraint_schema, constraint_name, table_schema) values ('primary', 'mysql', 'user'); @@ -627,38 +657,38 @@ use information_schema; --source suite/funcs_1/include/show_connection.inc #FIXME: check later the change from 1288 to 1044 (since Mid Sep05) in the whole next block ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update schemata set schema_name = 'db5' where default_character_set_name = 'latin1'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update tables set table_schema = 'db_datadict1' where table_name = 't1'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update columns set table_name = 't4' where column_name = 'f2'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update character_sets set character_set_name = 'cp1252' where maxlen = 1; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update collations set collation_name = 'cp1253_bin' where character_set_name = 'cp1251'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update collation_character_set_applicability set collation_name = 'big6_chinese_ci' where character_set_name = 'big6'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update routines set routine_name = p2 where routine_body = 'sql'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update statistics set table_schema = 'mysql1' where table_name = 'db'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update views set table_schema = 'db3' where table_name = 'v1'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update user_privileges set privilege_type = 'insert' where is_grantable = 'yes'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update schema_privileges set table_schema = 'db2' where privilege_type = 'select'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update table_privileges set table_name = 'v3' where privilege_type = 'select'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update column_privileges set table_name = 't4' where column_name = 'f3'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update table_constraints set constraint_schema = 'primary' where table_schema = 'proc'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update key_column_usage set table_name = 'db1' where constraint_name = 'primary'; # update through a procedure @@ -678,7 +708,7 @@ delimiter ;// --replace_column 16 "YYYY-MM-DD hh:mm:ss" 17 "YYYY-MM-DD hh:mm:ss" select * from information_schema.routines; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR call db_datadict.sp_4_1_4(); #FIXME: check for the diffs Win ./. Linux @@ -696,7 +726,7 @@ use information_schema; --source suite/funcs_1/include/show_connection.inc #FIXME: check later the change from 1288 to 1044 (since Mid Sep05) ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update user_privileges set privilege_type = 'insert' where is_grantable = 'yes'; connection default; @@ -720,35 +750,35 @@ let $dd_part2=; --source suite/funcs_1/datadict/datadict_tables_error_1044.inc #FIXME: check later the change from 1288 to 1044 (since Mid Sep05) in the whole next block ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from schemata where schema_name = 'mysql'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from tables where table_name = 'abc'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from columns; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from character_sets; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from collations; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from collation_character_set_applicability; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from routines; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from statistics; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from views; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from user_privileges; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from schema_privileges; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from table_privileges; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from column_privileges; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from table_constraints; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from key_column_usage; # delete through a procedure @@ -763,7 +793,7 @@ begin end// delimiter ;// ---error 1044 +--error ER_DBACCESS_DENIED_ERROR call db_datadict.sp_4_1_5(); # cleanup @@ -777,7 +807,7 @@ use information_schema; --source suite/funcs_1/include/show_connection.inc #FIXME: check later the change from 1288 to 1044 (since Mid Sep05) ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from tables where table_name = 'abc'; disconnect u413; @@ -804,7 +834,7 @@ let $dd_part1= CREATE TABLE; let $dd_part2= ( c1 INT ); --source suite/funcs_1/datadict/datadict_tables_error_1044.inc #FIXME solved - 3.2.1.6: check for better error message - 42S02: Unknown table '<xxx>' in <db> ? ---error 1109 +--error ER_UNKNOWN_TABLE create table t1 (f1 int, f2 int, f3 int); use db_datadict; @@ -815,7 +845,7 @@ let $dd_part1= CREATE TABLE information_schema.; let $dd_part2= ( c1 INT ); --source suite/funcs_1/datadict/datadict_tables_error_1044.inc #FIXME solved - 3.2.1.6: check for better error message - 42S02: Unknown table '<xxx>' in <db> ? ---error 1109 +--error ER_UNKNOWN_TABLE create table information_schema.t1 (f1 int, f2 int, f3 int); # create a table in information_schema as a limited user with sufficient permissions @@ -838,7 +868,7 @@ let $dd_part1= CREATE TABLE; let $dd_part2= ( c1 INT ); --source suite/funcs_1/datadict/datadict_tables_error_1044.inc #FIXME solved - 3.2.1.6: check for better error message - 42S02: Unknown table '<xxx>' in <db> ? ---error 1109 +--error ER_UNKNOWN_TABLE create table t1 (f1 int, f2 int, f3 int); use test; @@ -849,7 +879,7 @@ let $dd_part1= CREATE TABLE information_schema.; let $dd_part2= ( c1 INT ); --source suite/funcs_1/datadict/datadict_tables_error_1044.inc #FIXME solved - 3.2.1.6: check for better error message - 42S02: Unknown table '<xxx>' in <db> ? ---error 1109 +--error ER_UNKNOWN_TABLE create table information_schema.t1 (f1 int, f2 int, f3 int); #cleanup @@ -874,7 +904,7 @@ let $dd_part2= AS SELECT * FROM mysql.time_zone; #FIXME: check change from error 1 to 1044 --source suite/funcs_1/datadict/datadict_tables_error_1044.inc ---error 1109 +--error ER_UNKNOWN_TABLE CREATE VIEW v1 AS SELECT * FROM information_schema.schemata; USE db_datadict; @@ -895,7 +925,7 @@ CREATE USER user_4_1_7@localhost; GRANT ALL ON db_datadict.* TO user_4_1_7@localhost; #FIXME: check that GRANT ON i_s is no longer allowed ---error 1044 +--error ER_DBACCESS_DENIED_ERROR GRANT ALL ON information_schema.* TO user_4_1_7@localhost; FLUSH PRIVILEGES; @@ -910,7 +940,7 @@ let $dd_part1= CREATE VIEW ; let $dd_part2= AS SELECT * FROM db_datadict.v1; #FIXME: check change from error 1 to 1044 --source suite/funcs_1/datadict/datadict_tables_error_1044.inc ---error 1109 +--error ER_UNKNOWN_TABLE create view v1 as select * from table_privileges; use db_datadict; @@ -940,45 +970,45 @@ let $message= Testcase 3.2.1.8:; use information_schema; #FIXME: check later the change from 1288 to 1044 (since Mid Sep05) ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i1 on schemata(schema_name); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i2 on tables(table_schema); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i3 on columns(table_name); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i4 on character_sets(character_set_name); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i5 on collations( collation_name); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i6 on collation_character_set_applicability(collation_name); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i7 on routines(routine_name); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i8 on statistics(table_schema); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i9 on views(table_schema); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i10 on user_privileges(privilege_type); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i11 on schema_privileges(table_schema); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i12 on table_privileges(able_schema); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i13 on column_privileges(table_name); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i14 on table_constraints(constraint_schema); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i15 on key_column_usage(constraint_schema); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i16 on triggers(trigger_name); use db_datadict; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i15 on information_schema.key_column_usage(constraint_schema); use information_schema; @@ -996,45 +1026,45 @@ connect (u4, localhost, user_4_1_8, , test); use information_schema; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i1 on schemata(schema_name); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i2 on tables(table_schema); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i3 on columns(table_name); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i4 on character_sets(character_set_name); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i5 on collations( collation_name); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i6 on collation_character_set_applicability(collation_name); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i7 on routines(routine_name); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i8 on statistics(table_schema); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i9 on views(table_schema); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i10 on user_privileges(privilege_type); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i11 on schema_privileges(table_schema); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i12 on table_privileges(able_schema); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i13 on column_privileges(table_name); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i14 on table_constraints(constraint_schema); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i15 on key_column_usage(constraint_schema); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i16 on triggers(trigger_name); use db_datadict; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i15 on information_schema.key_column_usage(constraint_schema); disconnect u4; @@ -1069,37 +1099,37 @@ let $dd_part2= ADD f1 INT; #FIXME: check change from error 1146 to 1044 --source suite/funcs_1/datadict/datadict_tables_error_1044.inc # now more detailed checks ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table schemata add f1 int; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table tables drop primary key; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table columns add f1 int; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table character_sets disable keys; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table collations enable keys; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table collation_character_set_applicability add f1 int; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table routines discard tablespace; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table statistics import tablespace; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table views drop column table_name; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table user_privileges drop index privilege_type; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table schema_privileges drop column is_grantable; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table table_privileges order by constraint_type; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table column_privileges rename to aaxyz; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table table_constraints order by schema_name; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table key_column_usage rename to information_schema.aabxyz; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table triggers rename to information_schema.sql_mode; # Alter an information_schema table as a limited user with sufficient permissions @@ -1204,25 +1234,25 @@ connect (u7,localhost,user_4_1_11, ,test); use information_schema; --source suite/funcs_1/include/show_connection.inc ---error 1044 +--error ER_DBACCESS_DENIED_ERROR drop table routines; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table collations enable keys; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR create index i5 on collations( collation_name ); ---error 1109 +--error ER_UNKNOWN_TABLE create view v1 as select * from schemata; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from columns; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update columns set table_name = 't4' where column_name = 'f2'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into collations ( collation_name, character_set_name, id, is_default, is_compiled, sortlen) values ('cp1251_bin', 'cp1251', 50, '', '', 0); @@ -1250,13 +1280,13 @@ CREATE DATABASE db_datadict; CREATE USER 'u_6_401011'@'localhost'; #FIXME: check that GRANT ON i_s is no longer allowed ---error 1044 +--error ER_DBACCESS_DENIED_ERROR GRANT ALL ON information_schema.* TO 'u_6_401011'@'localhost'; GRANT ALL ON db_datadict.* TO 'u_6_401011'@'localhost'; FLUSH PRIVILEGES; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR ALTER TABLE information_schema.schemata RENAME db_datadict.schemata; let $message= root: move table to other DB; @@ -1270,7 +1300,7 @@ connect (u_6_401011, localhost, u_6_401011, , db_datadict); USE information_schema; --source suite/funcs_1/include/show_connection.inc ---error 1044 +--error ER_DBACCESS_DENIED_ERROR ALTER TABLE information_schema.schemata RENAME db_datadict.schemata; let $message= user: move table to other DB; @@ -1306,38 +1336,38 @@ let $dd_part2=; #FIXME: check change from error 1288 to 1044 --source suite/funcs_1/datadict/datadict_tables_error_1044.inc # check UPDATE for all ... ---error 1044 +--error ER_DBACCESS_DENIED_ERROR UPDATE information_schema.tables SET table_name = 't_4711'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR UPDATE information_schema.columns SET table_name = 't_4711'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR UPDATE information_schema.statistics SET table_name = 't_4711'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR UPDATE information_schema.views SET table_name = 't_4711'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR UPDATE information_schema.table_privileges SET table_name = 't_4711'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR UPDATE information_schema.column_privileges SET table_name = 't_4711'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR UPDATE information_schema.table_constraints SET table_name = 't_4711'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR UPDATE information_schema.key_column_usage SET table_name = 't_4711'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR UPDATE information_schema.schemata SET catalog_name = 't_4711'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR UPDATE information_schema.character_sets SET description = 't_4711'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR UPDATE information_schema.collations SET character_set_name = 't_4711'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR UPDATE information_schema.collation_character_set_applicability SET character_set_name = 't_4711'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR UPDATE information_schema.routines SET routine_type = 't_4711'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR UPDATE information_schema.user_privileges SET grantee = 't_4711'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR UPDATE information_schema.schema_privileges SET grantee = 't_4711'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR UPDATE information_schema.triggers SET sql_mode = 't_4711'; CREATE USER 'u_6_401012'@'localhost'; @@ -1347,28 +1377,28 @@ connect (u_6_401012, localhost, u_6_401012, , test); use information_schema; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR insert into information_schema.schemata (catalog_name, schema_name, default_character_set_name, sql_path) values (null, information_schema1, utf16, null); #FIXME: check later the change from 1142 to 1044 (since Mid Sep05) ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table information_schema.schemata rename db_datadict1.schemata; #FIXME: check later the change from 1146 to 1044 (since Mid Sep05) ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table information_schema.tables drop column checksum; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table information_schema.statistics modify packed int; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table information_schema.routines modify created int not null; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table information_schema.key_column_usage drop column ordinal_position; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table information_schema.table_privileges change privilege_type rights_approved varchar(32); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update columns set table_name = 't4' where column_name = 'f2'; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR delete from information_schema.collations; disconnect u_6_401012; @@ -1449,7 +1479,7 @@ DROP DATABASE IF EXISTS db_datadict; CREATE DATABASE db_datadict; USE db_datadict; -create table res_t_401014(f1 char(10), f2 text(25), f3 int); +create table res_t_401014(f1 char(10), f2 varchar(25), f3 int); create view res_v_401014 as select * from res_t_401014; create procedure sp_6_401014() select 'db_datadict'; create function fn_6_401014() returns int return 0; @@ -1465,7 +1495,7 @@ let $message= show existing objects >before< changing them ...; use db_datadict; alter table res_t_401014 change f1 ff1 int; -alter table res_t_401014 engine = innodb; +eval alter table res_t_401014 engine = $OTHER_ENGINE_TYPE; alter table res_t_401014 change f3 f3_new bigint; alter view res_v_401014 as select ff1 from res_t_401014; alter procedure sp_6_401014 sql security invoker; @@ -1572,7 +1602,7 @@ connection default; --source suite/funcs_1/include/show_connection.inc #FIXME: check that GRANT ON i_s is no longer allowed ---error 1044 +--error ER_DBACCESS_DENIED_ERROR grant usage on information_schema.* to 'u_6_401016'@'localhost'; FLUSH PRIVILEGES; @@ -1609,7 +1639,7 @@ let $message= Testcase 3.2.1.17:; CREATE USER 'u_6_401017'@'localhost'; #FIXME: check that GRANT ON i_s is no longer allowed ---error 1044 +--error ER_DBACCESS_DENIED_ERROR grant select on information_schema.* to u_6_401017@localhost; FLUSH PRIVILEGES; @@ -1655,7 +1685,7 @@ let $message= Testcase 3.2.1.18:; CREATE USER 'u_6_401018'@'localhost'; #FIXME: check GRANT on IS ---error 1044 +--error ER_DBACCESS_DENIED_ERROR GRANT CREATE VIEW ON information_schema.* TO 'u_6_401018'@'localhost'; GRANT ALL ON db_datadict.* TO 'u_6_401018'@'localhost'; @@ -1696,52 +1726,52 @@ let $message= Testcase 3.2.1.19:; CREATE USER 'u_6_401019'@'localhost'; #FIXME: check GRANT on IS ---error 1044 +--error ER_DBACCESS_DENIED_ERROR grant alter on information_schema.* to 'u_6_401019'@'localhost'; #FIXME: check GRANT on IS ---error 1044 +--error ER_DBACCESS_DENIED_ERROR grant alter routine on information_schema.* to 'u_6_401019'@'localhost'; #FIXME: check GRANT on IS ---error 1044 +--error ER_DBACCESS_DENIED_ERROR grant create on information_schema.* to 'u_6_401019'@'localhost'; #FIXME: check GRANT on IS ---error 1044 +--error ER_DBACCESS_DENIED_ERROR grant create routine on information_schema.* to 'u_6_401019'@'localhost'; #FIXME: check GRANT on IS ---error 1044 +--error ER_DBACCESS_DENIED_ERROR grant create temporary tables on information_schema.* to 'u_6_401019'@'localhost'; #FIXME: check GRANT on IS ---error 1044 +--error ER_DBACCESS_DENIED_ERROR grant delete on information_schema.* to 'u_6_401019'@'localhost'; #FIXME: check GRANT on IS ---error 1044 +--error ER_DBACCESS_DENIED_ERROR grant drop on information_schema.* to 'u_6_401019'@'localhost'; #FIXME: check GRANT on IS ---error 1044 +--error ER_DBACCESS_DENIED_ERROR grant execute on information_schema.* to 'u_6_401019'@'localhost'; #FIXME: check GRANT on IS ---error 1044 +--error ER_DBACCESS_DENIED_ERROR grant index on information_schema.* to 'u_6_401019'@'localhost'; #FIXME: check GRANT on IS ---error 1044 +--error ER_DBACCESS_DENIED_ERROR grant insert on information_schema.* to 'u_6_401019'@'localhost'; #FIXME: check GRANT on IS ---error 1044 +--error ER_DBACCESS_DENIED_ERROR grant lock tables on information_schema.* to 'u_6_401019'@'localhost'; #FIXME: check GRANT on IS ---error 1044 +--error ER_DBACCESS_DENIED_ERROR grant update on information_schema.* to 'u_6_401019'@'localhost'; SELECT * FROM information_schema.table_privileges @@ -1770,18 +1800,18 @@ connect (u_6_401020, localhost, u_6_401020, , test); USE information_schema; SELECT * FROM schemata; ---error 1109 +--error ER_UNKNOWN_TABLE CREATE TABLE tb_not_allowed ( col TEXT ); #FIXME 3.2.1.20: bad message: ERROR 42S02: Unknown table 'tb_not_allowed' in information_schema #FIXME 3.2.1.20: better: ERROR 42000: Access denied for user 'u_6_401020'@'localhost' to database 'information_schema' ---error 1109 +--error ER_UNKNOWN_TABLE create view res_v1 as select * from information_schema.schemata; ---error 1044 +--error ER_DBACCESS_DENIED_ERROR alter table schemata modify catalog_name varchar(255); ---error 1044 +--error ER_DBACCESS_DENIED_ERROR update schemata set catalog_name = 'abc' where schema_name = 'information_schema'; @@ -1794,7 +1824,7 @@ CREATE PROCEDURE sp_3_2_1_20() END// delimiter ;// ---error 1044 +--error ER_DBACCESS_DENIED_ERROR DELETE FROM schemata WHERE schema_name = 'information_schema'; disconnect u_6_401020; @@ -1925,6 +1955,11 @@ let $message= Testcase 3.2.4.2:; # Testcase 3.2.4.2: Ensure that the table shows the relevant information on # every collation/character set combination for which the # current user or PUBLIC have the USAGE privilege. +# Note(2007-08-24 mleich): +# The amount of collations/character sets grows with new +# MySQL releases and is a reason why this test might +# fail with differences. Please check the new entries +# and update with expected results afterwards. ################################################################################ SELECT * FROM collation_character_set_applicability; @@ -3152,7 +3187,7 @@ SELECT * FROM information_schema.tables # 17 CHECK_TIME --replace_column 9 "#ARL#" 10 "#DL#" 11 "#MDL#" 12 "#IL#" 13 "#DF#" 15 "YYYY-MM-DD hh:mm:ss" 16 "YYYY-MM-DD hh:mm:ss" 17 "YYYY-MM-DD hh:mm:ss" SELECT * FROM information_schema.tables - WHERE NOT( table_schema = 'information_schema'); + WHERE NOT( table_schema = 'information_schema') AND NOT (table_schema = 'mysql' AND table_name LIKE 'help_%'); --enable_ps_protocol # clean-up @@ -3352,7 +3387,8 @@ SELECT * FROM information_schema.statistics; connection default; --source suite/funcs_1/include/show_connection.inc REVOKE SELECT ON db_datadict.tb_6_401402_1 FROM 'user_1'@'localhost'; -SELECT * FROM information_schema.statistics; +SELECT * FROM information_schema.statistics +WHERE NOT (table_schema = 'mysql' AND table_name LIKE 'help_%'); # nothing visible for user_1 connection user_14_1; @@ -3654,14 +3690,14 @@ eval $cmd3; --replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK connect (user_16_2, localhost, user_2, , db_datadict); eval $cmd1; ---error 1142 +--error ER_TABLEACCESS_DENIED_ERROR eval $cmd2; eval $cmd3; --replace_result $MASTER_MYPORT MYSQL_PORT $MASTER_MYSOCK MYSQL_SOCK connect (user_16_3, localhost, user_3, , test); eval $cmd1; ---error 1142 +--error ER_TABLEACCESS_DENIED_ERROR eval $cmd2; eval $cmd3; @@ -3679,22 +3715,22 @@ eval $cmd3; connection user_16_1; --source suite/funcs_1/include/show_connection.inc eval $cmd1; ---error 1142 +--error ER_TABLEACCESS_DENIED_ERROR eval $cmd2; eval $cmd3; --source suite/funcs_1/include/show_connection.inc # checks entered before bug #12269 was reported # OK, user_1 has no privs here ---error 1142 +--error ER_TABLEACCESS_DENIED_ERROR CREATE TABLE db_datadict.tb_55 ( c1 TEXT ); --source suite/funcs_1/include/show_connection.inc eval $cmd1; ---error 1142 +--error ER_TABLEACCESS_DENIED_ERROR eval $cmd2; eval $cmd3; # OK, user_1 has no privs here ---error 1142 +--error ER_TABLEACCESS_DENIED_ERROR CREATE TABLE db_datadict.tb_66 ( c1 TEXT ); let $message= add ALL on db_datadict.* (and select on mysql.user) to user_1; @@ -3717,7 +3753,7 @@ eval $cmd2; eval $cmd3; # OK, user_1 has no privs here ---error 1142 +--error ER_TABLEACCESS_DENIED_ERROR CREATE TABLE db_datadict.tb_56 ( c1 TEXT ); # using 'USE' lets the server read the privileges new, so now the CREATE works @@ -3743,13 +3779,13 @@ eval $cmd3; connection user_16_1; --source suite/funcs_1/include/show_connection.inc eval $cmd1; ---error 1142 +--error ER_TABLEACCESS_DENIED_ERROR eval $cmd2; eval $cmd3; # WORKS, as the existing old privileges are used! CREATE TABLE db_datadict.tb_58 ( c1 TEXT ); # existing privileges are "read" new when USE is called, user has no priviliges ---error 1044 +--error ER_DBACCESS_DENIED_ERROR USE db_datadict; #FIXME 3.2.16: check that it is correct that this now 'works': --error 1142 CREATE TABLE db_datadict.tb_59 ( c1 TEXT ); @@ -3861,7 +3897,7 @@ let $is_table= parameters; # and don't forget to add the test description to QATestPlanV50func let $message= checking a table that will be implemented later; --source include/show_msg.inc ---error 1109 +--error ER_UNKNOWN_TABLE eval DESC $is_table; #--source suite/funcs_1/datadict/datadict_show_table_design.inc # ------------------------------------------------------------------------------------------------------- @@ -3880,7 +3916,7 @@ let $is_table= referential_constraints; # and don't forget to add the test description to QATestPlanV50func let $message= checking a table that will be implemented later; --source include/show_msg.inc ---error 1109 +--error ER_UNKNOWN_TABLE eval DESC $is_table; #--source suite/funcs_1/datadict/datadict_show_table_design.inc # ------------------------------------------------------------------------------------------------------- diff --git a/mysql-test/suite/funcs_1/r/datadict_help_tables_build.result b/mysql-test/suite/funcs_1/r/datadict_help_tables_build.result new file mode 100644 index 00000000000..c81063b6bb2 --- /dev/null +++ b/mysql-test/suite/funcs_1/r/datadict_help_tables_build.result @@ -0,0 +1,22 @@ +DELETE FROM mysql.help_category LIMIT <number>; +DELETE FROM mysql.help_keyword LIMIT <number>; +DELETE FROM mysql.help_relation LIMIT <number>; +DELETE FROM mysql.help_topic LIMIT <number>; +SELECT * FROM INFORMATION_SCHEMA.TABLES +WHERE TABLE_SCHEMA = 'mysql' AND TABLE_NAME LIKE 'help_%'; +TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT +NULL mysql help_category BASE TABLE MyISAM 10 Fixed 30 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL help categories +NULL mysql help_keyword BASE TABLE MyISAM 10 Fixed 320 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL help keywords +NULL mysql help_relation BASE TABLE MyISAM 10 Fixed 640 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL keyword-topic relation +NULL mysql help_topic BASE TABLE MyISAM 10 Dynamic 380 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL help topics +SELECT * FROM INFORMATION_SCHEMA.STATISTICS +WHERE TABLE_SCHEMA = 'mysql' AND TABLE_NAME LIKE 'help_%'; +TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT +NULL mysql help_category 0 mysql PRIMARY 1 help_category_id A 30 NULL NULL BTREE +NULL mysql help_category 0 mysql name 1 name A 30 NULL NULL BTREE +NULL mysql help_keyword 0 mysql PRIMARY 1 help_keyword_id A 320 NULL NULL BTREE +NULL mysql help_keyword 0 mysql name 1 name A 320 NULL NULL BTREE +NULL mysql help_relation 0 mysql PRIMARY 1 help_keyword_id A NULL NULL NULL BTREE +NULL mysql help_relation 0 mysql PRIMARY 2 help_topic_id A 640 NULL NULL BTREE +NULL mysql help_topic 0 mysql PRIMARY 1 help_topic_id A 380 NULL NULL BTREE +NULL mysql help_topic 0 mysql name 1 name A 380 NULL NULL BTREE diff --git a/mysql-test/suite/funcs_1/r/datadict_help_tables_dev.result b/mysql-test/suite/funcs_1/r/datadict_help_tables_dev.result new file mode 100644 index 00000000000..5a7381e9592 --- /dev/null +++ b/mysql-test/suite/funcs_1/r/datadict_help_tables_dev.result @@ -0,0 +1,18 @@ +SELECT * FROM INFORMATION_SCHEMA.TABLES +WHERE TABLE_SCHEMA = 'mysql' AND TABLE_NAME LIKE 'help_%'; +TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT +NULL mysql help_category BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL help categories +NULL mysql help_keyword BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL help keywords +NULL mysql help_relation BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL keyword-topic relation +NULL mysql help_topic BASE TABLE MyISAM 10 Dynamic 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL help topics +SELECT * FROM INFORMATION_SCHEMA.STATISTICS +WHERE TABLE_SCHEMA = 'mysql' AND TABLE_NAME LIKE 'help_%'; +TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT +NULL mysql help_category 0 mysql PRIMARY 1 help_category_id A 0 NULL NULL BTREE +NULL mysql help_category 0 mysql name 1 name A 0 NULL NULL BTREE +NULL mysql help_keyword 0 mysql PRIMARY 1 help_keyword_id A 0 NULL NULL BTREE +NULL mysql help_keyword 0 mysql name 1 name A 0 NULL NULL BTREE +NULL mysql help_relation 0 mysql PRIMARY 1 help_keyword_id A NULL NULL NULL BTREE +NULL mysql help_relation 0 mysql PRIMARY 2 help_topic_id A 0 NULL NULL BTREE +NULL mysql help_topic 0 mysql PRIMARY 1 help_topic_id A 0 NULL NULL BTREE +NULL mysql help_topic 0 mysql name 1 name A 0 NULL NULL BTREE diff --git a/mysql-test/suite/funcs_1/r/innodb__datadict.result b/mysql-test/suite/funcs_1/r/innodb__datadict.result index bbaef83ea59..ff6de471cb0 100644 --- a/mysql-test/suite/funcs_1/r/innodb__datadict.result +++ b/mysql-test/suite/funcs_1/r/innodb__datadict.result @@ -10,8 +10,9 @@ . *__datadict.test are started. This can be a result of showing e.g. maximum . values of the number of rows of tables. . -. This .result file has been checked OK with Linux 5.0.23-bk, -. ChangeSet@1.2211, 2006-06-28 10:11:43-07:00. +. This .result file has been checked OK with Linux 5.0.48, +. build tree ChangeSet@1.2477.6.3, 2007-07-30 +. except that the not fixed Bug#30020 causes a difference. . -------------------------------------------------------------------------------- @@ -793,7 +794,8 @@ CHECKSUM NULL CREATE_OPTIONS #CO# TABLE_COMMENT SELECT * FROM tables -WHERE NOT( table_schema = 'information_schema'); +WHERE NOT( table_schema = 'information_schema') +AND NOT (table_schema = 'mysql' AND table_name LIKE 'help_%'); TABLE_CATALOG NULL TABLE_SCHEMA db_datadict TABLE_NAME v1 @@ -922,90 +924,6 @@ CREATE_OPTIONS TABLE_COMMENT User defined functions TABLE_CATALOG NULL TABLE_SCHEMA mysql -TABLE_NAME help_category -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help categories -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_keyword -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help keywords -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_relation -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT keyword-topic relation -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_topic -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Dynamic -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help topics -TABLE_CATALOG NULL -TABLE_SCHEMA mysql TABLE_NAME host TABLE_TYPE BASE TABLE ENGINE MyISAM @@ -2539,7 +2457,7 @@ cp932 cp932_japanese_ci SJIS for Windows Japanese 2 eucjpms eucjpms_japanese_ci UJIS for Windows Japanese 3 select sum(id) from collations; sum(id) -10741 +10995 select collation_name, character_set_name into @x,@y from collation_character_set_applicability limit 1; select @x, @y; @@ -2553,7 +2471,8 @@ END NULL NULL SQL NO CONTAINS SQL NULL DEFINER YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh select count(*) from routines; count(*) 1 -select * from statistics; +select * from statistics +where not (table_schema = 'mysql' and table_name like 'help_%'); TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT NULL mysql columns_priv 0 mysql PRIMARY 1 Host A NULL NULL NULL BTREE NULL mysql columns_priv 0 mysql PRIMARY 2 Db A NULL NULL NULL BTREE @@ -2565,14 +2484,6 @@ NULL mysql db 0 mysql PRIMARY 2 Db A NULL NULL NULL BTREE NULL mysql db 0 mysql PRIMARY 3 User A 2 NULL NULL BTREE NULL mysql db 1 mysql User 1 User A 1 NULL NULL BTREE NULL mysql func 0 mysql PRIMARY 1 name A 0 NULL NULL BTREE -NULL mysql help_category 0 mysql PRIMARY 1 help_category_id A 0 NULL NULL BTREE -NULL mysql help_category 0 mysql name 1 name A 0 NULL NULL BTREE -NULL mysql help_keyword 0 mysql PRIMARY 1 help_keyword_id A 0 NULL NULL BTREE -NULL mysql help_keyword 0 mysql name 1 name A 0 NULL NULL BTREE -NULL mysql help_relation 0 mysql PRIMARY 1 help_keyword_id A NULL NULL NULL BTREE -NULL mysql help_relation 0 mysql PRIMARY 2 help_topic_id A 0 NULL NULL BTREE -NULL mysql help_topic 0 mysql PRIMARY 1 help_topic_id A 0 NULL NULL BTREE -NULL mysql help_topic 0 mysql name 1 name A 0 NULL NULL BTREE NULL mysql host 0 mysql PRIMARY 1 Host A NULL NULL NULL BTREE NULL mysql host 0 mysql PRIMARY 2 Db A 0 NULL NULL BTREE NULL mysql proc 0 mysql PRIMARY 1 db A NULL NULL NULL BTREE @@ -2781,7 +2692,8 @@ NULL mysql PRIMARY NULL mysql user User 2 NULL NULL NULL NULL select count(*) as max_recs from key_column_usage; max_recs 40 -select max(cardinality) from statistics; +select max(cardinality) from statistics +where not (table_schema = 'mysql' and table_name like 'help_%'); max(cardinality) 393 select concat("View '", @@ -3408,7 +3320,8 @@ CHECKSUM NULL CREATE_OPTIONS #CO# TABLE_COMMENT SELECT * FROM information_schema.tables -WHERE NOT( table_schema = 'information_schema'); +WHERE NOT( table_schema = 'information_schema') +AND NOT (table_schema = 'mysql' AND table_name LIKE 'help_%'); TABLE_CATALOG NULL TABLE_SCHEMA db_datadict TABLE_NAME v1 @@ -3537,90 +3450,6 @@ CREATE_OPTIONS TABLE_COMMENT User defined functions TABLE_CATALOG NULL TABLE_SCHEMA mysql -TABLE_NAME help_category -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help categories -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_keyword -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help keywords -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_relation -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT keyword-topic relation -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_topic -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Dynamic -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help topics -TABLE_CATALOG NULL -TABLE_SCHEMA mysql TABLE_NAME host TABLE_TYPE BASE TABLE ENGINE MyISAM @@ -4552,10 +4381,10 @@ COUNT(*) 36 SELECT COUNT(*) FROM information_schema. collations ; COUNT(*) -126 +127 SELECT COUNT(*) FROM information_schema. collation_character_set_applicability ; COUNT(*) -126 +127 SELECT COUNT(*) FROM information_schema. routines ; COUNT(*) 1 @@ -4631,10 +4460,10 @@ utf8_esperanto_ci utf8 utf8_estonian_ci utf8 select routine_definition from routines; routine_definition -select * from statistics group by index_name asc limit 0, 5; +select * from statistics where table_name not like 'help_%' +group by index_name asc limit 0, 5; TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT NULL mysql procs_priv 1 mysql Grantor 1 Grantor A NULL NULL NULL BTREE -NULL mysql help_category 0 mysql name 1 name A 0 NULL NULL BTREE NULL mysql columns_priv 0 mysql PRIMARY 1 Host A NULL NULL NULL BTREE NULL mysql db 1 mysql User 1 User A 1 NULL NULL BTREE select concat(table_schema, ', ', table_name, ', ', view_definition) view_info @@ -4731,9 +4560,9 @@ NULL test latin1 latin1_swedish_ci NULL NULL test1 latin1 latin1_swedish_ci NULL select distinct grantee from user_privileges; grantee -'root'@'localhost' -'root'@'<SERVER_NAME>' 'root'@'127.0.0.1' +'root'@'<SERVER_NAME>' +'root'@'localhost' select all grantee from user_privileges order by grantee, privilege_type; grantee 'root'@'127.0.0.1' @@ -6659,7 +6488,7 @@ Testcase 3.2.1.14: DROP DATABASE IF EXISTS db_datadict; CREATE DATABASE db_datadict; USE db_datadict; -create table res_t_401014(f1 char(10), f2 text(25), f3 int); +create table res_t_401014(f1 char(10), f2 varchar(25), f3 int); create view res_v_401014 as select * from res_t_401014; create procedure sp_6_401014() select 'db_datadict'; create function fn_6_401014() returns int return 0; @@ -6682,10 +6511,10 @@ from information_schema.columns where table_schema like 'db_datadict%'; TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME ORDINAL_POSITION COLUMN_DEFAULT IS_NULLABLE DATA_TYPE CHARACTER_MAXIMUM_LENGTH CHARACTER_OCTET_LENGTH NUMERIC_PRECISION NUMERIC_SCALE CHARACTER_SET_NAME COLLATION_NAME COLUMN_TYPE COLUMN_KEY EXTRA PRIVILEGES COLUMN_COMMENT NULL db_datadict res_t_401014 f1 1 NULL YES char 10 10 NULL NULL latin1 latin1_swedish_ci char(10) select,insert,update,references -NULL db_datadict res_t_401014 f2 2 NULL YES tinytext 255 255 NULL NULL latin1 latin1_swedish_ci tinytext select,insert,update,references +NULL db_datadict res_t_401014 f2 2 NULL YES varchar 25 25 NULL NULL latin1 latin1_swedish_ci varchar(25) select,insert,update,references NULL db_datadict res_t_401014 f3 3 NULL YES int NULL NULL 10 0 NULL NULL int(11) select,insert,update,references NULL db_datadict res_v_401014 f1 1 NULL YES char 10 10 NULL NULL latin1 latin1_swedish_ci char(10) select,insert,update,references -NULL db_datadict res_v_401014 f2 2 NULL YES tinytext 255 255 NULL NULL latin1 latin1_swedish_ci tinytext select,insert,update,references +NULL db_datadict res_v_401014 f2 2 NULL YES varchar 25 25 NULL NULL latin1 latin1_swedish_ci varchar(25) select,insert,update,references NULL db_datadict res_v_401014 f3 3 NULL YES int NULL NULL 10 0 NULL NULL int(11) select,insert,update,references select table_schema, table_name, is_updatable from information_schema.views @@ -6798,7 +6627,7 @@ WHERE trigger_schema LIKE 'db_datadict%'; TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER use db_datadict; alter table res_t_401014 change f1 ff1 int; -alter table res_t_401014 engine = innodb; +alter table res_t_401014 engine = MEMORY; alter table res_t_401014 change f3 f3_new bigint; alter view res_v_401014 as select ff1 from res_t_401014; alter procedure sp_6_401014 sql security invoker; @@ -6816,14 +6645,14 @@ select table_catalog, table_schema, engine from information_schema.tables where table_schema like 'db_datadict%'; table_catalog table_schema engine -NULL db_datadict InnoDB +NULL db_datadict MEMORY NULL db_datadict NULL select * from information_schema.columns where table_schema like 'db_datadict%'; TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME ORDINAL_POSITION COLUMN_DEFAULT IS_NULLABLE DATA_TYPE CHARACTER_MAXIMUM_LENGTH CHARACTER_OCTET_LENGTH NUMERIC_PRECISION NUMERIC_SCALE CHARACTER_SET_NAME COLLATION_NAME COLUMN_TYPE COLUMN_KEY EXTRA PRIVILEGES COLUMN_COMMENT NULL db_datadict res_t_401014 ff1 1 NULL YES int NULL NULL 10 0 NULL NULL int(11) select,insert,update,references -NULL db_datadict res_t_401014 f2 2 NULL YES tinytext 255 255 NULL NULL latin1 latin1_swedish_ci tinytext select,insert,update,references +NULL db_datadict res_t_401014 f2 2 NULL YES varchar 25 25 NULL NULL latin1 latin1_swedish_ci varchar(25) select,insert,update,references NULL db_datadict res_t_401014 f3_new 3 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(20) select,insert,update,references NULL db_datadict res_v_401014 ff1 1 NULL YES int NULL NULL 10 0 NULL NULL int(11) select,insert,update,references select table_schema, table_name, is_updatable @@ -7411,6 +7240,7 @@ utf8_roman_ci utf8 utf8_persian_ci utf8 utf8_esperanto_ci utf8 utf8_hungarian_ci utf8 +utf8_general_cs utf8 ucs2_general_ci ucs2 ucs2_bin ucs2 ucs2_unicode_ci ucs2 @@ -8042,6 +7872,7 @@ utf8_roman_ci utf8_persian_ci utf8_esperanto_ci utf8_hungarian_ci +utf8_general_cs ucs2_general_ci ucs2_bin ucs2_unicode_ci @@ -8406,6 +8237,7 @@ utf8_roman_ci utf8 207 Yes 8 utf8_persian_ci utf8 208 Yes 8 utf8_esperanto_ci utf8 209 Yes 8 utf8_hungarian_ci utf8 210 Yes 8 +utf8_general_cs utf8 254 Yes 1 ucs2_general_ci ucs2 35 Yes Yes 1 ucs2_bin ucs2 90 Yes 1 ucs2_unicode_ci ucs2 128 Yes 8 @@ -8567,6 +8399,7 @@ utf8_roman_ci utf8 utf8_persian_ci utf8 utf8_esperanto_ci utf8 utf8_hungarian_ci utf8 +utf8_general_cs utf8 ucs2_general_ci ucs2 ucs2_bin ucs2 ucs2_unicode_ci ucs2 @@ -12140,7 +11973,7 @@ NULL information_schema TRIGGERS SYSTEM VIEW MyISAM 0 Dynamic NULL #ARL# #DL# #M NULL information_schema USER_PRIVILEGES SYSTEM VIEW MEMORY 0 Fixed NULL #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL #CO# NULL information_schema VIEWS SYSTEM VIEW MyISAM 0 Dynamic NULL #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL #CO# SELECT * FROM information_schema.tables -WHERE NOT( table_schema = 'information_schema'); +WHERE NOT( table_schema = 'information_schema') AND NOT (table_schema = 'mysql' AND table_name LIKE 'help_%'); TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT NULL db_datadict tb1 BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss latin1_swedish_ci NULL NULL db_datadict tb2 BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss latin1_swedish_ci NULL @@ -12149,10 +11982,6 @@ NULL db_datadict v3 VIEW NULL NULL NULL NULL #ARL# #DL# #MDL# #IL# #DF# NULL YYY NULL mysql columns_priv BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_bin NULL Column privileges NULL mysql db BASE TABLE MyISAM 10 Fixed 3 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_bin NULL Database privileges NULL mysql func BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_bin NULL User defined functions -NULL mysql help_category BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL help categories -NULL mysql help_keyword BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL help keywords -NULL mysql help_relation BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL keyword-topic relation -NULL mysql help_topic BASE TABLE MyISAM 10 Dynamic 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL help topics NULL mysql host BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_bin NULL Host privileges; Merged with database privileges NULL mysql proc BASE TABLE MyISAM 10 Dynamic 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL Stored Procedures NULL mysql procs_priv BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_bin NULL Procedure privileges @@ -12371,7 +12200,8 @@ TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_ root@localhost db_datadict_2 REVOKE SELECT ON db_datadict.tb_6_401402_1 FROM 'user_1'@'localhost'; -SELECT * FROM information_schema.statistics; +SELECT * FROM information_schema.statistics +WHERE NOT (table_schema = 'mysql' AND table_name LIKE 'help_%'); TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT NULL db_datadict tb_6_401402_1 0 db_datadict PRIMARY 1 f1 A 0 NULL NULL BTREE NULL db_datadict tb_6_401402_1 1 db_datadict f2_ind 1 f2 A NULL NULL NULL YES BTREE @@ -12391,14 +12221,6 @@ NULL mysql db 0 mysql PRIMARY 2 Db A NULL NULL NULL BTREE NULL mysql db 0 mysql PRIMARY 3 User A 2 NULL NULL BTREE NULL mysql db 1 mysql User 1 User A 1 NULL NULL BTREE NULL mysql func 0 mysql PRIMARY 1 name A 0 NULL NULL BTREE -NULL mysql help_category 0 mysql PRIMARY 1 help_category_id A 0 NULL NULL BTREE -NULL mysql help_category 0 mysql name 1 name A 0 NULL NULL BTREE -NULL mysql help_keyword 0 mysql PRIMARY 1 help_keyword_id A 0 NULL NULL BTREE -NULL mysql help_keyword 0 mysql name 1 name A 0 NULL NULL BTREE -NULL mysql help_relation 0 mysql PRIMARY 1 help_keyword_id A NULL NULL NULL BTREE -NULL mysql help_relation 0 mysql PRIMARY 2 help_topic_id A 0 NULL NULL BTREE -NULL mysql help_topic 0 mysql PRIMARY 1 help_topic_id A 0 NULL NULL BTREE -NULL mysql help_topic 0 mysql name 1 name A 0 NULL NULL BTREE NULL mysql host 0 mysql PRIMARY 1 Host A NULL NULL NULL BTREE NULL mysql host 0 mysql PRIMARY 2 Db A 0 NULL NULL BTREE NULL mysql proc 0 mysql PRIMARY 1 db A NULL NULL NULL BTREE diff --git a/mysql-test/suite/funcs_1/r/memory__datadict.result b/mysql-test/suite/funcs_1/r/memory__datadict.result index fda7cc6e76e..b2972796d44 100644 --- a/mysql-test/suite/funcs_1/r/memory__datadict.result +++ b/mysql-test/suite/funcs_1/r/memory__datadict.result @@ -10,8 +10,9 @@ . *__datadict.test are started. This can be a result of showing e.g. maximum . values of the number of rows of tables. . -. This .result file has been checked OK with Linux 5.0.23-bk, -. ChangeSet@1.2211, 2006-06-28 10:11:43-07:00. +. This .result file has been checked OK with Linux 5.0.48, +. build tree ChangeSet@1.2477.6.3, 2007-07-30 +. except that the not fixed Bug#30020 causes a difference. . -------------------------------------------------------------------------------- @@ -791,7 +792,8 @@ CHECKSUM NULL CREATE_OPTIONS #CO# TABLE_COMMENT SELECT * FROM tables -WHERE NOT( table_schema = 'information_schema'); +WHERE NOT( table_schema = 'information_schema') +AND NOT (table_schema = 'mysql' AND table_name LIKE 'help_%'); TABLE_CATALOG NULL TABLE_SCHEMA db_datadict TABLE_NAME v1 @@ -920,90 +922,6 @@ CREATE_OPTIONS TABLE_COMMENT User defined functions TABLE_CATALOG NULL TABLE_SCHEMA mysql -TABLE_NAME help_category -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help categories -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_keyword -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help keywords -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_relation -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT keyword-topic relation -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_topic -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Dynamic -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help topics -TABLE_CATALOG NULL -TABLE_SCHEMA mysql TABLE_NAME host TABLE_TYPE BASE TABLE ENGINE MyISAM @@ -2522,7 +2440,7 @@ cp932 cp932_japanese_ci SJIS for Windows Japanese 2 eucjpms eucjpms_japanese_ci UJIS for Windows Japanese 3 select sum(id) from collations; sum(id) -10741 +10995 select collation_name, character_set_name into @x,@y from collation_character_set_applicability limit 1; select @x, @y; @@ -2536,7 +2454,8 @@ END NULL NULL SQL NO CONTAINS SQL NULL DEFINER YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh select count(*) from routines; count(*) 1 -select * from statistics; +select * from statistics +where not (table_schema = 'mysql' and table_name like 'help_%'); TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT NULL mysql columns_priv 0 mysql PRIMARY 1 Host A NULL NULL NULL BTREE NULL mysql columns_priv 0 mysql PRIMARY 2 Db A NULL NULL NULL BTREE @@ -2548,14 +2467,6 @@ NULL mysql db 0 mysql PRIMARY 2 Db A NULL NULL NULL BTREE NULL mysql db 0 mysql PRIMARY 3 User A 2 NULL NULL BTREE NULL mysql db 1 mysql User 1 User A 1 NULL NULL BTREE NULL mysql func 0 mysql PRIMARY 1 name A 0 NULL NULL BTREE -NULL mysql help_category 0 mysql PRIMARY 1 help_category_id A 0 NULL NULL BTREE -NULL mysql help_category 0 mysql name 1 name A 0 NULL NULL BTREE -NULL mysql help_keyword 0 mysql PRIMARY 1 help_keyword_id A 0 NULL NULL BTREE -NULL mysql help_keyword 0 mysql name 1 name A 0 NULL NULL BTREE -NULL mysql help_relation 0 mysql PRIMARY 1 help_keyword_id A NULL NULL NULL BTREE -NULL mysql help_relation 0 mysql PRIMARY 2 help_topic_id A 0 NULL NULL BTREE -NULL mysql help_topic 0 mysql PRIMARY 1 help_topic_id A 0 NULL NULL BTREE -NULL mysql help_topic 0 mysql name 1 name A 0 NULL NULL BTREE NULL mysql host 0 mysql PRIMARY 1 Host A NULL NULL NULL BTREE NULL mysql host 0 mysql PRIMARY 2 Db A 0 NULL NULL BTREE NULL mysql proc 0 mysql PRIMARY 1 db A NULL NULL NULL BTREE @@ -2764,7 +2675,8 @@ NULL mysql PRIMARY NULL mysql user User 2 NULL NULL NULL NULL select count(*) as max_recs from key_column_usage; max_recs 40 -select max(cardinality) from statistics; +select max(cardinality) from statistics +where not (table_schema = 'mysql' and table_name like 'help_%'); max(cardinality) 393 select concat("View '", @@ -3391,7 +3303,8 @@ CHECKSUM NULL CREATE_OPTIONS #CO# TABLE_COMMENT SELECT * FROM information_schema.tables -WHERE NOT( table_schema = 'information_schema'); +WHERE NOT( table_schema = 'information_schema') +AND NOT (table_schema = 'mysql' AND table_name LIKE 'help_%'); TABLE_CATALOG NULL TABLE_SCHEMA db_datadict TABLE_NAME v1 @@ -3520,90 +3433,6 @@ CREATE_OPTIONS TABLE_COMMENT User defined functions TABLE_CATALOG NULL TABLE_SCHEMA mysql -TABLE_NAME help_category -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help categories -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_keyword -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help keywords -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_relation -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT keyword-topic relation -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_topic -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Dynamic -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help topics -TABLE_CATALOG NULL -TABLE_SCHEMA mysql TABLE_NAME host TABLE_TYPE BASE TABLE ENGINE MyISAM @@ -4535,10 +4364,10 @@ COUNT(*) 36 SELECT COUNT(*) FROM information_schema. collations ; COUNT(*) -126 +127 SELECT COUNT(*) FROM information_schema. collation_character_set_applicability ; COUNT(*) -126 +127 SELECT COUNT(*) FROM information_schema. routines ; COUNT(*) 1 @@ -4614,10 +4443,10 @@ utf8_esperanto_ci utf8 utf8_estonian_ci utf8 select routine_definition from routines; routine_definition -select * from statistics group by index_name asc limit 0, 5; +select * from statistics where table_name not like 'help_%' +group by index_name asc limit 0, 5; TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT NULL mysql procs_priv 1 mysql Grantor 1 Grantor A NULL NULL NULL BTREE -NULL mysql help_category 0 mysql name 1 name A 0 NULL NULL BTREE NULL mysql columns_priv 0 mysql PRIMARY 1 Host A NULL NULL NULL BTREE NULL mysql db 1 mysql User 1 User A 1 NULL NULL BTREE select concat(table_schema, ', ', table_name, ', ', view_definition) view_info @@ -4714,9 +4543,9 @@ NULL test latin1 latin1_swedish_ci NULL NULL test1 latin1 latin1_swedish_ci NULL select distinct grantee from user_privileges; grantee -'root'@'localhost' -'root'@'<SERVER_NAME>' 'root'@'127.0.0.1' +'root'@'<SERVER_NAME>' +'root'@'localhost' select all grantee from user_privileges order by grantee, privilege_type; grantee 'root'@'127.0.0.1' @@ -6642,7 +6471,7 @@ Testcase 3.2.1.14: DROP DATABASE IF EXISTS db_datadict; CREATE DATABASE db_datadict; USE db_datadict; -create table res_t_401014(f1 char(10), f2 text(25), f3 int); +create table res_t_401014(f1 char(10), f2 varchar(25), f3 int); create view res_v_401014 as select * from res_t_401014; create procedure sp_6_401014() select 'db_datadict'; create function fn_6_401014() returns int return 0; @@ -6665,10 +6494,10 @@ from information_schema.columns where table_schema like 'db_datadict%'; TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME ORDINAL_POSITION COLUMN_DEFAULT IS_NULLABLE DATA_TYPE CHARACTER_MAXIMUM_LENGTH CHARACTER_OCTET_LENGTH NUMERIC_PRECISION NUMERIC_SCALE CHARACTER_SET_NAME COLLATION_NAME COLUMN_TYPE COLUMN_KEY EXTRA PRIVILEGES COLUMN_COMMENT NULL db_datadict res_t_401014 f1 1 NULL YES char 10 10 NULL NULL latin1 latin1_swedish_ci char(10) select,insert,update,references -NULL db_datadict res_t_401014 f2 2 NULL YES tinytext 255 255 NULL NULL latin1 latin1_swedish_ci tinytext select,insert,update,references +NULL db_datadict res_t_401014 f2 2 NULL YES varchar 25 25 NULL NULL latin1 latin1_swedish_ci varchar(25) select,insert,update,references NULL db_datadict res_t_401014 f3 3 NULL YES int NULL NULL 10 0 NULL NULL int(11) select,insert,update,references NULL db_datadict res_v_401014 f1 1 NULL YES char 10 10 NULL NULL latin1 latin1_swedish_ci char(10) select,insert,update,references -NULL db_datadict res_v_401014 f2 2 NULL YES tinytext 255 255 NULL NULL latin1 latin1_swedish_ci tinytext select,insert,update,references +NULL db_datadict res_v_401014 f2 2 NULL YES varchar 25 25 NULL NULL latin1 latin1_swedish_ci varchar(25) select,insert,update,references NULL db_datadict res_v_401014 f3 3 NULL YES int NULL NULL 10 0 NULL NULL int(11) select,insert,update,references select table_schema, table_name, is_updatable from information_schema.views @@ -6781,7 +6610,7 @@ WHERE trigger_schema LIKE 'db_datadict%'; TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER use db_datadict; alter table res_t_401014 change f1 ff1 int; -alter table res_t_401014 engine = innodb; +alter table res_t_401014 engine = MyISAM; alter table res_t_401014 change f3 f3_new bigint; alter view res_v_401014 as select ff1 from res_t_401014; alter procedure sp_6_401014 sql security invoker; @@ -6799,14 +6628,14 @@ select table_catalog, table_schema, engine from information_schema.tables where table_schema like 'db_datadict%'; table_catalog table_schema engine -NULL db_datadict InnoDB +NULL db_datadict MyISAM NULL db_datadict NULL select * from information_schema.columns where table_schema like 'db_datadict%'; TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME ORDINAL_POSITION COLUMN_DEFAULT IS_NULLABLE DATA_TYPE CHARACTER_MAXIMUM_LENGTH CHARACTER_OCTET_LENGTH NUMERIC_PRECISION NUMERIC_SCALE CHARACTER_SET_NAME COLLATION_NAME COLUMN_TYPE COLUMN_KEY EXTRA PRIVILEGES COLUMN_COMMENT NULL db_datadict res_t_401014 ff1 1 NULL YES int NULL NULL 10 0 NULL NULL int(11) select,insert,update,references -NULL db_datadict res_t_401014 f2 2 NULL YES tinytext 255 255 NULL NULL latin1 latin1_swedish_ci tinytext select,insert,update,references +NULL db_datadict res_t_401014 f2 2 NULL YES varchar 25 25 NULL NULL latin1 latin1_swedish_ci varchar(25) select,insert,update,references NULL db_datadict res_t_401014 f3_new 3 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(20) select,insert,update,references NULL db_datadict res_v_401014 ff1 1 NULL YES int NULL NULL 10 0 NULL NULL int(11) select,insert,update,references select table_schema, table_name, is_updatable @@ -7394,6 +7223,7 @@ utf8_roman_ci utf8 utf8_persian_ci utf8 utf8_esperanto_ci utf8 utf8_hungarian_ci utf8 +utf8_general_cs utf8 ucs2_general_ci ucs2 ucs2_bin ucs2 ucs2_unicode_ci ucs2 @@ -8010,6 +7840,7 @@ utf8_roman_ci utf8_persian_ci utf8_esperanto_ci utf8_hungarian_ci +utf8_general_cs ucs2_general_ci ucs2_bin ucs2_unicode_ci @@ -8374,6 +8205,7 @@ utf8_roman_ci utf8 207 Yes 8 utf8_persian_ci utf8 208 Yes 8 utf8_esperanto_ci utf8 209 Yes 8 utf8_hungarian_ci utf8 210 Yes 8 +utf8_general_cs utf8 254 Yes 1 ucs2_general_ci ucs2 35 Yes Yes 1 ucs2_bin ucs2 90 Yes 1 ucs2_unicode_ci ucs2 128 Yes 8 @@ -8535,6 +8367,7 @@ utf8_roman_ci utf8 utf8_persian_ci utf8 utf8_esperanto_ci utf8 utf8_hungarian_ci utf8 +utf8_general_cs utf8 ucs2_general_ci ucs2 ucs2_bin ucs2 ucs2_unicode_ci ucs2 @@ -12038,7 +11871,7 @@ NULL information_schema TRIGGERS SYSTEM VIEW MyISAM 0 Dynamic NULL #ARL# #DL# #M NULL information_schema USER_PRIVILEGES SYSTEM VIEW MEMORY 0 Fixed NULL #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL #CO# NULL information_schema VIEWS SYSTEM VIEW MyISAM 0 Dynamic NULL #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL #CO# SELECT * FROM information_schema.tables -WHERE NOT( table_schema = 'information_schema'); +WHERE NOT( table_schema = 'information_schema') AND NOT (table_schema = 'mysql' AND table_name LIKE 'help_%'); TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT NULL db_datadict tb1 BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss latin1_swedish_ci NULL NULL db_datadict tb2 BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss latin1_swedish_ci NULL @@ -12047,10 +11880,6 @@ NULL db_datadict v3 VIEW NULL NULL NULL NULL #ARL# #DL# #MDL# #IL# #DF# NULL YYY NULL mysql columns_priv BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_bin NULL Column privileges NULL mysql db BASE TABLE MyISAM 10 Fixed 3 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_bin NULL Database privileges NULL mysql func BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_bin NULL User defined functions -NULL mysql help_category BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL help categories -NULL mysql help_keyword BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL help keywords -NULL mysql help_relation BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL keyword-topic relation -NULL mysql help_topic BASE TABLE MyISAM 10 Dynamic 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL help topics NULL mysql host BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_bin NULL Host privileges; Merged with database privileges NULL mysql proc BASE TABLE MyISAM 10 Dynamic 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL Stored Procedures NULL mysql procs_priv BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_bin NULL Procedure privileges @@ -12269,7 +12098,8 @@ TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_ root@localhost db_datadict_2 REVOKE SELECT ON db_datadict.tb_6_401402_1 FROM 'user_1'@'localhost'; -SELECT * FROM information_schema.statistics; +SELECT * FROM information_schema.statistics +WHERE NOT (table_schema = 'mysql' AND table_name LIKE 'help_%'); TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT NULL db_datadict tb_6_401402_1 0 db_datadict PRIMARY 1 f1 A 0 NULL NULL BTREE NULL db_datadict tb_6_401402_1 1 db_datadict f2_ind 1 f2 A NULL NULL NULL YES BTREE @@ -12289,14 +12119,6 @@ NULL mysql db 0 mysql PRIMARY 2 Db A NULL NULL NULL BTREE NULL mysql db 0 mysql PRIMARY 3 User A 2 NULL NULL BTREE NULL mysql db 1 mysql User 1 User A 1 NULL NULL BTREE NULL mysql func 0 mysql PRIMARY 1 name A 0 NULL NULL BTREE -NULL mysql help_category 0 mysql PRIMARY 1 help_category_id A 0 NULL NULL BTREE -NULL mysql help_category 0 mysql name 1 name A 0 NULL NULL BTREE -NULL mysql help_keyword 0 mysql PRIMARY 1 help_keyword_id A 0 NULL NULL BTREE -NULL mysql help_keyword 0 mysql name 1 name A 0 NULL NULL BTREE -NULL mysql help_relation 0 mysql PRIMARY 1 help_keyword_id A NULL NULL NULL BTREE -NULL mysql help_relation 0 mysql PRIMARY 2 help_topic_id A 0 NULL NULL BTREE -NULL mysql help_topic 0 mysql PRIMARY 1 help_topic_id A 0 NULL NULL BTREE -NULL mysql help_topic 0 mysql name 1 name A 0 NULL NULL BTREE NULL mysql host 0 mysql PRIMARY 1 Host A NULL NULL NULL BTREE NULL mysql host 0 mysql PRIMARY 2 Db A 0 NULL NULL BTREE NULL mysql proc 0 mysql PRIMARY 1 db A NULL NULL NULL BTREE diff --git a/mysql-test/suite/funcs_1/r/myisam__datadict.result b/mysql-test/suite/funcs_1/r/myisam__datadict.result index b95d51f3801..518c7d277de 100644 --- a/mysql-test/suite/funcs_1/r/myisam__datadict.result +++ b/mysql-test/suite/funcs_1/r/myisam__datadict.result @@ -10,8 +10,9 @@ . *__datadict.test are started. This can be a result of showing e.g. maximum . values of the number of rows of tables. . -. This .result file has been checked OK with Linux 5.0.23-bk, -. ChangeSet@1.2211, 2006-06-28 10:11:43-07:00. +. This .result file has been checked OK with Linux 5.0.48, +. build tree ChangeSet@1.2477.6.3, 2007-07-30 +. except that the not fixed Bug#30020 causes a difference. . -------------------------------------------------------------------------------- @@ -821,7 +822,8 @@ CHECKSUM NULL CREATE_OPTIONS #CO# TABLE_COMMENT SELECT * FROM tables -WHERE NOT( table_schema = 'information_schema'); +WHERE NOT( table_schema = 'information_schema') +AND NOT (table_schema = 'mysql' AND table_name LIKE 'help_%'); TABLE_CATALOG NULL TABLE_SCHEMA db_datadict TABLE_NAME v1 @@ -950,90 +952,6 @@ CREATE_OPTIONS TABLE_COMMENT User defined functions TABLE_CATALOG NULL TABLE_SCHEMA mysql -TABLE_NAME help_category -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help categories -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_keyword -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help keywords -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_relation -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT keyword-topic relation -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_topic -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Dynamic -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help topics -TABLE_CATALOG NULL -TABLE_SCHEMA mysql TABLE_NAME host TABLE_TYPE BASE TABLE ENGINE MyISAM @@ -2592,7 +2510,7 @@ cp932 cp932_japanese_ci SJIS for Windows Japanese 2 eucjpms eucjpms_japanese_ci UJIS for Windows Japanese 3 select sum(id) from collations; sum(id) -10741 +10995 select collation_name, character_set_name into @x,@y from collation_character_set_applicability limit 1; select @x, @y; @@ -2606,7 +2524,8 @@ END NULL NULL SQL NO CONTAINS SQL NULL DEFINER YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh select count(*) from routines; count(*) 1 -select * from statistics; +select * from statistics +where not (table_schema = 'mysql' and table_name like 'help_%'); TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT NULL mysql columns_priv 0 mysql PRIMARY 1 Host A NULL NULL NULL BTREE NULL mysql columns_priv 0 mysql PRIMARY 2 Db A NULL NULL NULL BTREE @@ -2618,14 +2537,6 @@ NULL mysql db 0 mysql PRIMARY 2 Db A NULL NULL NULL BTREE NULL mysql db 0 mysql PRIMARY 3 User A 2 NULL NULL BTREE NULL mysql db 1 mysql User 1 User A 1 NULL NULL BTREE NULL mysql func 0 mysql PRIMARY 1 name A 0 NULL NULL BTREE -NULL mysql help_category 0 mysql PRIMARY 1 help_category_id A 0 NULL NULL BTREE -NULL mysql help_category 0 mysql name 1 name A 0 NULL NULL BTREE -NULL mysql help_keyword 0 mysql PRIMARY 1 help_keyword_id A 0 NULL NULL BTREE -NULL mysql help_keyword 0 mysql name 1 name A 0 NULL NULL BTREE -NULL mysql help_relation 0 mysql PRIMARY 1 help_keyword_id A NULL NULL NULL BTREE -NULL mysql help_relation 0 mysql PRIMARY 2 help_topic_id A 0 NULL NULL BTREE -NULL mysql help_topic 0 mysql PRIMARY 1 help_topic_id A 0 NULL NULL BTREE -NULL mysql help_topic 0 mysql name 1 name A 0 NULL NULL BTREE NULL mysql host 0 mysql PRIMARY 1 Host A NULL NULL NULL BTREE NULL mysql host 0 mysql PRIMARY 2 Db A 0 NULL NULL BTREE NULL mysql proc 0 mysql PRIMARY 1 db A NULL NULL NULL BTREE @@ -2834,7 +2745,8 @@ NULL mysql PRIMARY NULL mysql user User 2 NULL NULL NULL NULL select count(*) as max_recs from key_column_usage; max_recs 40 -select max(cardinality) from statistics; +select max(cardinality) from statistics +where not (table_schema = 'mysql' and table_name like 'help_%'); max(cardinality) 393 select concat("View '", @@ -3461,7 +3373,8 @@ CHECKSUM NULL CREATE_OPTIONS #CO# TABLE_COMMENT SELECT * FROM information_schema.tables -WHERE NOT( table_schema = 'information_schema'); +WHERE NOT( table_schema = 'information_schema') +AND NOT (table_schema = 'mysql' AND table_name LIKE 'help_%'); TABLE_CATALOG NULL TABLE_SCHEMA db_datadict TABLE_NAME v1 @@ -3590,90 +3503,6 @@ CREATE_OPTIONS TABLE_COMMENT User defined functions TABLE_CATALOG NULL TABLE_SCHEMA mysql -TABLE_NAME help_category -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help categories -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_keyword -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help keywords -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_relation -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Fixed -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT keyword-topic relation -TABLE_CATALOG NULL -TABLE_SCHEMA mysql -TABLE_NAME help_topic -TABLE_TYPE BASE TABLE -ENGINE MyISAM -VERSION 10 -ROW_FORMAT Dynamic -TABLE_ROWS 0 -AVG_ROW_LENGTH #ARL# -DATA_LENGTH #DL# -MAX_DATA_LENGTH #MDL# -INDEX_LENGTH #IL# -DATA_FREE #DF# -AUTO_INCREMENT NULL -CREATE_TIME YYYY-MM-DD hh:mm:ss -UPDATE_TIME YYYY-MM-DD hh:mm:ss -CHECK_TIME YYYY-MM-DD hh:mm:ss -TABLE_COLLATION utf8_general_ci -CHECKSUM NULL -CREATE_OPTIONS -TABLE_COMMENT help topics -TABLE_CATALOG NULL -TABLE_SCHEMA mysql TABLE_NAME host TABLE_TYPE BASE TABLE ENGINE MyISAM @@ -4605,10 +4434,10 @@ COUNT(*) 36 SELECT COUNT(*) FROM information_schema. collations ; COUNT(*) -126 +127 SELECT COUNT(*) FROM information_schema. collation_character_set_applicability ; COUNT(*) -126 +127 SELECT COUNT(*) FROM information_schema. routines ; COUNT(*) 1 @@ -4684,10 +4513,10 @@ utf8_esperanto_ci utf8 utf8_estonian_ci utf8 select routine_definition from routines; routine_definition -select * from statistics group by index_name asc limit 0, 5; +select * from statistics where table_name not like 'help_%' +group by index_name asc limit 0, 5; TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT NULL mysql procs_priv 1 mysql Grantor 1 Grantor A NULL NULL NULL BTREE -NULL mysql help_category 0 mysql name 1 name A 0 NULL NULL BTREE NULL mysql columns_priv 0 mysql PRIMARY 1 Host A NULL NULL NULL BTREE NULL mysql db 1 mysql User 1 User A 1 NULL NULL BTREE select concat(table_schema, ', ', table_name, ', ', view_definition) view_info @@ -4784,9 +4613,9 @@ NULL test latin1 latin1_swedish_ci NULL NULL test1 latin1 latin1_swedish_ci NULL select distinct grantee from user_privileges; grantee -'root'@'localhost' -'root'@'<SERVER_NAME>' 'root'@'127.0.0.1' +'root'@'<SERVER_NAME>' +'root'@'localhost' select all grantee from user_privileges order by grantee, privilege_type; grantee 'root'@'127.0.0.1' @@ -6712,7 +6541,7 @@ Testcase 3.2.1.14: DROP DATABASE IF EXISTS db_datadict; CREATE DATABASE db_datadict; USE db_datadict; -create table res_t_401014(f1 char(10), f2 text(25), f3 int); +create table res_t_401014(f1 char(10), f2 varchar(25), f3 int); create view res_v_401014 as select * from res_t_401014; create procedure sp_6_401014() select 'db_datadict'; create function fn_6_401014() returns int return 0; @@ -6735,10 +6564,10 @@ from information_schema.columns where table_schema like 'db_datadict%'; TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME ORDINAL_POSITION COLUMN_DEFAULT IS_NULLABLE DATA_TYPE CHARACTER_MAXIMUM_LENGTH CHARACTER_OCTET_LENGTH NUMERIC_PRECISION NUMERIC_SCALE CHARACTER_SET_NAME COLLATION_NAME COLUMN_TYPE COLUMN_KEY EXTRA PRIVILEGES COLUMN_COMMENT NULL db_datadict res_t_401014 f1 1 NULL YES char 10 10 NULL NULL latin1 latin1_swedish_ci char(10) select,insert,update,references -NULL db_datadict res_t_401014 f2 2 NULL YES tinytext 255 255 NULL NULL latin1 latin1_swedish_ci tinytext select,insert,update,references +NULL db_datadict res_t_401014 f2 2 NULL YES varchar 25 25 NULL NULL latin1 latin1_swedish_ci varchar(25) select,insert,update,references NULL db_datadict res_t_401014 f3 3 NULL YES int NULL NULL 10 0 NULL NULL int(11) select,insert,update,references NULL db_datadict res_v_401014 f1 1 NULL YES char 10 10 NULL NULL latin1 latin1_swedish_ci char(10) select,insert,update,references -NULL db_datadict res_v_401014 f2 2 NULL YES tinytext 255 255 NULL NULL latin1 latin1_swedish_ci tinytext select,insert,update,references +NULL db_datadict res_v_401014 f2 2 NULL YES varchar 25 25 NULL NULL latin1 latin1_swedish_ci varchar(25) select,insert,update,references NULL db_datadict res_v_401014 f3 3 NULL YES int NULL NULL 10 0 NULL NULL int(11) select,insert,update,references select table_schema, table_name, is_updatable from information_schema.views @@ -6851,7 +6680,7 @@ WHERE trigger_schema LIKE 'db_datadict%'; TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_ORDER ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW CREATED SQL_MODE DEFINER use db_datadict; alter table res_t_401014 change f1 ff1 int; -alter table res_t_401014 engine = innodb; +alter table res_t_401014 engine = MEMORY; alter table res_t_401014 change f3 f3_new bigint; alter view res_v_401014 as select ff1 from res_t_401014; alter procedure sp_6_401014 sql security invoker; @@ -6869,14 +6698,14 @@ select table_catalog, table_schema, engine from information_schema.tables where table_schema like 'db_datadict%'; table_catalog table_schema engine -NULL db_datadict InnoDB +NULL db_datadict MEMORY NULL db_datadict NULL select * from information_schema.columns where table_schema like 'db_datadict%'; TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME ORDINAL_POSITION COLUMN_DEFAULT IS_NULLABLE DATA_TYPE CHARACTER_MAXIMUM_LENGTH CHARACTER_OCTET_LENGTH NUMERIC_PRECISION NUMERIC_SCALE CHARACTER_SET_NAME COLLATION_NAME COLUMN_TYPE COLUMN_KEY EXTRA PRIVILEGES COLUMN_COMMENT NULL db_datadict res_t_401014 ff1 1 NULL YES int NULL NULL 10 0 NULL NULL int(11) select,insert,update,references -NULL db_datadict res_t_401014 f2 2 NULL YES tinytext 255 255 NULL NULL latin1 latin1_swedish_ci tinytext select,insert,update,references +NULL db_datadict res_t_401014 f2 2 NULL YES varchar 25 25 NULL NULL latin1 latin1_swedish_ci varchar(25) select,insert,update,references NULL db_datadict res_t_401014 f3_new 3 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(20) select,insert,update,references NULL db_datadict res_v_401014 ff1 1 NULL YES int NULL NULL 10 0 NULL NULL int(11) select,insert,update,references select table_schema, table_name, is_updatable @@ -7464,6 +7293,7 @@ utf8_roman_ci utf8 utf8_persian_ci utf8 utf8_esperanto_ci utf8 utf8_hungarian_ci utf8 +utf8_general_cs utf8 ucs2_general_ci ucs2 ucs2_bin ucs2 ucs2_unicode_ci ucs2 @@ -8112,6 +7942,7 @@ utf8_roman_ci utf8_persian_ci utf8_esperanto_ci utf8_hungarian_ci +utf8_general_cs ucs2_general_ci ucs2_bin ucs2_unicode_ci @@ -8476,6 +8307,7 @@ utf8_roman_ci utf8 207 Yes 8 utf8_persian_ci utf8 208 Yes 8 utf8_esperanto_ci utf8 209 Yes 8 utf8_hungarian_ci utf8 210 Yes 8 +utf8_general_cs utf8 254 Yes 1 ucs2_general_ci ucs2 35 Yes Yes 1 ucs2_bin ucs2 90 Yes 1 ucs2_unicode_ci ucs2 128 Yes 8 @@ -8637,6 +8469,7 @@ utf8_roman_ci utf8 utf8_persian_ci utf8 utf8_esperanto_ci utf8 utf8_hungarian_ci utf8 +utf8_general_cs utf8 ucs2_general_ci ucs2 ucs2_bin ucs2 ucs2_unicode_ci ucs2 @@ -12292,7 +12125,7 @@ NULL information_schema TRIGGERS SYSTEM VIEW MyISAM 0 Dynamic NULL #ARL# #DL# #M NULL information_schema USER_PRIVILEGES SYSTEM VIEW MEMORY 0 Fixed NULL #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL #CO# NULL information_schema VIEWS SYSTEM VIEW MyISAM 0 Dynamic NULL #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL #CO# SELECT * FROM information_schema.tables -WHERE NOT( table_schema = 'information_schema'); +WHERE NOT( table_schema = 'information_schema') AND NOT (table_schema = 'mysql' AND table_name LIKE 'help_%'); TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT NULL db_datadict tb1 BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss latin1_swedish_ci NULL NULL db_datadict tb2 BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss latin1_swedish_ci NULL @@ -12301,10 +12134,6 @@ NULL db_datadict v3 VIEW NULL NULL NULL NULL #ARL# #DL# #MDL# #IL# #DF# NULL YYY NULL mysql columns_priv BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_bin NULL Column privileges NULL mysql db BASE TABLE MyISAM 10 Fixed 3 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_bin NULL Database privileges NULL mysql func BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_bin NULL User defined functions -NULL mysql help_category BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL help categories -NULL mysql help_keyword BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL help keywords -NULL mysql help_relation BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL keyword-topic relation -NULL mysql help_topic BASE TABLE MyISAM 10 Dynamic 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL help topics NULL mysql host BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_bin NULL Host privileges; Merged with database privileges NULL mysql proc BASE TABLE MyISAM 10 Dynamic 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_general_ci NULL Stored Procedures NULL mysql procs_priv BASE TABLE MyISAM 10 Fixed 0 #ARL# #DL# #MDL# #IL# #DF# NULL YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss YYYY-MM-DD hh:mm:ss utf8_bin NULL Procedure privileges @@ -12523,7 +12352,8 @@ TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_ root@localhost db_datadict_2 REVOKE SELECT ON db_datadict.tb_6_401402_1 FROM 'user_1'@'localhost'; -SELECT * FROM information_schema.statistics; +SELECT * FROM information_schema.statistics +WHERE NOT (table_schema = 'mysql' AND table_name LIKE 'help_%'); TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT NULL db_datadict tb_6_401402_1 0 db_datadict PRIMARY 1 f1 A 0 NULL NULL BTREE NULL db_datadict tb_6_401402_1 1 db_datadict f2_ind 1 f2 A NULL NULL NULL YES BTREE @@ -12543,14 +12373,6 @@ NULL mysql db 0 mysql PRIMARY 2 Db A NULL NULL NULL BTREE NULL mysql db 0 mysql PRIMARY 3 User A 2 NULL NULL BTREE NULL mysql db 1 mysql User 1 User A 1 NULL NULL BTREE NULL mysql func 0 mysql PRIMARY 1 name A 0 NULL NULL BTREE -NULL mysql help_category 0 mysql PRIMARY 1 help_category_id A 0 NULL NULL BTREE -NULL mysql help_category 0 mysql name 1 name A 0 NULL NULL BTREE -NULL mysql help_keyword 0 mysql PRIMARY 1 help_keyword_id A 0 NULL NULL BTREE -NULL mysql help_keyword 0 mysql name 1 name A 0 NULL NULL BTREE -NULL mysql help_relation 0 mysql PRIMARY 1 help_keyword_id A NULL NULL NULL BTREE -NULL mysql help_relation 0 mysql PRIMARY 2 help_topic_id A 0 NULL NULL BTREE -NULL mysql help_topic 0 mysql PRIMARY 1 help_topic_id A 0 NULL NULL BTREE -NULL mysql help_topic 0 mysql name 1 name A 0 NULL NULL BTREE NULL mysql host 0 mysql PRIMARY 1 Host A NULL NULL NULL BTREE NULL mysql host 0 mysql PRIMARY 2 Db A 0 NULL NULL BTREE NULL mysql proc 0 mysql PRIMARY 1 db A NULL NULL NULL BTREE diff --git a/mysql-test/suite/funcs_1/t/datadict_help_tables_build.test b/mysql-test/suite/funcs_1/t/datadict_help_tables_build.test new file mode 100644 index 00000000000..370fcf0375c --- /dev/null +++ b/mysql-test/suite/funcs_1/t/datadict_help_tables_build.test @@ -0,0 +1,73 @@ +###### suite/funcs_1/t/datadict_help_tables_dev.test ##### +# +# Check the information about the help tables within +# INFORMATION_SCHEMA.TABLES/INFORMATION_SCHEMA.STATISTICS +# +# Variant for use during build tests (non empty help tables) +# +# Creation: +# 2007-08-25 mleich Add this test as compensation for the +# checks removed within datadict_master.inc. +# + +let $c_help_category= `SELECT COUNT(*) FROM mysql.help_category`; +let $c_help_keyword= `SELECT COUNT(*) FROM mysql.help_keyword`; +let $c_help_relation= `SELECT COUNT(*) FROM mysql.help_relation`; +let $c_help_topic= `SELECT COUNT(*) FROM mysql.help_topic`; + +if (`SELECT $c_help_category + $c_help_keyword + $c_help_relation + + $c_help_topic = 0`) +{ + --skip # Test requires non empty help tables = Build test configuration +} + +# We reach this point when we run on a configuration with at least one +# non empty help table. +# 2007-08 MySQL 5.0 row count of the help tables +# help_category help_keyword help_relation help_topic +# 36 395 809 466 +# Let's assume for all help tables that their content never dramatic +# shrinks and do some plausibility checks. +let $limit_help_category = 30; +let $limit_help_keyword = 320; +let $limit_help_relation = 640; +let $limit_help_topic = 380; +if (`SELECT $c_help_category < $limit_help_category + OR $c_help_keyword < $limit_help_keyword + OR $c_help_relation < $limit_help_relation + OR $c_help_topic < $limit_help_topic`) +{ + --echo # The row count within the help tables is unexepected small. + SELECT COUNT(*), 'exepected: >= $limit_help_category' FROM mysql.help_category; + SELECT COUNT(*), 'exepected: >= $limit_help_keyword' FROM mysql.help_keyword; + SELECT COUNT(*), 'exepected: >= $limit_help_relation' FROM mysql.help_relation; + SELECT COUNT(*), 'exepected: >= $limit_help_topic' FROM mysql.help_topic; + --echo # Either the current help table content (build problem? or + --echo # the expected minimum row count within this script is wrong. + --echo # Abort + exit; +} + +# Enforce a static number of rows within the help tables. +let $limit= `SELECT $c_help_category - $limit_help_category`; +--replace_result $limit <number> +eval DELETE FROM mysql.help_category LIMIT $limit; +# +let $limit= `SELECT $c_help_keyword - $limit_help_keyword`; +--replace_result $limit <number> +eval DELETE FROM mysql.help_keyword LIMIT $limit; +# +let $limit= `SELECT $c_help_relation - $limit_help_relation`; +--replace_result $limit <number> +eval DELETE FROM mysql.help_relation LIMIT $limit; +# +let $limit= `SELECT $c_help_topic - $limit_help_topic`; +--replace_result $limit <number> +eval DELETE FROM mysql.help_topic LIMIT $limit; + + +--replace_column 9 "#ARL#" 10 "#DL#" 11 "#MDL#" 12 "#IL#" 13 "#DF#" 15 "YYYY-MM-DD hh:mm:ss" 16 "YYYY-MM-DD hh:mm:ss" 17 "YYYY-MM-DD hh:mm:ss" +SELECT * FROM INFORMATION_SCHEMA.TABLES +WHERE TABLE_SCHEMA = 'mysql' AND TABLE_NAME LIKE 'help_%'; +SELECT * FROM INFORMATION_SCHEMA.STATISTICS +WHERE TABLE_SCHEMA = 'mysql' AND TABLE_NAME LIKE 'help_%'; diff --git a/mysql-test/suite/funcs_1/t/datadict_help_tables_dev.test b/mysql-test/suite/funcs_1/t/datadict_help_tables_dev.test new file mode 100644 index 00000000000..3342fbca4be --- /dev/null +++ b/mysql-test/suite/funcs_1/t/datadict_help_tables_dev.test @@ -0,0 +1,27 @@ +###### suite/funcs_1/t/datadict_help_tables_dev.test ##### +# +# Check the information about the help tables within +# INFORMATION_SCHEMA.TABLES/INFORMATION_SCHEMA.STATISTICS +# +# Variant for use during development (empty help tables) +# +# Creation: +# 2007-08-25 mleich Add this test as compensation for the +# checks removed within datadict_master.inc. +# + +let $c_help_category= `SELECT COUNT(*) FROM mysql.help_category`; +let $c_help_keyword= `SELECT COUNT(*) FROM mysql.help_keyword`; +let $c_help_relation= `SELECT COUNT(*) FROM mysql.help_relation`; +let $c_help_topic= `SELECT COUNT(*) FROM mysql.help_topic`; +if (`SELECT $c_help_category + $c_help_keyword + $c_help_relation + + $c_help_topic > 0`) +{ + --skip # Test requires empty help tables = Development test configuration +} + +--replace_column 9 "#ARL#" 10 "#DL#" 11 "#MDL#" 12 "#IL#" 13 "#DF#" 15 "YYYY-MM-DD hh:mm:ss" 16 "YYYY-MM-DD hh:mm:ss" 17 "YYYY-MM-DD hh:mm:ss" +SELECT * FROM INFORMATION_SCHEMA.TABLES +WHERE TABLE_SCHEMA = 'mysql' AND TABLE_NAME LIKE 'help_%'; +SELECT * FROM INFORMATION_SCHEMA.STATISTICS +WHERE TABLE_SCHEMA = 'mysql' AND TABLE_NAME LIKE 'help_%'; diff --git a/mysql-test/suite/funcs_1/t/innodb__datadict.test b/mysql-test/suite/funcs_1/t/innodb__datadict.test index d678d2e6959..587ab1d6588 100644 --- a/mysql-test/suite/funcs_1/t/innodb__datadict.test +++ b/mysql-test/suite/funcs_1/t/innodb__datadict.test @@ -3,5 +3,9 @@ --source include/have_innodb.inc let $engine_type= innodb; +# $OTHER_ENGINE_TYPE must be +# - <> $engine_type +# - all time available like MyISAM or MEMORY +let $OTHER_ENGINE_TYPE= MEMORY; --source suite/funcs_1/datadict/datadict_master.inc diff --git a/mysql-test/suite/funcs_1/t/memory__datadict.test b/mysql-test/suite/funcs_1/t/memory__datadict.test index 29980be0115..b78a2511f3c 100644 --- a/mysql-test/suite/funcs_1/t/memory__datadict.test +++ b/mysql-test/suite/funcs_1/t/memory__datadict.test @@ -1,5 +1,9 @@ #### suite/funcs_1/t/datadict_memory.test # let $engine_type= memory; +# $OTHER_ENGINE_TYPE must be +# - <> $engine_type +# - all time available like MyISAM or MEMORY +let $OTHER_ENGINE_TYPE= MyISAM; --source suite/funcs_1/datadict/datadict_master.inc diff --git a/mysql-test/suite/funcs_1/t/myisam__datadict.test b/mysql-test/suite/funcs_1/t/myisam__datadict.test index 5edaeb94ecd..e4baba1de3a 100644 --- a/mysql-test/suite/funcs_1/t/myisam__datadict.test +++ b/mysql-test/suite/funcs_1/t/myisam__datadict.test @@ -1,5 +1,10 @@ #### suite/funcs_1/t/datadict_myisam.test # + let $engine_type= myisam; +# $OTHER_ENGINE_TYPE must be +# - <> $engine_type +# - all time available like MyISAM or MEMORY +let $OTHER_ENGINE_TYPE= MEMORY; --source suite/funcs_1/datadict/datadict_master.inc diff --git a/scripts/mysql_config.sh b/scripts/mysql_config.sh index ab58c512aac..ae58655ed0f 100644 --- a/scripts/mysql_config.sh +++ b/scripts/mysql_config.sh @@ -126,7 +126,7 @@ done cflags=`echo "$cflags"|sed -e 's/ *\$//'` # Same for --libs(_r) -for remove in lmtmalloc static-libcxa i-static +for remove in lmtmalloc static-libcxa i-static static-intel do # We know the strings starts with a space libs=`echo "$libs"|sed -e "s/ -$remove */ /g"` diff --git a/sql/CMakeLists.txt b/sql/CMakeLists.txt index 0c4aeaf6043..84b042a91b1 100755 --- a/sql/CMakeLists.txt +++ b/sql/CMakeLists.txt @@ -145,4 +145,4 @@ SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ADD_LIBRARY(udf_example MODULE udf_example.c udf_example.def) ADD_DEPENDENCIES(udf_example strings) -TARGET_LINK_LIBRARIES(udf_example wsock32) +TARGET_LINK_LIBRARIES(udf_example strings wsock32) diff --git a/win/build-nmake-x64.bat b/win/build-nmake-x64.bat new file mode 100644 index 00000000000..f73574ac8de --- /dev/null +++ b/win/build-nmake-x64.bat @@ -0,0 +1,21 @@ +@echo off + +REM Copyright (C) 2006 MySQL AB +REM +REM This program is free software; you can redistribute it and/or modify +REM it under the terms of the GNU General Public License as published by +REM the Free Software Foundation; version 2 of the License. +REM +REM This program is distributed in the hope that it will be useful, +REM but WITHOUT ANY WARRANTY; without even the implied warranty of +REM MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +REM GNU General Public License for more details. +REM +REM You should have received a copy of the GNU General Public License +REM along with this program; if not, write to the Free Software +REM Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +if exist cmakecache.txt del cmakecache.txt +copy win\nmake_x64_cache.txt cmakecache.txt +cmake -G "NMake Makefiles" +copy cmakecache.txt win\nmake_x64_cache.txt diff --git a/win/build-nmake.bat b/win/build-nmake.bat new file mode 100644 index 00000000000..89505c08313 --- /dev/null +++ b/win/build-nmake.bat @@ -0,0 +1,21 @@ +@echo off + +REM Copyright (C) 2006 MySQL AB +REM +REM This program is free software; you can redistribute it and/or modify +REM it under the terms of the GNU General Public License as published by +REM the Free Software Foundation; version 2 of the License. +REM +REM This program is distributed in the hope that it will be useful, +REM but WITHOUT ANY WARRANTY; without even the implied warranty of +REM MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +REM GNU General Public License for more details. +REM +REM You should have received a copy of the GNU General Public License +REM along with this program; if not, write to the Free Software +REM Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +if exist cmakecache.txt del cmakecache.txt +copy win\nmake_cache.txt cmakecache.txt +cmake -G "NMake Makefiles" +copy cmakecache.txt win\nmake_cache.txt |