[Commits] d0d073b: Corrected and added back the test case for MDEV-15151.
revision-id: d0d073b1aaa30997307bc7aa686d3715f8c22da0 (mariadb-10.2.16-31-gd0d073b) parent(s): 9827c5e1031ca5ebe1c6c7d4f5eac3cce5749d8e author: Igor Babaev committer: Igor Babaev timestamp: 2018-07-20 19:32:28 -0700 message: Corrected and added back the test case for MDEV-15151. --- mysql-test/r/cte_recursive_not_embedded.result | 23 ++++++++++++++ mysql-test/t/cte_recursive_not_embedded.test | 42 ++++++++++++++++++++++++++ 2 files changed, 65 insertions(+) diff --git a/mysql-test/r/cte_recursive_not_embedded.result b/mysql-test/r/cte_recursive_not_embedded.result new file mode 100644 index 0000000..202864b --- /dev/null +++ b/mysql-test/r/cte_recursive_not_embedded.result @@ -0,0 +1,23 @@ +# +# MDEV-15151: function with recursive CTE using no base tables +# (duplicate of MDEV-16661) +# +connection default; +CREATE TABLE t1 (id int KEY); +INSERT INTO t1 VALUES (0), (1),(2); +CREATE OR REPLACE FUNCTION func() RETURNS int +RETURN +( +WITH recursive cte AS +(SELECT 1 a UNION SELECT cte.* FROM cte natural join t1) +SELECT * FROM cte limit 1 +); +connect con1,localhost,root,,test; +SELECT func(); +connect con2,localhost,root,,test; +disconnect con2; +connection con1; +disconnect con1; +connection default; +DROP FUNCTION func; +DROP TABLE t1; diff --git a/mysql-test/t/cte_recursive_not_embedded.test b/mysql-test/t/cte_recursive_not_embedded.test new file mode 100644 index 0000000..4dadf40 --- /dev/null +++ b/mysql-test/t/cte_recursive_not_embedded.test @@ -0,0 +1,42 @@ +--source include/not_embedded.inc + +--echo # +--echo # MDEV-15151: function with recursive CTE using no base tables +--echo # (duplicate of MDEV-16661) +--echo # + +--connection default + +CREATE TABLE t1 (id int KEY); +INSERT INTO t1 VALUES (0), (1),(2); + +CREATE OR REPLACE FUNCTION func() RETURNS int +RETURN +( + WITH recursive cte AS + (SELECT 1 a UNION SELECT cte.* FROM cte natural join t1) + SELECT * FROM cte limit 1 +); + +--connect (con1,localhost,root,,test) + +--let $conid= `SELECT CONNECTION_ID()` +--send SELECT func() + +--connect (con2,localhost,root,,test) +--disable_query_log +--eval KILL QUERY $conid +--enable_query_log +--disconnect con2 + +--disable_result_log +--connection con1 +--error 0,ER_QUERY_INTERRUPTED +--reap +--disconnect con1 +--enable_result_log + +--connection default + +DROP FUNCTION func; +DROP TABLE t1;
participants (1)
-
IgorBabaev