-
unknown authored
Before this fix, the command SHOW ENGINE <name> STATUS would: - print a warning if the engine name is unknown, - proceed and implement the same behavior as SHOW ENGINE ALL STATUS, and list the status of all the storage engines registered. In particular, this behavior caused confusion about the command : SHOW ENGINE MUTEX STATUS, which as a side effect would print the status of the innodb engine when that engine is registered. Also, before this fix, every time an unknown engine name was substituted by the default engine (which happen unless SQL_MODE NO_ENGINE_SUBSTITUTION is set), a malformed warning was raised. For example, the command ALTER TABLE T1 ENGINE = X would print : Warnings: Error 1286 Unknown table engine 'X' With this fix: SHOW ENGINE <name> STATUS|LOGS|MUTEX always fails with an error when the engine <name> is unknown. For other commands, warnings about unknown engines are raised as: Warnings: Warning 1286 Unknown table engine 'X' In other words, engine substitution never affect the SHOW ENGINE command, since this would lead to very confusing results. mysql-test/r/ndb_dd_basic.result: Warnings for unknown engines. mysql-test/r/partition_innodb.result: Warnings for unknown engines. mysql-test/r/ps_1general.result: Fixed SHOW ENGINE <name> STATUS|LOGS|MUTEX mysql-test/r/show_check.result: Fixed SHOW ENGINE <name> STATUS|LOGS|MUTEX mysql-test/t/ps_1general.test: Fixed SHOW ENGINE <name> STATUS|LOGS|MUTEX mysql-test/t/show_check.test: Fixed SHOW ENGINE <name> STATUS|LOGS|MUTEX sql/sql_yacc.yy: Fixed SHOW ENGINE <name> STATUS|LOGS|MUTEX
186e3ee5