mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 04:22:27 +01:00
Merge fix for BUG#778406.
This commit is contained in:
commit
a0973ba22e
4 changed files with 66 additions and 1 deletions
|
@ -1305,4 +1305,25 @@ WHERE alias2.f11 IN ( SELECT f11 FROM t2 )
|
|||
GROUP BY field2 ;
|
||||
field2
|
||||
drop table t1, t2, t3;
|
||||
#
|
||||
# BUG#778406 Crash in hp_movelink with Aria engine and subqueries
|
||||
#
|
||||
CREATE TABLE t4 (f10 varchar(32) , KEY (f10)) ENGINE=Aria;
|
||||
INSERT INTO t4 VALUES ('x'),('m'),('c');
|
||||
CREATE TABLE t1 (f11 int) ENGINE=Aria;
|
||||
INSERT INTO t1 VALUES (0),(0),(0);
|
||||
CREATE TABLE t2 ( f10 int) ENGINE=Aria;
|
||||
INSERT INTO t2 VALUES (0),(0),(0);
|
||||
CREATE TABLE t3 ( f10 int, f11 int) ENGINE=Aria;
|
||||
SELECT *
|
||||
FROM t4
|
||||
WHERE f10 IN
|
||||
( SELECT t1.f11
|
||||
FROM t1
|
||||
LEFT JOIN t2 JOIN t3 ON t3.f10 = t2.f10 ON t3.f11 != 0 );
|
||||
f10
|
||||
x
|
||||
m
|
||||
c
|
||||
drop table t1,t2,t3,t4;
|
||||
set @@optimizer_switch=@save_optimizer_switch;
|
||||
|
|
|
@ -1313,6 +1313,27 @@ WHERE alias2.f11 IN ( SELECT f11 FROM t2 )
|
|||
GROUP BY field2 ;
|
||||
field2
|
||||
drop table t1, t2, t3;
|
||||
#
|
||||
# BUG#778406 Crash in hp_movelink with Aria engine and subqueries
|
||||
#
|
||||
CREATE TABLE t4 (f10 varchar(32) , KEY (f10)) ENGINE=Aria;
|
||||
INSERT INTO t4 VALUES ('x'),('m'),('c');
|
||||
CREATE TABLE t1 (f11 int) ENGINE=Aria;
|
||||
INSERT INTO t1 VALUES (0),(0),(0);
|
||||
CREATE TABLE t2 ( f10 int) ENGINE=Aria;
|
||||
INSERT INTO t2 VALUES (0),(0),(0);
|
||||
CREATE TABLE t3 ( f10 int, f11 int) ENGINE=Aria;
|
||||
SELECT *
|
||||
FROM t4
|
||||
WHERE f10 IN
|
||||
( SELECT t1.f11
|
||||
FROM t1
|
||||
LEFT JOIN t2 JOIN t3 ON t3.f10 = t2.f10 ON t3.f11 != 0 );
|
||||
f10
|
||||
x
|
||||
m
|
||||
c
|
||||
drop table t1,t2,t3,t4;
|
||||
set @@optimizer_switch=@save_optimizer_switch;
|
||||
#
|
||||
# BUG#49129: Wrong result with IN-subquery with join_cache_level=6 and firstmatch=off
|
||||
|
|
|
@ -1189,5 +1189,28 @@ GROUP BY field2 ;
|
|||
|
||||
drop table t1, t2, t3;
|
||||
|
||||
--echo #
|
||||
--echo # BUG#778406 Crash in hp_movelink with Aria engine and subqueries
|
||||
--echo #
|
||||
CREATE TABLE t4 (f10 varchar(32) , KEY (f10)) ENGINE=Aria;
|
||||
INSERT INTO t4 VALUES ('x'),('m'),('c');
|
||||
|
||||
CREATE TABLE t1 (f11 int) ENGINE=Aria;
|
||||
INSERT INTO t1 VALUES (0),(0),(0);
|
||||
|
||||
CREATE TABLE t2 ( f10 int) ENGINE=Aria;
|
||||
INSERT INTO t2 VALUES (0),(0),(0);
|
||||
|
||||
CREATE TABLE t3 ( f10 int, f11 int) ENGINE=Aria;
|
||||
|
||||
SELECT *
|
||||
FROM t4
|
||||
WHERE f10 IN
|
||||
( SELECT t1.f11
|
||||
FROM t1
|
||||
LEFT JOIN t2 JOIN t3 ON t3.f10 = t2.f10 ON t3.f11 != 0 );
|
||||
|
||||
drop table t1,t2,t3,t4;
|
||||
|
||||
# The following command must be the last one the file
|
||||
set @@optimizer_switch=@save_optimizer_switch;
|
||||
|
|
|
@ -3527,7 +3527,6 @@ int do_sj_dups_weedout(THD *thd, SJ_TMP_TABLE *sjtbl)
|
|||
}
|
||||
|
||||
ptr= sjtbl->tmp_table->record[0] + 1;
|
||||
nulls_ptr= ptr;
|
||||
|
||||
/* Put the the rowids tuple into table->record[0]: */
|
||||
|
||||
|
@ -3543,6 +3542,7 @@ int do_sj_dups_weedout(THD *thd, SJ_TMP_TABLE *sjtbl)
|
|||
ptr += 2;
|
||||
}
|
||||
|
||||
nulls_ptr= ptr;
|
||||
// 2. Zero the null bytes
|
||||
if (sjtbl->null_bytes)
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue