summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <tsmith@ramayana.hindu.god>2007-09-28 10:54:49 -0600
committerunknown <tsmith@ramayana.hindu.god>2007-09-28 10:54:49 -0600
commitba0cd51eb19f1f8868901d4b2327e1c8f4745c19 (patch)
tree3b7d7d44c9a9850c900bf0c7499f62818e36ed84
parentdb55af7c4073926e0b1b8ece0f50b4842a6a6d22 (diff)
parentadb1d7a32787e1e5c40a739b9f2e990e67ba946f (diff)
downloadmariadb-git-ba0cd51eb19f1f8868901d4b2327e1c8f4745c19.tar.gz
Merge ramayana.hindu.god:/home/tsmith/m/bk/50
into ramayana.hindu.god:/home/tsmith/m/bk/maint/50 configure.in: Auto merged scripts/mysql_config.sh: Auto merged libmysql/libmysql.c: Manual merge
-rw-r--r--configure.in4
-rw-r--r--libmysql/libmysql.c2
-rw-r--r--mysql-test/include/have_bug25714.inc2
-rw-r--r--mysql-test/suite/funcs_1/README.txt22
-rw-r--r--mysql-test/suite/funcs_1/datadict/datadict_master.inc448
-rw-r--r--mysql-test/suite/funcs_1/r/datadict_help_tables_build.result22
-rw-r--r--mysql-test/suite/funcs_1/r/datadict_help_tables_dev.result18
-rw-r--r--mysql-test/suite/funcs_1/r/innodb__datadict.result240
-rw-r--r--mysql-test/suite/funcs_1/r/memory__datadict.result240
-rw-r--r--mysql-test/suite/funcs_1/r/myisam__datadict.result240
-rw-r--r--mysql-test/suite/funcs_1/t/datadict_help_tables_build.test73
-rw-r--r--mysql-test/suite/funcs_1/t/datadict_help_tables_dev.test27
-rw-r--r--mysql-test/suite/funcs_1/t/innodb__datadict.test4
-rw-r--r--mysql-test/suite/funcs_1/t/memory__datadict.test4
-rw-r--r--mysql-test/suite/funcs_1/t/myisam__datadict.test5
-rw-r--r--scripts/mysql_config.sh2
-rwxr-xr-xsql/CMakeLists.txt2
-rw-r--r--win/build-nmake-x64.bat21
-rw-r--r--win/build-nmake.bat21
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