summaryrefslogtreecommitdiff
path: root/mysql-test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test')
-rw-r--r--mysql-test/r/view.result15
-rw-r--r--mysql-test/t/view.test20
2 files changed, 35 insertions, 0 deletions
diff --git a/mysql-test/r/view.result b/mysql-test/r/view.result
index 7fc3c48c3a0..98692a0b8ee 100644
--- a/mysql-test/r/view.result
+++ b/mysql-test/r/view.result
@@ -5732,6 +5732,21 @@ t37, t38, t39, t40, t41, t42, t43, t44, t45,
t46, t47, t48, t49, t50, t51, t52, t53, t54,
t55, t56, t57, t58, t59,t60;
drop view v60;
+#
+# MDEV-15572: view.test, server crash with --big-tables=1
+#
+set @save_big_tables=@@big_tables;
+set big_tables=ON;
+CREATE TABLE t1 ( f1 int , f2 int , f3 int , f4 int);
+CREATE TABLE t2 ( f1 int , f2 int , f3 int , f4 int);
+CREATE VIEW v1 AS
+SELECT t2.f1, t1.f2, t2.f3, t2.f4 FROM (t1 JOIN t2);
+REPLACE INTO v1 (f1, f2, f3, f4)
+SELECT f1, f2, f3, f4 FROM t1;
+ERROR HY000: Can not modify more than one base table through a join view 'test.v1'
+drop view v1;
+drop table t1, t2;
+set big_tables=@save_big_tables;
# -----------------------------------------------------------------
# -- End of 5.5 tests.
# -----------------------------------------------------------------
diff --git a/mysql-test/t/view.test b/mysql-test/t/view.test
index 835f12957d4..0c4680eb5d2 100644
--- a/mysql-test/t/view.test
+++ b/mysql-test/t/view.test
@@ -5674,6 +5674,26 @@ t46, t47, t48, t49, t50, t51, t52, t53, t54,
t55, t56, t57, t58, t59,t60;
drop view v60;
+--echo #
+--echo # MDEV-15572: view.test, server crash with --big-tables=1
+--echo #
+
+set @save_big_tables=@@big_tables;
+set big_tables=ON;
+CREATE TABLE t1 ( f1 int , f2 int , f3 int , f4 int);
+CREATE TABLE t2 ( f1 int , f2 int , f3 int , f4 int);
+
+CREATE VIEW v1 AS
+ SELECT t2.f1, t1.f2, t2.f3, t2.f4 FROM (t1 JOIN t2);
+
+--error ER_VIEW_MULTIUPDATE
+REPLACE INTO v1 (f1, f2, f3, f4)
+ SELECT f1, f2, f3, f4 FROM t1;
+
+drop view v1;
+drop table t1, t2;
+set big_tables=@save_big_tables;
+
--echo # -----------------------------------------------------------------
--echo # -- End of 5.5 tests.
--echo # -----------------------------------------------------------------