summaryrefslogtreecommitdiff
path: root/mysql-test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test')
-rw-r--r--mysql-test/r/ps_mdev_25302.result23
-rw-r--r--mysql-test/r/skip_grants.result2
-rw-r--r--mysql-test/t/ps_mdev_25302.opt1
-rw-r--r--mysql-test/t/ps_mdev_25302.test26
-rw-r--r--mysql-test/t/skip_grants.test2
5 files changed, 52 insertions, 2 deletions
diff --git a/mysql-test/r/ps_mdev_25302.result b/mysql-test/r/ps_mdev_25302.result
new file mode 100644
index 00000000000..7a039e848af
--- /dev/null
+++ b/mysql-test/r/ps_mdev_25302.result
@@ -0,0 +1,23 @@
+#
+# MDEV-25302: Attempt to set some system variables in PS mode results in issuing the error "ERROR 1615 (HY000): Prepared statement needs to be re-prepared"
+#
+SET @old_event_scheduler=@@event_scheduler;
+PREPARE stmt FROM 'set global event_scheduler=1';
+EXECUTE stmt;
+SELECT @@event_scheduler;
+@@event_scheduler
+ON
+PREPARE stmt FROM 'set global event_scheduler=0';
+EXECUTE stmt;
+SELECT @@event_scheduler;
+@@event_scheduler
+OFF
+SET GLOBAL event_scheduler=@old_event_scheduler;
+SET @old_gtid_slave_pos=@@gtid_slave_pos;
+PREPARE stmt FROM 'SET GLOBAL gtid_slave_pos= ""';
+EXECUTE stmt;
+SELECT @@gtid_slave_pos;
+@@gtid_slave_pos
+
+SET GLOBAL gtid_slave_pos=@old_gtid_slave_pos;
+DEALLOCATE PREPARE stmt;
diff --git a/mysql-test/r/skip_grants.result b/mysql-test/r/skip_grants.result
index b058c8f001e..7d70edc47d5 100644
--- a/mysql-test/r/skip_grants.result
+++ b/mysql-test/r/skip_grants.result
@@ -52,8 +52,6 @@ DROP FUNCTION f3;
# Bug #26807 "set global event_scheduler=1" and --skip-grant-tables crashes server
#
set global event_scheduler=1;
-Warnings:
-Note 1408 Event Scheduler: Loaded 0 events
set global event_scheduler=0;
#
# Bug#26285 Selecting information_schema crahes server
diff --git a/mysql-test/t/ps_mdev_25302.opt b/mysql-test/t/ps_mdev_25302.opt
new file mode 100644
index 00000000000..5699a3387b8
--- /dev/null
+++ b/mysql-test/t/ps_mdev_25302.opt
@@ -0,0 +1 @@
+--skip-grant-tables
diff --git a/mysql-test/t/ps_mdev_25302.test b/mysql-test/t/ps_mdev_25302.test
new file mode 100644
index 00000000000..4c188370498
--- /dev/null
+++ b/mysql-test/t/ps_mdev_25302.test
@@ -0,0 +1,26 @@
+--echo #
+--echo # MDEV-25302: Attempt to set some system variables in PS mode results in issuing the error "ERROR 1615 (HY000): Prepared statement needs to be re-prepared"
+--echo #
+
+SET @old_event_scheduler=@@event_scheduler;
+
+PREPARE stmt FROM 'set global event_scheduler=1';
+--disable_warnings
+EXECUTE stmt;
+--enable_warnings
+SELECT @@event_scheduler;
+PREPARE stmt FROM 'set global event_scheduler=0';
+EXECUTE stmt;
+SELECT @@event_scheduler;
+
+SET GLOBAL event_scheduler=@old_event_scheduler;
+
+SET @old_gtid_slave_pos=@@gtid_slave_pos;
+
+PREPARE stmt FROM 'SET GLOBAL gtid_slave_pos= ""';
+EXECUTE stmt;
+SELECT @@gtid_slave_pos;
+
+SET GLOBAL gtid_slave_pos=@old_gtid_slave_pos;
+DEALLOCATE PREPARE stmt;
+
diff --git a/mysql-test/t/skip_grants.test b/mysql-test/t/skip_grants.test
index 0ecaa022fd4..497592cc80a 100644
--- a/mysql-test/t/skip_grants.test
+++ b/mysql-test/t/skip_grants.test
@@ -94,7 +94,9 @@ DROP FUNCTION f3;
--echo #
--echo # Bug #26807 "set global event_scheduler=1" and --skip-grant-tables crashes server
--echo #
+--disable_warnings
set global event_scheduler=1;
+--enable_warnings
set global event_scheduler=0;
--echo #