summaryrefslogtreecommitdiff
path: root/mysql-test/t/ps_qc_innodb.test
diff options
context:
space:
mode:
authorOleksandr Byelkin <sanja@mariadb.com>2018-03-21 12:13:37 +0100
committerOleksandr Byelkin <sanja@mariadb.com>2018-03-21 19:47:42 +0100
commitf3994b74327eef37fa6010368f7f8db044cf70f8 (patch)
tree119fadc19e3476a13cc9df65ede9fd0f446861ba /mysql-test/t/ps_qc_innodb.test
parent2dd4e50d5f74451a5f6bf56d1a36bafffcca878c (diff)
downloadmariadb-git-f3994b74327eef37fa6010368f7f8db044cf70f8.tar.gz
MDEV-15492: Subquery crash similar to MDEV-10050
Detection of first execution of PS fixed. More debug info.
Diffstat (limited to 'mysql-test/t/ps_qc_innodb.test')
-rw-r--r--mysql-test/t/ps_qc_innodb.test35
1 files changed, 35 insertions, 0 deletions
diff --git a/mysql-test/t/ps_qc_innodb.test b/mysql-test/t/ps_qc_innodb.test
new file mode 100644
index 00000000000..e09a2bf4070
--- /dev/null
+++ b/mysql-test/t/ps_qc_innodb.test
@@ -0,0 +1,35 @@
+--source include/have_query_cache.inc
+--source include/have_innodb.inc
+
+--echo #
+--echo # MDEV-15492: Subquery crash similar to MDEV-10050
+--echo #
+
+SET @qcs.save= @@global.query_cache_size, @qct.save= @@global.query_cache_type;
+SET GLOBAL query_cache_size= 512*1024*1024, query_cache_type= ON;
+
+--connect (con1,localhost,root,,test)
+CREATE TABLE t1 (a INT) ENGINE=InnoDB;
+CREATE TABLE t2 (b INT) ENGINE=InnoDB;
+CREATE VIEW v AS select a from t1 join t2;
+
+PREPARE stmt1 FROM "SELECT * FROM t1 WHERE a in (SELECT a FROM v)";
+
+--connect (con2,localhost,root,,test)
+PREPARE stmt2 FROM "SELECT * FROM t1 WHERE a in (SELECT a FROM v)";
+EXECUTE stmt2;
+
+--connection con1
+EXECUTE stmt1;
+INSERT INTO t2 VALUES (0);
+EXECUTE stmt1;
+START TRANSACTION;
+EXECUTE stmt1;
+
+# Cleanup
+--disconnect con1
+--disconnect con2
+--connection default
+DROP VIEW v;
+DROP TABLE t1, t2;
+SET GLOBAL query_cache_size= @qcs.save, query_cache_type= @qct.save;