1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

Bug#14542543 FIX BUG #12694872 IN 5.5

Bug#14530242 CRASH / MEMORY CORRUPTION IN FILESORT_BUFFER::GET_RECORD_BUFFER WITH MYISAM

This is a backport of
Bug#12694872 - VALGRIND: 18,816 BYTES IN 196 BLOCKS ARE DEFINITELY LOST
Bug#13340270: assertion table->sort.record_pointers == __null
Bug#14536113 CRASH IN CLOSEFRM (TABLE.CC) OR UNPACK (FIELD.H) ON SUBQUERY WITH MYISAM TABLES

Also:
removed and re-added test files with file-ids from trunk.
This commit is contained in:
Tor Didriksen
2012-09-18 17:32:02 +02:00
parent 089ac5d7a1
commit 88f2746a7a
5 changed files with 22 additions and 9 deletions

View File

@ -7173,14 +7173,14 @@ void JOIN::cleanup(bool full)
{
JOIN_TAB *tab,*end;
/*
Only a sorted table may be cached. This sorted table is always the
first non const table in join->all_tables
Free resources allocated by filesort() and Unique::get()
*/
if (tables > const_tables) // Test for not-const tables
{
free_io_cache(all_tables[const_tables]);
filesort_free_buffers(all_tables[const_tables],full);
}
for (uint ix= const_tables; ix < tables; ++ix)
{
free_io_cache(all_tables[ix]);
filesort_free_buffers(all_tables[ix], full);
}
if (full)
{