mirror of
https://github.com/MariaDB/server.git
synced 2026-05-16 03:47:17 +02:00
MDEV-4071: Valgrind warnings 'Invalid read' in subselect_engine::calc_const_tables with ...
- Call tmp_having->update_used_tables() *before* we have call JOIN::cleanup(). Making the call after join::cleanup() is not allowed, because subquery predicate items walk parent join's JOIN_TAB structures. Which can be invalidated by JOIN::cleanup().
This commit is contained in:
parent
71422d7b14
commit
ddd341b71a
4 changed files with 51 additions and 14 deletions
|
|
@ -2567,5 +2567,22 @@ drop table t1, t2;
|
|||
connection default;
|
||||
disconnect con1;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-4071: Valgrind warnings 'Invalid read' in subselect_engine::calc_const_tables with ...
|
||||
--echo #
|
||||
CREATE TABLE t1 (b INT, c VARCHAR(1)) ENGINE=MyISAM;
|
||||
INSERT INTO t1 VALUES (7,'v'),(0,'s');
|
||||
|
||||
CREATE TABLE t2 (a INT) ENGINE=MyISAM;
|
||||
INSERT INTO t2 VALUES (0),(8);
|
||||
|
||||
SELECT c, SUM( DISTINCT b ) AS sm FROM t1
|
||||
WHERE ( 5, 108 ) IN ( SELECT MIN(a), MAX(a) FROM t2 )
|
||||
GROUP BY b
|
||||
HAVING c <> ( SELECT MAX( c ) FROM t1 )
|
||||
ORDER BY sm;
|
||||
|
||||
DROP TABLE t1,t2;
|
||||
|
||||
# The following command must be the last one the file
|
||||
set optimizer_switch=@subselect_sj_tmp;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue