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

Corrected fix for not freed memory when using corrupted tables

This commit is contained in:
monty@tik.mysql.fi
2002-03-05 17:38:16 +02:00
parent cde0896521
commit c1ab560c3d
4 changed files with 11 additions and 2 deletions

View File

@ -46892,6 +46892,12 @@ not yet 100% confident in this code.
@itemize @bullet @itemize @bullet
@item @item
Memory leak (16 bytes per every @strong{corrupted} table) closed. Memory leak (16 bytes per every @strong{corrupted} table) closed.
@item
Fixed binary builds to use @code{--enable-local-infile}.
@item
Update source to work with new @code{bison} version.
@item
Updated shell scripts to new agree with new POSIX standard.
@end itemize @end itemize
@node News-3.23.49, News-3.23.48, News-3.23.50, News-3.23.x @node News-3.23.49, News-3.23.48, News-3.23.50, News-3.23.x
@ -46909,6 +46915,8 @@ Added options to make @code{LOAD DATA LOCAL INFILE} more secure.
MySQL binary release 3.23.48 for Linux contained a new glibc library, which MySQL binary release 3.23.48 for Linux contained a new glibc library, which
has serious problems under high load and RedHat 7.2. The 3.23.49 binary has serious problems under high load and RedHat 7.2. The 3.23.49 binary
release doesn't have this problem. release doesn't have this problem.
@item
Fixed shutdown problem on NT.
@end itemize @end itemize
@node News-3.23.48, News-3.23.47, News-3.23.49, News-3.23.x @node News-3.23.48, News-3.23.47, News-3.23.49, News-3.23.x

View File

@ -4,7 +4,7 @@ dnl Process this file with autoconf to produce a configure script.
AC_INIT(sql/mysqld.cc) AC_INIT(sql/mysqld.cc)
AC_CANONICAL_SYSTEM AC_CANONICAL_SYSTEM
# The Docs Makefile.am parses this line! # The Docs Makefile.am parses this line!
AM_INIT_AUTOMAKE(mysql, 3.23.49a) AM_INIT_AUTOMAKE(mysql, 3.23.50)
AM_CONFIG_HEADER(config.h) AM_CONFIG_HEADER(config.h)
PROTOCOL_VERSION=10 PROTOCOL_VERSION=10

View File

@ -277,7 +277,6 @@ void intern_close_table(TABLE *table)
free_io_cache(table); free_io_cache(table);
if (table->file) if (table->file)
VOID(closefrm(table)); // close file VOID(closefrm(table)); // close file
hash_free(&table->name_hash);
} }

View File

@ -573,6 +573,7 @@ int openfrm(const char *name, const char *alias, uint db_stat, uint prgflag,
delete outparam->file; delete outparam->file;
outparam->file=0; // For easyer errorchecking outparam->file=0; // For easyer errorchecking
outparam->db_stat=0; outparam->db_stat=0;
hash_free(&outparam->name_hash);
free_root(&outparam->mem_root,MYF(0)); free_root(&outparam->mem_root,MYF(0));
my_free(outparam->table_name,MYF(MY_ALLOW_ZERO_PTR)); my_free(outparam->table_name,MYF(MY_ALLOW_ZERO_PTR));
DBUG_RETURN (error); DBUG_RETURN (error);
@ -600,6 +601,7 @@ int closefrm(register TABLE *table)
} }
delete table->file; delete table->file;
table->file=0; /* For easyer errorchecking */ table->file=0; /* For easyer errorchecking */
hash_free(&outparam->name_hash);
free_root(&table->mem_root,MYF(0)); free_root(&table->mem_root,MYF(0));
DBUG_RETURN(error); DBUG_RETURN(error);
} }