mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
Merge branch '10.5' into 10.6
This commit is contained in:
commit
1c39479598
3 changed files with 40 additions and 1 deletions
|
@ -807,5 +807,21 @@ a b a b a b grp_id count(*)
|
|||
5 5 5 2 5 3 5 100
|
||||
drop table t1,t2,t3;
|
||||
drop table t10, t11;
|
||||
#
|
||||
# MDEV-31194: Server crash or assertion failure with join_cache_level=4
|
||||
# (a followup to the above bug, MDEV-26301)
|
||||
#
|
||||
CREATE TABLE t1 (a INT);
|
||||
INSERT INTO t1 VALUES (3),(4);
|
||||
CREATE TABLE t2 (id INT PRIMARY KEY) ENGINE=Aria;
|
||||
INSERT INTO t2 VALUES (1),(2);
|
||||
set @tmp1= @@optimizer_switch, @tmp2= @@join_cache_level;
|
||||
set
|
||||
optimizer_switch= 'derived_with_keys=off',
|
||||
join_cache_level= 4;
|
||||
SELECT t1.* FROM t1 JOIN (SELECT id, COUNT(*) FROM t2 GROUP BY id) sq ON sq.id= t1.a;
|
||||
a
|
||||
set optimizer_switch= @tmp1, join_cache_level= @tmp2;
|
||||
DROP TABLE t1, t2;
|
||||
# End of 10.4 tests
|
||||
SET GLOBAL innodb_stats_persistent=@save_innodb_stats_persistent;
|
||||
|
|
|
@ -443,6 +443,29 @@ eval $q;
|
|||
drop table t1,t2,t3;
|
||||
drop table t10, t11;
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-31194: Server crash or assertion failure with join_cache_level=4
|
||||
--echo # (a followup to the above bug, MDEV-26301)
|
||||
--echo #
|
||||
CREATE TABLE t1 (a INT);
|
||||
INSERT INTO t1 VALUES (3),(4);
|
||||
|
||||
CREATE TABLE t2 (id INT PRIMARY KEY) ENGINE=Aria;
|
||||
INSERT INTO t2 VALUES (1),(2);
|
||||
|
||||
set @tmp1= @@optimizer_switch, @tmp2= @@join_cache_level;
|
||||
set
|
||||
optimizer_switch= 'derived_with_keys=off',
|
||||
join_cache_level= 4;
|
||||
|
||||
SELECT t1.* FROM t1 JOIN (SELECT id, COUNT(*) FROM t2 GROUP BY id) sq ON sq.id= t1.a;
|
||||
|
||||
set optimizer_switch= @tmp1, join_cache_level= @tmp2;
|
||||
|
||||
# Cleanup
|
||||
DROP TABLE t1, t2;
|
||||
|
||||
--echo # End of 10.4 tests
|
||||
|
||||
SET GLOBAL innodb_stats_persistent=@save_innodb_stats_persistent;
|
||||
|
|
|
@ -13500,7 +13500,7 @@ uint check_join_cache_usage(JOIN_TAB *tab,
|
|||
join->return_tab= 0;
|
||||
|
||||
if (tab->no_forced_join_cache)
|
||||
return 0;
|
||||
goto no_join_cache;
|
||||
|
||||
/*
|
||||
Don't use join cache if @@join_cache_level==0 or this table is the first
|
||||
|
|
Loading…
Reference in a new issue