List:Commits« Previous MessageNext Message »
From:mleich Date:August 28 2007 4:37pm
Subject:bk commit into 5.0 tree (mleich:1.2509) BUG#30418
View as plain text  
Below is the list of changes that have just been committed into a local
5.0 repository of mleich. When mleich does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet@stripped, 2007-08-28 18:37:17+02:00, mleich@stripped +12 -0
  Fixes for
       Bug#30418 "datadict" tests (all engines) fail: Dependency on the host name
                  for ordering
       Bug#30420 "datadict" tests (all engines) fail: Release build has help tables loaded
       Bug#30438 "{memory,myisam,ndb}__datadict" tests fail: Use "InnoDB" without checking
       Bug#30440 "datadict" tests (all engines) fail: Character sets depend on configuration
  Attention: Only the build team can check if Bug#30440 is really fixed.

  mysql-test/suite/funcs_1/README.txt@stripped, 2007-08-28 18:35:22+02:00, mleich@stripped +22 -0
    Update README

  mysql-test/suite/funcs_1/datadict/datadict_master.inc@stripped, 2007-08-28 18:35:22+02:00, mleich@stripped +242 -206
    1. Exclude the help tables from the INFORMATION_SCHEMA.TABLES
       and the INFORMATION_SCHEMA.STATISTICS selects.
    2. Replace error numbers with error names
    3. Sort some results with mysqltest builtin function
    4. Some other minor changes

  mysql-test/suite/funcs_1/r/datadict_help_tables_build.result@stripped, 2007-08-28 18:35:22+02:00, mleich@stripped +22 -0
    File with expected results

  mysql-test/suite/funcs_1/r/datadict_help_tables_build.result@stripped, 2007-08-28 18:35:22+02:00, mleich@stripped +0 -0

  mysql-test/suite/funcs_1/r/datadict_help_tables_dev.result@stripped, 2007-08-28 18:35:22+02:00, mleich@stripped +18 -0
    File with expected results

  mysql-test/suite/funcs_1/r/datadict_help_tables_dev.result@stripped, 2007-08-28 18:35:22+02:00, mleich@stripped +0 -0

  mysql-test/suite/funcs_1/r/innodb__datadict.result@stripped, 2007-08-28 18:35:22+02:00, mleich@stripped +31 -209
    Updated expected results

  mysql-test/suite/funcs_1/r/memory__datadict.result@stripped, 2007-08-28 18:35:22+02:00, mleich@stripped +31 -209
    Updated expected results

  mysql-test/suite/funcs_1/r/myisam__datadict.result@stripped, 2007-08-28 18:35:22+02:00, mleich@stripped +31 -209
    Updated expected results

  mysql-test/suite/funcs_1/t/datadict_help_tables_build.test@stripped, 2007-08-28 18:35:22+02:00, mleich@stripped +73 -0
    Additional test checking the information about the help tables within
           INFORMATION_SCHEMA.TABLES/INFORMATION_SCHEMA.STATISTICS
    as compensation for the removed checks within datadict_master.inc.
    Variant for use during build tests (non empty help tables)

  mysql-test/suite/funcs_1/t/datadict_help_tables_build.test@stripped, 2007-08-28 18:35:22+02:00, mleich@stripped +0 -0

  mysql-test/suite/funcs_1/t/datadict_help_tables_dev.test@stripped, 2007-08-28 18:35:22+02:00, mleich@stripped +27 -0
    Additional test checking the information about the help tables within
           INFORMATION_SCHEMA.TABLES/INFORMATION_SCHEMA.STATISTICS
    as compensation for the removed checks within datadict_master.inc.
    Variant for use during development tests (empty help tables)

  mysql-test/suite/funcs_1/t/datadict_help_tables_dev.test@stripped, 2007-08-28 18:35:22+02:00, mleich@stripped +0 -0

  mysql-test/suite/funcs_1/t/innodb__datadict.test@stripped, 2007-08-28 18:35:22+02:00, mleich@stripped +4 -0
    Add $OTHER_ENGINE_TYPE variable which is used in data_dict_master.inc.

  mysql-test/suite/funcs_1/t/memory__datadict.test@stripped, 2007-08-28 18:35:22+02:00, mleich@stripped +4 -0
    Add $OTHER_ENGINE_TYPE variable which is used in data_dict_master.inc.

  mysql-test/suite/funcs_1/t/myisam__datadict.test@stripped, 2007-08-28 18:35:22+02:00, mleich@stripped +5 -0
    Add $OTHER_ENGINE_TYPE variable which is used in data_dict_master.inc.

diff -Nrup a/mysql-test/suite/funcs_1/README.txt b/mysql-test/suite/funcs_1/README.txt
--- a/mysql-test/suite/funcs_1/README.txt	2007-02-06 18:54:34 +01:00
+++ b/mysql-test/suite/funcs_1/README.txt	2007-08-28 18:35:22 +02:00
@@ -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 -Nrup a/mysql-test/suite/funcs_1/datadict/datadict_master.inc b/mysql-test/suite/funcs_1/datadict/datadict_master.inc
--- a/mysql-test/suite/funcs_1/datadict/datadict_master.inc	2007-07-25 06:31:21 +02:00
+++ b/mysql-test/suite/funcs_1/datadict/datadict_master.inc	2007-08-28 18:35:22 +02:00
@@ -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@stripped, 2006-06-28 10:11:43-07:00.
+. This .result file has been checked OK with Linux 5.0.48,
+. build tree ChangeSet@stripped, 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_nam
 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_n
   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_ap
  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_co
 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_d
 --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_
 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_
 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.ti
 #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, , te
 
 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_4010
 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_4010
 
 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 >bef
 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_4010
 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.statist
 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 -Nrup a/mysql-test/suite/funcs_1/r/datadict_help_tables_build.result b/mysql-test/suite/funcs_1/r/datadict_help_tables_build.result
--- /dev/null	Wed Dec 31 16:00:00 196900
+++ b/mysql-test/suite/funcs_1/r/datadict_help_tables_build.result	2007-08-28 18:35:22 +02:00
@@ -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 -Nrup a/mysql-test/suite/funcs_1/r/datadict_help_tables_dev.result b/mysql-test/suite/funcs_1/r/datadict_help_tables_dev.result
--- /dev/null	Wed Dec 31 16:00:00 196900
+++ b/mysql-test/suite/funcs_1/r/datadict_help_tables_dev.result	2007-08-28 18:35:22 +02:00
@@ -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 -Nrup a/mysql-test/suite/funcs_1/r/innodb__datadict.result b/mysql-test/suite/funcs_1/r/innodb__datadict.result
--- a/mysql-test/suite/funcs_1/r/innodb__datadict.result	2007-07-25 06:31:21 +02:00
+++ b/mysql-test/suite/funcs_1/r/innodb__datadict.result	2007-08-28 18:35:22 +02:00
@@ -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@stripped, 2006-06-28 10:11:43-07:00.
+. This .result file has been checked OK with Linux 5.0.48,
+. build tree ChangeSet@stripped, 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
 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	D
 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	NUL
 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	
 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, engi
 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 
 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	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	NO
 	
 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	NUL
 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 -Nrup a/mysql-test/suite/funcs_1/r/memory__datadict.result b/mysql-test/suite/funcs_1/r/memory__datadict.result
--- a/mysql-test/suite/funcs_1/r/memory__datadict.result	2007-07-25 06:31:21 +02:00
+++ b/mysql-test/suite/funcs_1/r/memory__datadict.result	2007-08-28 18:35:22 +02:00
@@ -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@stripped, 2006-06-28 10:11:43-07:00.
+. This .result file has been checked OK with Linux 5.0.48,
+. build tree ChangeSet@stripped, 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
 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	D
 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	NUL
 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	
 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, engi
 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 
 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	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	NO
 	
 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	NUL
 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 -Nrup a/mysql-test/suite/funcs_1/r/myisam__datadict.result b/mysql-test/suite/funcs_1/r/myisam__datadict.result
--- a/mysql-test/suite/funcs_1/r/myisam__datadict.result	2007-07-25 06:31:22 +02:00
+++ b/mysql-test/suite/funcs_1/r/myisam__datadict.result	2007-08-28 18:35:22 +02:00
@@ -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@stripped, 2006-06-28 10:11:43-07:00.
+. This .result file has been checked OK with Linux 5.0.48,
+. build tree ChangeSet@stripped, 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
 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	D
 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	NUL
 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	
 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, engi
 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 
 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	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	NO
 	
 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	NUL
 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 -Nrup a/mysql-test/suite/funcs_1/t/datadict_help_tables_build.test b/mysql-test/suite/funcs_1/t/datadict_help_tables_build.test
--- /dev/null	Wed Dec 31 16:00:00 196900
+++ b/mysql-test/suite/funcs_1/t/datadict_help_tables_build.test	2007-08-28 18:35:22 +02:00
@@ -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 -Nrup a/mysql-test/suite/funcs_1/t/datadict_help_tables_dev.test b/mysql-test/suite/funcs_1/t/datadict_help_tables_dev.test
--- /dev/null	Wed Dec 31 16:00:00 196900
+++ b/mysql-test/suite/funcs_1/t/datadict_help_tables_dev.test	2007-08-28 18:35:22 +02:00
@@ -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 -Nrup a/mysql-test/suite/funcs_1/t/innodb__datadict.test b/mysql-test/suite/funcs_1/t/innodb__datadict.test
--- a/mysql-test/suite/funcs_1/t/innodb__datadict.test	2007-02-06 18:54:38 +01:00
+++ b/mysql-test/suite/funcs_1/t/innodb__datadict.test	2007-08-28 18:35:22 +02:00
@@ -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 -Nrup a/mysql-test/suite/funcs_1/t/memory__datadict.test b/mysql-test/suite/funcs_1/t/memory__datadict.test
--- a/mysql-test/suite/funcs_1/t/memory__datadict.test	2007-02-06 18:54:38 +01:00
+++ b/mysql-test/suite/funcs_1/t/memory__datadict.test	2007-08-28 18:35:22 +02:00
@@ -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 -Nrup a/mysql-test/suite/funcs_1/t/myisam__datadict.test b/mysql-test/suite/funcs_1/t/myisam__datadict.test
--- a/mysql-test/suite/funcs_1/t/myisam__datadict.test	2007-02-06 18:54:39 +01:00
+++ b/mysql-test/suite/funcs_1/t/myisam__datadict.test	2007-08-28 18:35:22 +02:00
@@ -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
Thread
bk commit into 5.0 tree (mleich:1.2509) BUG#30418mleich28 Aug