From: Date: January 10 2007 11:42am Subject: bk commit into 5.1 tree (acurtis:1.2379) BUG#25396 List-Archive: http://lists.mysql.com/commits/17840 X-Bug: 25396 Message-Id: <200701101042.l0AAgoPq014008@mail.mysql.com> Below is the list of changes that have just been committed into a local 5.1 repository of antony. When antony does a push these changes will be propagated to the main repository and, within 24 hours after the push, to the public repository. For information on how to access the public repository see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html ChangeSet@stripped, 2007-01-10 02:42:37-08:00, acurtis@stripped +2 -0 BUG#25396 "Valgrind leak in closecon_handlerton" Properly NULL pointers when freeing handlerton BUILD/compile-amd64-valgrind-max@stripped, 2007-01-10 02:42:32-08:00, acurtis@stripped +24 -0 New BitKeeper file ``BUILD/compile-amd64-valgrind-max'' BUILD/compile-amd64-valgrind-max@stripped, 2007-01-10 02:42:32-08:00, acurtis@stripped +0 -0 sql/handler.cc@stripped, 2007-01-10 02:42:32-08:00, acurtis@stripped +2 -1 bug25396 make sure to zero the plugin data ptr when freeing thw handlerton check for NULL handlerton in closecon # This is a BitKeeper patch. What follows are the unified diffs for the # set of deltas contained in the patch. The rest of the patch, the part # that BitKeeper cares about, is below these diffs. # User: acurtis # Host: ltamd64.xiphis.org # Root: /home/antony/work2/p1-bug25396.3 --- 1.290/sql/handler.cc 2007-01-10 02:42:49 -08:00 +++ 1.291/sql/handler.cc 2007-01-10 02:42:49 -08:00 @@ -395,6 +395,7 @@ } } + plugin->data= 0; my_free((gptr)hton, MYF(0)); DBUG_RETURN(0); @@ -550,7 +551,7 @@ there's no need to rollback here as all transactions must be rolled back already */ - if (hton->state == SHOW_OPTION_YES && hton->close_connection && + if (hton && hton->state == SHOW_OPTION_YES && hton->close_connection && thd->ha_data[hton->slot]) hton->close_connection(hton, thd); return FALSE; --- New file --- +++ BUILD/compile-amd64-valgrind-max 07/01/10 02:42:32 #! /bin/sh path=`dirname $0` . "$path/SETUP.sh" extra_flags="$amd64_cflags $debug_cflags $valgrind_flags" extra_configs="$amd64_configs $debug_configs $max_configs" . "$path/FINISH.sh" if test -z "$just_print" then set +v +x echo "\ ****************************************************************************** Note that by default BUILD/compile-pentium-valgrind-max calls 'configure' with --enable-assembler. When Valgrind detects an error involving an assembly function (for example an uninitialized value used as an argument of an assembly function), Valgrind will not print the stacktrace and 'valgrind --gdb-attach=yes' will not work either. If you need a stacktrace in those cases, you have to run BUILD/compile-pentium-valgrind-max with the --disable-assembler argument. ******************************************************************************" fi