summaryrefslogtreecommitdiff
path: root/mysql-test/main/blackhole_plugin.test
blob: 487fc5656f27a6749f5abfcbad73eca8de3f5d2e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
if (!$HA_BLACKHOLE_SO) {
  --skip Need blackhole plugin
}
set sql_mode="";
CREATE TABLE t1(a int) ENGINE=BLACKHOLE;
set sql_mode=default;
DROP TABLE t1;
--replace_regex /\.dll/.so/
eval INSTALL PLUGIN blackhole SONAME '$HA_BLACKHOLE_SO';
--replace_regex /\.dll/.so/
--error ER_PLUGIN_INSTALLED
eval INSTALL PLUGIN BLACKHOLE SONAME '$HA_BLACKHOLE_SO';

UNINSTALL PLUGIN blackhole;
--replace_regex /\.dll/.so/
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;