Commit 85fb7c8d authored by malff/marcsql@weblab.(none)'s avatar malff/marcsql@weblab.(none)

Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime

into  weblab.(none):/home/marcsql/TREE/mysql-5.1-24392
parents db5c1646 2bd3c8fd
......@@ -11,7 +11,7 @@ ADD UNDOFILE 'undofile02.dat'
INITIAL_SIZE = 4M
ENGINE=XYZ;
Warnings:
Error 1286 Unknown table engine 'XYZ'
Warning 1286 Unknown table engine 'XYZ'
Error 1466 Table storage engine 'MyISAM' does not support the create option 'TABLESPACE or LOGFILE GROUP'
CREATE TABLESPACE ts1
ADD DATAFILE 'datafile.dat'
......
......@@ -54,7 +54,7 @@ create table t1 (a int)
engine = x
partition by key (a);
Warnings:
Error 1286 Unknown table engine 'x'
Warning 1286 Unknown table engine 'x'
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
......@@ -67,7 +67,7 @@ partition by list (a)
(partition p0 values in (0));
alter table t1 engine = x;
Warnings:
Error 1286 Unknown table engine 'x'
Warning 1286 Unknown table engine 'x'
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
......
......@@ -304,7 +304,9 @@ execute stmt4;
Variable_name Value
sql_mode
prepare stmt4 from ' show engine bdb logs ';
execute stmt4;
ERROR 42000: Unknown table engine 'bdb'
prepare stmt4 from ' show engine foo logs ';
ERROR 42000: Unknown table engine 'foo'
prepare stmt4 from ' show grants for user ';
prepare stmt4 from ' show create table t2 ';
prepare stmt4 from ' show master status ';
......
......@@ -730,4 +730,18 @@ show keys from `mysqlttest\1`.`a\b`;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
drop table `mysqlttest\1`.`a\b`;
drop database `mysqlttest\1`;
show engine foobar status;
ERROR 42000: Unknown table engine 'foobar'
show engine foobar logs;
ERROR 42000: Unknown table engine 'foobar'
show engine foobar mutex;
ERROR 42000: Unknown table engine 'foobar'
show engine mutex status;
ERROR 42000: Unknown table engine 'mutex'
show engine csv status;
Type Name Status
show engine csv logs;
Type Name Status
show engine csv mutex;
Type Name Status
End of 5.1 tests
......@@ -321,14 +321,10 @@ prepare stmt4 from ' show status like ''Threads_running'' ';
execute stmt4;
prepare stmt4 from ' show variables like ''sql_mode'' ';
execute stmt4;
# The output depends on the bdb being enabled and on the history
# history (actions of the bdb engine).
# That is the reason why, we switch the output here off.
# (The real output will be tested in ps_6bdb.test)
--disable_result_log
--error ER_UNKNOWN_STORAGE_ENGINE
prepare stmt4 from ' show engine bdb logs ';
execute stmt4;
--enable_result_log
--error ER_UNKNOWN_STORAGE_ENGINE
prepare stmt4 from ' show engine foo logs ';
prepare stmt4 from ' show grants for user ';
prepare stmt4 from ' show create table t2 ';
prepare stmt4 from ' show master status ';
......
......@@ -563,4 +563,22 @@ show keys from `mysqlttest\1`.`a\b`;
drop table `mysqlttest\1`.`a\b`;
drop database `mysqlttest\1`;
#
# Bug#24392: SHOW ENGINE MUTEX STATUS is a synonym for SHOW INNODB STATUS
#
--error ER_UNKNOWN_STORAGE_ENGINE
show engine foobar status;
--error ER_UNKNOWN_STORAGE_ENGINE
show engine foobar logs;
--error ER_UNKNOWN_STORAGE_ENGINE
show engine foobar mutex;
--error ER_UNKNOWN_STORAGE_ENGINE
show engine mutex status;
show engine csv status;
show engine csv logs;
show engine csv mutex;
--echo End of 5.1 tests
......@@ -1043,7 +1043,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b, ulong *yystacksize);
%type <interval_time_st> interval_time_st
%type <db_type> storage_engines
%type <db_type> storage_engines known_storage_engines
%type <row_type> row_types
......@@ -4250,19 +4250,31 @@ default_collation:
Lex->create_info.used_fields|= HA_CREATE_USED_DEFAULT_CHARSET;
};
known_storage_engines:
ident_or_text
{
$$ = ha_resolve_by_name(YYTHD, &$1);
if ($$ == NULL)
{
my_error(ER_UNKNOWN_STORAGE_ENGINE, MYF(0), $1.str);
YYABORT;
}
}
;
storage_engines:
ident_or_text
{
$$ = ha_resolve_by_name(YYTHD, &$1);
if ($$ == NULL)
if (YYTHD->variables.sql_mode & MODE_NO_ENGINE_SUBSTITUTION)
{
my_error(ER_UNKNOWN_STORAGE_ENGINE, MYF(0), $1.str);
YYABORT;
}
else
{
push_warning_printf(YYTHD, MYSQL_ERROR::WARN_LEVEL_ERROR,
if (YYTHD->variables.sql_mode & MODE_NO_ENGINE_SUBSTITUTION)
{
my_error(ER_UNKNOWN_STORAGE_ENGINE, MYF(0), $1.str);
YYABORT;
}
push_warning_printf(YYTHD, MYSQL_ERROR::WARN_LEVEL_WARN,
ER_UNKNOWN_STORAGE_ENGINE,
ER(ER_UNKNOWN_STORAGE_ENGINE), $1.str);
}
......@@ -8455,12 +8467,10 @@ show_param:
if (prepare_schema_table(YYTHD, lex, 0, SCH_PLUGINS))
YYABORT;
}
| ENGINE_SYM storage_engines
| ENGINE_SYM known_storage_engines show_engine_param
{ Lex->create_info.db_type= $2; }
show_engine_param
| ENGINE_SYM ALL
| ENGINE_SYM ALL show_engine_param
{ Lex->create_info.db_type= NULL; }
show_engine_param
| opt_full COLUMNS from_or_in table_ident opt_db wild_and_where
{
LEX *lex= Lex;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment