diff options
author | Sergey Petrunya <psergey@askmonty.org> | 2012-08-02 17:06:05 +0400 |
---|---|---|
committer | Sergey Petrunya <psergey@askmonty.org> | 2012-08-02 17:06:05 +0400 |
commit | 59e64b6c9bdcfd576db5118e5e33df2c813233dd (patch) | |
tree | 6c1a82bdbd33d81ea0162176a45f71402122c6fa /sql/sql_parse.cc | |
parent | aaa188dad935865e52663c34afac1af983362526 (diff) | |
download | mariadb-git-59e64b6c9bdcfd576db5118e5e33df2c813233dd.tar.gz |
MDEV-416: Server crashes in SQL_SELECT::cleanup on EXPLAIN with SUM ( DISTINCT )
- When JOIN::cleanup(full==TRUE) is called, the select can be in two states:
= Right after the create_sort_index() call, when join->join_tab[0] is used to
read data produced by filesort().
= After create_sort_index(), and after JOIN::reinit() calls, when
join->join_tab[0] has been reset to read the original data.
- We didn't handle the second case correctly, which resulted in an attempt to free
the same SQL_SELECT two times. The fix is to make sure we don't double-free.
Diffstat (limited to 'sql/sql_parse.cc')
0 files changed, 0 insertions, 0 deletions