Commit 6b9f56e3 authored by unknown's avatar unknown

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

into  weblab.(none):/home/marcsql/TREE/mysql-5.1-24392


mysql-test/t/show_check.test:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
parents bb3e15e8 186e3ee5
...@@ -11,7 +11,7 @@ ADD UNDOFILE 'undofile02.dat' ...@@ -11,7 +11,7 @@ ADD UNDOFILE 'undofile02.dat'
INITIAL_SIZE = 4M INITIAL_SIZE = 4M
ENGINE=XYZ; ENGINE=XYZ;
Warnings: 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' Error 1466 Table storage engine 'MyISAM' does not support the create option 'TABLESPACE or LOGFILE GROUP'
CREATE TABLESPACE ts1 CREATE TABLESPACE ts1
ADD DATAFILE 'datafile.dat' ADD DATAFILE 'datafile.dat'
......
...@@ -54,7 +54,7 @@ create table t1 (a int) ...@@ -54,7 +54,7 @@ create table t1 (a int)
engine = x engine = x
partition by key (a); partition by key (a);
Warnings: Warnings:
Error 1286 Unknown table engine 'x' Warning 1286 Unknown table engine 'x'
show create table t1; show create table t1;
Table Create Table Table Create Table
t1 CREATE TABLE `t1` ( t1 CREATE TABLE `t1` (
...@@ -67,7 +67,7 @@ partition by list (a) ...@@ -67,7 +67,7 @@ partition by list (a)
(partition p0 values in (0)); (partition p0 values in (0));
alter table t1 engine = x; alter table t1 engine = x;
Warnings: Warnings:
Error 1286 Unknown table engine 'x' Warning 1286 Unknown table engine 'x'
show create table t1; show create table t1;
Table Create Table Table Create Table
t1 CREATE TABLE `t1` ( t1 CREATE TABLE `t1` (
......
...@@ -304,7 +304,9 @@ execute stmt4; ...@@ -304,7 +304,9 @@ execute stmt4;
Variable_name Value Variable_name Value
sql_mode sql_mode
prepare stmt4 from ' show engine bdb logs '; 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 grants for user ';
prepare stmt4 from ' show create table t2 '; prepare stmt4 from ' show create table t2 ';
prepare stmt4 from ' show master status '; prepare stmt4 from ' show master status ';
......
...@@ -730,4 +730,18 @@ show keys from `mysqlttest\1`.`a\b`; ...@@ -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 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 table `mysqlttest\1`.`a\b`;
drop database `mysqlttest\1`; 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 End of 5.1 tests
...@@ -321,14 +321,10 @@ prepare stmt4 from ' show status like ''Threads_running'' '; ...@@ -321,14 +321,10 @@ prepare stmt4 from ' show status like ''Threads_running'' ';
execute stmt4; execute stmt4;
prepare stmt4 from ' show variables like ''sql_mode'' '; prepare stmt4 from ' show variables like ''sql_mode'' ';
execute stmt4; execute stmt4;
# The output depends on the bdb being enabled and on the history --error ER_UNKNOWN_STORAGE_ENGINE
# 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
prepare stmt4 from ' show engine bdb logs '; prepare stmt4 from ' show engine bdb logs ';
execute stmt4; --error ER_UNKNOWN_STORAGE_ENGINE
--enable_result_log prepare stmt4 from ' show engine foo logs ';
prepare stmt4 from ' show grants for user '; prepare stmt4 from ' show grants for user ';
prepare stmt4 from ' show create table t2 '; prepare stmt4 from ' show create table t2 ';
prepare stmt4 from ' show master status '; prepare stmt4 from ' show master status ';
......
...@@ -563,4 +563,22 @@ show keys from `mysqlttest\1`.`a\b`; ...@@ -563,4 +563,22 @@ show keys from `mysqlttest\1`.`a\b`;
drop table `mysqlttest\1`.`a\b`; drop table `mysqlttest\1`.`a\b`;
drop database `mysqlttest\1`; 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 --echo End of 5.1 tests
...@@ -1043,7 +1043,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b, ulong *yystacksize); ...@@ -1043,7 +1043,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b, ulong *yystacksize);
%type <interval_time_st> interval_time_st %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 %type <row_type> row_types
...@@ -4250,19 +4250,31 @@ default_collation: ...@@ -4250,19 +4250,31 @@ default_collation:
Lex->create_info.used_fields|= HA_CREATE_USED_DEFAULT_CHARSET; 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: storage_engines:
ident_or_text ident_or_text
{ {
$$ = ha_resolve_by_name(YYTHD, &$1); $$ = ha_resolve_by_name(YYTHD, &$1);
if ($$ == NULL) 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_UNKNOWN_STORAGE_ENGINE,
ER(ER_UNKNOWN_STORAGE_ENGINE), $1.str); ER(ER_UNKNOWN_STORAGE_ENGINE), $1.str);
} }
...@@ -8455,12 +8467,10 @@ show_param: ...@@ -8455,12 +8467,10 @@ show_param:
if (prepare_schema_table(YYTHD, lex, 0, SCH_PLUGINS)) if (prepare_schema_table(YYTHD, lex, 0, SCH_PLUGINS))
YYABORT; YYABORT;
} }
| ENGINE_SYM storage_engines | ENGINE_SYM known_storage_engines show_engine_param
{ Lex->create_info.db_type= $2; } { Lex->create_info.db_type= $2; }
show_engine_param | ENGINE_SYM ALL show_engine_param
| ENGINE_SYM ALL
{ Lex->create_info.db_type= NULL; } { Lex->create_info.db_type= NULL; }
show_engine_param
| opt_full COLUMNS from_or_in table_ident opt_db wild_and_where | opt_full COLUMNS from_or_in table_ident opt_db wild_and_where
{ {
LEX *lex= Lex; 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