diff options
author | Sergey Petrunya <psergey@askmonty.org> | 2013-05-04 00:56:50 +0400 |
---|---|---|
committer | Sergey Petrunya <psergey@askmonty.org> | 2013-05-04 00:56:50 +0400 |
commit | b3720ff7553ced6208737482d3410183cab4a545 (patch) | |
tree | 48b0bcc2fa08ee393d58febeede900cfa4d768cd /mysql-test/t/join_nested.test | |
parent | 6ed00c4d8a90129e7098bcb5fad5b01332e9882c (diff) | |
download | mariadb-git-b3720ff7553ced6208737482d3410183cab4a545.tar.gz |
MDEV-621: LP:693329 - Assertion `!is_interleave_error' failed on low optimizer_search_depth
- When restore_prev_nj_state() is called for the table that is
the last remaining child of a nested join, do not leave that
nested join's bit in join->cur_embedding_map.
Diffstat (limited to 'mysql-test/t/join_nested.test')
-rw-r--r-- | mysql-test/t/join_nested.test | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/mysql-test/t/join_nested.test b/mysql-test/t/join_nested.test index 3168e95f620..7b7d9236835 100644 --- a/mysql-test/t/join_nested.test +++ b/mysql-test/t/join_nested.test @@ -1287,3 +1287,27 @@ SET optimizer_switch=@save_optimizer_switch; --echo End of 5.0 tests +--echo # +--echo # MDEV-621: LP:693329 - Assertion `!is_interleave_error' failed on low optimizer_search_depth +--echo # +set @tmp_mdev621= @@optimizer_search_depth; +SET SESSION optimizer_search_depth = 4; + +CREATE TABLE t1 (f1 int,f2 int,f3 int,f4 int) ; +INSERT IGNORE INTO t1 VALUES (0,0,2,0),(NULL,0,2,0); +CREATE TABLE t2 (f1 int) ; +CREATE TABLE t3 (f3 int,PRIMARY KEY (f3)) ; +CREATE TABLE t4 (f5 int) ; +CREATE TABLE t5 (f2 int) ; + +SELECT alias2.f4 FROM t1 AS alias1 +LEFT JOIN t1 AS alias2 + LEFT JOIN t2 AS alias3 + LEFT JOIN t3 AS alias4 ON alias3.f1 = alias4.f3 + ON alias2.f1 +LEFT JOIN t4 AS alias5 + JOIN t5 ON alias5.f5 +ON alias2.f3 ON alias1.f2; +DROP TABLE t1,t2,t3,t4,t5; +set optimizer_search_depth= @tmp_mdev621; + |