mariadb/mysql-test/t/blackhole_plugin.test
Alexander Nozdrin 2f5a462fdd A patch for Bug#11765297 (58251 - archive_plugin and blackhole_plugin
fails when running with ps-protocol).

The problem was that when running in --ps-protocol mode mysqltest.cc
didn't close created prepared statements. So, the plugins could not be
unistalled because there was a prepared statement using them.

A fix is to add a dummy statement that forces mysqltest.cc to close
the last prepared statement (which uses a plugin-defined table).
2011-03-14 14:03:08 +03:00

34 lines
1,009 B
Text

--source include/not_windows.inc
--source include/have_blackhole_plugin.inc
# When running in parallel we get
# Warning 1620 Plugin is busy and will be uninstalled on shutdown
--source include/not_parallel.inc
CREATE TABLE t1(a int) ENGINE=BLACKHOLE;
DROP TABLE t1;
eval INSTALL PLUGIN blackhole SONAME 'ha_blackhole.so';
--error 1125
eval INSTALL PLUGIN BLACKHOLE SONAME 'ha_blackhole.so';
UNINSTALL PLUGIN blackhole;
eval INSTALL PLUGIN blackhole SONAME 'ha_blackhole.so';
CREATE TABLE t1(a int) ENGINE=BLACKHOLE;
DROP TABLE t1;
# This dummy statement is required for --ps-protocol mode.
# The thing is that last prepared statement is "cached" in mysqltest.cc
# (unless "reconnect" is enabled, and that's not the case here).
# This statement forces mysqltest.cc to close prepared "DROP TABLE t1".
# Otherwise, the plugin can not be uninstalled because there is an active
# prepared statement using it.
SELECT 1;
UNINSTALL PLUGIN blackhole;
--error ER_SP_DOES_NOT_EXIST
UNINSTALL PLUGIN blackhole;