Hi!

11.06.2013 11:11, [email protected] пишет:
At file:///home/tsk/mprog/src/10.0-md83/

------------------------------------------------------------
revno: 3551
revision-id: [email protected]
parent: [email protected]
fixes bug: https://mariadb.atlassian.net/browse/MDEV-4612
committer: [email protected]
branch nick: 10.0-md83
timestamp: Tue 2013-06-11 11:11:35 +0300
message:
   MDEV-4612 SQ pushdown: Server crashes in make_join_statistics with 
materialization+semijoin, IN subqueries, constant table, impossible condition
Analysis:
   The subquery materialization execution method 
subselect_hash_sj_engine::exec()
   didn't restore thd->lex->current_select through all return paths. This was
   not a problem when the method is called during execution. When a subquery
   was executed during the optimization phase of the outer query, current_select
   remained to point to the wrong subquery. This resulted in 
update_ref_and_keys()
   getting the wrong number of conditions via 
thd->lex->current_select->cond_count,
   thus allocating a smaller buffer for sargable conditions. This later resulted
   in memory overwrite.
Solution:
   Make sure that subselect_hash_sj_engine::exec() always restores 
current_select.

The patch looks OK to push.

[skip]

_______________________________________________
Mailing list: https://launchpad.net/~maria-developers
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~maria-developers
More help   : https://help.launchpad.net/ListHelp

Reply via email to