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:
@ -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)
|
||||
{
|
||||
|
Reference in New Issue
Block a user