List:Commits« Previous MessageNext Message »
From:kpettersson Date:May 24 2007 11:11am
Subject:bk commit into 4.1 tree (thek:1.2656) BUG#28644
View as plain text  
Below is the list of changes that have just been committed into a local
4.1 repository of thek. When thek 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-05-24 13:11:45+02:00, thek@adventure.(none) +2 -0
  Bug#28644 Memory status report confused with memory leak
  
  This patch removes a false memory leak error report from the test suite.
  There is a test case that puposely provokes a SAFEMALLOC leak report,
  even though there is no actual leak.

  mysql-test/lib/mtr_report.pl@stripped, 2007-05-24 13:11:44+02:00, thek@adventure.(none) +14 -0
    There is a test case that purposely provokes a SAFEMALLOC leak report,
    even though there is no actual leak. We need to detect this, and ignore the
    warning in that case.

  sql/sql_test.cc@stripped, 2007-05-24 13:11:45+02:00, thek@adventure.(none) +2 -0
    Added tags to surround memory dump status report to help the test
    suite to determine that this isn't a memory leak

# 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:	thek
# Host:	adventure.(none)
# Root:	/home/thek/Development/cpp/bug28644/my41-bug28644

--- 1.35/sql/sql_test.cc	2005-09-14 13:18:11 +02:00
+++ 1.36/sql/sql_test.cc	2007-05-24 13:11:45 +02:00
@@ -406,7 +406,9 @@ Next alarm time: %lu\n",
   if (thd)
     thd->proc_info="malloc";
   my_checkmalloc();
+  fprintf(stdout,"\nBegin safemalloc memory dump:\n"); // tag needed for test suite
   TERMINATE(stdout);				// Write malloc information
+  fprintf(stdout,"\nEnd safemalloc memory dump.\n");  
 
 #ifdef HAVE_MALLINFO
   struct mallinfo info= mallinfo();

--- 1.25/mysql-test/lib/mtr_report.pl	2006-11-28 12:39:58 +01:00
+++ 1.26/mysql-test/lib/mtr_report.pl	2007-05-24 13:11:44 +02:00
@@ -261,8 +261,19 @@ sub mtr_report_stats ($) {
             mtr_warning("can't read $errlog");
             next;
           }
+          my $leak_reports_expected= undef;
           while ( <ERR> )
           {
+            # There is a test case that purposely provokes a
+            # SAFEMALLOC leak report, even though there is no actual
+            # leak. We need to detect this, and ignore the warning in
+            # that case.
+            if (/Begin safemalloc memory dump:/) {
+              $leak_reports_expected= 1;
+            } elsif (/End safemalloc memory dump./) {
+              $leak_reports_expected= undef;
+            }
+
             # Skip some non fatal warnings from the log files
             if ( /Warning:\s+Table:.* on (delete|rename)/ or
                  /Warning:\s+Setting lower_case_table_names=2/ or
@@ -273,6 +284,9 @@ sub mtr_report_stats ($) {
             }
             if ( /$pattern/ )
             {
+              if ($leak_reports_expected) {
+                next;
+              }
               $found_problems= 1;
               print WARN $_;
             }
Thread
bk commit into 4.1 tree (thek:1.2656) BUG#28644kpettersson24 May