summaryrefslogtreecommitdiff
path: root/mysql-test/t/ps_1general.test
diff options
context:
space:
mode:
authorunknown <andrey@example.com>2006-08-23 15:50:06 +0200
committerunknown <andrey@example.com>2006-08-23 15:50:06 +0200
commit7a37eeae62b63f90f630ad0f6618d27d72c2f54b (patch)
treedeaa93e8d4a073308e6b694ab970c3eaccae03bc /mysql-test/t/ps_1general.test
parent96aef62c73d35a4a1c1efe6a782f515419fd18c1 (diff)
downloadmariadb-git-7a37eeae62b63f90f630ad0f6618d27d72c2f54b.tar.gz
Fix for bug #20665 All commands supported in Stored Procedures
should work in Prepared Statements. Post-review changeset. Problem: There are some commands which are avaiable to be executed in SP but cannot be prepared. This patch fixes this and makes it possible prepare these statements. Changes: The commands later are made available in PS. RESET has been forbidden in SF/Trigger. Solution: All current server commands where checked and those missing (see later) we added. Tests for all of the commands with repeated executions were added - testing with SP, SF and PS. SHOW BINLOG EVENTS SHOW (MASTER | SLAVE) STATUS SHOW (MASTER | BINARY) LOGS SHOW (PROCEDURE | FUNCTION) CODE (parsable only in debug builds) SHOW CREATE (PROCEDURE | FUNCTION | EVENT | TABLE | VIEW) SHOW (AUTHORS | CONTRIBUTORS | WARNINGS | ERRORS) CHANGE MASTER RESET (MASTER | SLAVE | QUERY CACHE) SLAVE (START | STOP) CHECKSUM (TABLE | TABLES) INSTALL PLUGIN UNINSTALL PLUGIN CACHE INDEX LOAD INDEX INTO CACHE GRANT REVOKE KILL (CREATE | RENAME | DROP) DATABASE (CREATE | RENAME | DROP) USER FLUSH (TABLE | TABLES | TABLES WITH READ LOCK | HOSTS | PRIVILEGES | LOGS | STATUS | MASTER | SLAVE | DES_KEY_FILE | USER_RESOURCES) mysql-test/r/ps.result: update result mysql-test/r/ps_1general.result: update result mysql-test/r/ps_grant.result: update result mysql-test/r/sp-dynamic.result: update result mysql-test/t/ps.test: Add more statements, probably all currently missing which are possible in a SP but not preparable. Every statement is tested in a SP, in a SF and attempted to prepare. mysql-test/t/ps_1general.test: - Enable some of the statements, which are already possible in SP. - 1295 -> ER_UNSUPPORTED_PS mysql-test/t/ps_grant.test: Enable statements already possible in SP. sql/sp_head.cc: - Reorder to keep some alphabet order. - Add missing SHOW_SCHEDULER_STATUS. sql/sql_prepare.cc: Add possibility to prepare statements, which are already allowed in SP.
Diffstat (limited to 'mysql-test/t/ps_1general.test')
-rw-r--r--mysql-test/t/ps_1general.test24
1 files changed, 6 insertions, 18 deletions
diff --git a/mysql-test/t/ps_1general.test b/mysql-test/t/ps_1general.test
index c15bc1633a6..c0b81796731 100644
--- a/mysql-test/t/ps_1general.test
+++ b/mysql-test/t/ps_1general.test
@@ -330,17 +330,11 @@ prepare stmt4 from ' show engine bdb logs ';
execute stmt4;
--enable_result_log
prepare stmt4 from ' show grants for user ';
---error 1295
prepare stmt4 from ' show create table t2 ';
---error 1295
prepare stmt4 from ' show master status ';
---error 1295
prepare stmt4 from ' show master logs ';
---error 1295
prepare stmt4 from ' show slave status ';
---error 1295
prepare stmt4 from ' show warnings limit 20 ';
---error 1295
prepare stmt4 from ' show errors limit 20 ';
prepare stmt4 from ' show storage engines ';
# The output depends upon the precise order in which
@@ -427,14 +421,12 @@ prepare stmt1 from ' execute stmt2 ' ;
prepare stmt1 from ' deallocate prepare never_prepared ' ;
## switch the database connection
---error 1295
+--error ER_UNSUPPORTED_PS
prepare stmt4 from ' use test ' ;
## create/drop database
---error 1295
prepare stmt3 from ' create database mysqltest ';
create database mysqltest ;
---error 1295
prepare stmt3 from ' drop database mysqltest ';
drop database mysqltest ;
@@ -446,12 +438,12 @@ drop table t2 ;
--error 1146
execute stmt3;
## lock/unlock
---error 1295
+--error ER_UNSUPPORTED_PS
prepare stmt3 from ' lock tables t1 read ' ;
---error 1295
+--error ER_UNSUPPORTED_PS
prepare stmt3 from ' unlock tables ' ;
## Load/Unload table contents
---error 1295
+--error ER_UNSUPPORTED_PS
prepare stmt1 from ' load data infile ''data.txt''
into table t1 fields terminated by ''\t'' ';
prepare stmt1 from ' select * into outfile ''data.txt'' from t1 ';
@@ -459,13 +451,12 @@ execute stmt1 ;
##
prepare stmt1 from ' optimize table t1 ' ;
prepare stmt1 from ' analyze table t1 ' ;
---error 1295
prepare stmt1 from ' checksum table t1 ' ;
prepare stmt1 from ' repair table t1 ' ;
---error 1295
+--error ER_UNSUPPORTED_PS
prepare stmt1 from ' restore table t1 from ''data.txt'' ' ;
## handler
---error 1295
+--error ER_UNSUPPORTED_PS
prepare stmt1 from ' handler t1 open ';
@@ -491,11 +482,8 @@ SET sql_mode=ansi;
execute stmt5;
SET sql_mode="";
---error 1295
prepare stmt1 from ' flush local privileges ' ;
---error 1295
prepare stmt1 from ' reset query cache ' ;
---error 1295
prepare stmt1 from ' KILL 0 ';
## simple explain