Commit 080c8ab3 authored by unknown's avatar unknown
Browse files

Fixed errors descovered by valgrind 2.4

Added suppression file for some valgrind warnings that are not real errors


mysql-test/mysql-test-run.sh:
  Added suppression of some valgrind warnings that are not real errors
mysql-test/r/heap.result:
  Cleanup old tests and added new tests
mysql-test/t/heap.test:
  Cleanup old tests and added new tests
mysys/default.c:
  Removed duplicate fn_format()
scripts/make_binary_distribution.sh:
  Added valgrind suppress file
sql/ha_federated.cc:
  Ensure that 'socket' is initialized properly
sql/ha_heap.cc:
  Ensure that with_auto_increment is initialized properly
sql/mysqld.cc:
  Ensure that create_time is initialized for cached threads
sql/sql_parse.cc:
  Indentation fix
strings/decimal.c:
  Fixed wrong tests
parent f3aa7770
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -418,7 +418,7 @@ while test $# -gt 0; do
      fi
      # >=2.1.2 requires the --tool option, some versions write to stdout, some to stderr
      valgrind --help 2>&1 | grep "\-\-tool" > /dev/null && VALGRIND="$VALGRIND --tool=memcheck"
      VALGRIND="$VALGRIND --alignment=8 --leak-check=yes --num-callers=16"
      VALGRIND="$VALGRIND --alignment=8 --leak-check=yes --num-callers=16 --suppressions=$CWD/valgrind.supp"
      EXTRA_MASTER_MYSQLD_OPT="$EXTRA_MASTER_MYSQLD_OPT --skip-safemalloc --skip-bdb"
      EXTRA_SLAVE_MYSQLD_OPT="$EXTRA_SLAVE_MYSQLD_OPT --skip-safemalloc --skip-bdb"
      SLEEP_TIME_AFTER_RESTART=10
+5 −16
Original line number Diff line number Diff line
@@ -667,14 +667,7 @@ drop table t1;
set storage_engine=MyISAM;
create table t1 (a bigint unsigned auto_increment primary key, b int,
key (b, a)) engine=heap;
insert t1 (b) values (1);
insert t1 (b) values (1);
insert t1 (b) values (1);
insert t1 (b) values (1);
insert t1 (b) values (1);
insert t1 (b) values (1);
insert t1 (b) values (1);
insert t1 (b) values (1);
insert t1 (b) values (1),(1),(1),(1),(1),(1),(1),(1);
select * from t1;
a	b
1	1
@@ -688,14 +681,7 @@ a b
drop table t1;
create table t1 (a int not null, b int not null auto_increment,
primary key(a, b), key(b)) engine=heap;
insert t1 (a) values (1);
insert t1 (a) values (1);
insert t1 (a) values (1);
insert t1 (a) values (1);
insert t1 (a) values (1);
insert t1 (a) values (1);
insert t1 (a) values (1);
insert t1 (a) values (1);
insert t1 (a) values (1),(1),(1),(1),(1),(1),(1),(1);
select * from t1;
a	b
1	1
@@ -707,3 +693,6 @@ a b
1	7
1	8
drop table t1;
create table t1 (a int not null, b int not null auto_increment,
primary key(a, b)) engine=heap;
ERROR 42000: Incorrect table definition; there can be only one auto column and it must be defined as a key
+9 −18
Original line number Diff line number Diff line
@@ -413,25 +413,16 @@ eval set storage_engine=$default;

create table t1 (a bigint unsigned auto_increment primary key, b int,
  key (b, a)) engine=heap;
insert t1 (b) values (1);
insert t1 (b) values (1);
insert t1 (b) values (1);
insert t1 (b) values (1);
insert t1 (b) values (1);
insert t1 (b) values (1);
insert t1 (b) values (1);
insert t1 (b) values (1);
insert t1 (b) values (1),(1),(1),(1),(1),(1),(1),(1);
select * from t1;
drop table t1;

create table t1 (a int not null, b int not null auto_increment,
  primary key(a, b), key(b)) engine=heap;
insert t1 (a) values (1);
insert t1 (a) values (1);
insert t1 (a) values (1);
insert t1 (a) values (1);
insert t1 (a) values (1);
insert t1 (a) values (1);
insert t1 (a) values (1);
insert t1 (a) values (1);
insert t1 (a) values (1),(1),(1),(1),(1),(1),(1),(1);
select * from t1;
drop table t1;

--error 1075
create table t1 (a int not null, b int not null auto_increment,
  primary key(a, b)) engine=heap;
+94 −0
Original line number Diff line number Diff line
#
# Suppress some common (not fatal) errors in system libraries found by valgrind
#

#
# Pthread doesn't free all thread specific memory before program exists
#
{
   pthread allocate_tls memory loss
   Memcheck:Leak
   fun:calloc
   fun:_dl_allocate_tls
   fun:allocate_stack
   fun:pthread_create@@GLIBC_2.1
}

{
   pthread allocate_dtv memory loss
   Memcheck:Leak
   fun:calloc
   fun:allocate_dtv
   fun:_dl_allocate_tls_storage
   fun:__GI__dl_allocate_tls
   fun:pthread_create
}

{
   pthread memalign memory loss
   Memcheck:Leak
   fun:memalign
   fun:_dl_allocate_tls_storage
   fun:__GI__dl_allocate_tls
   fun:pthread_create
}

{
   pthread errno
   Memcheck:Leak
   fun:calloc
   fun:_dlerror_run
   fun:dlsym
   fun:__errno_location
}


#
# Warnings in libz becasue it works with aligned memory(?)
#

{
   libz tr_flush_block
   Memcheck:Cond
   fun:_tr_flush_block
   fun:deflate_slow
   fun:deflate
   fun:do_flush
   fun:gzclose
}

{
   libz tr_flush_block2
   Memcheck:Cond
   fun:_tr_flush_block
   fun:deflate_slow
   fun:deflate
   fun:compress2
}

{
   libz longest_match
   Memcheck:Cond
   fun:longest_match
   fun:deflate_slow
   fun:deflate
   fun:do_flush
}

{
   libz longest_match2
   Memcheck:Cond
   fun:longest_match
   fun:deflate_slow
   fun:deflate
   fun:compress2
}

{
   libz deflate
   Memcheck:Cond
   obj:/usr/lib/libz.so.*
   obj:/usr/lib/libz.so.*
   fun:deflate
   fun:compress2
}
+2 −2
Original line number Diff line number Diff line
@@ -477,13 +477,13 @@ static int search_default_file_with_ext(Process_option_func opt_handler,
    if ((stat_info.st_mode & S_IWOTH) &&
	(stat_info.st_mode & S_IFMT) == S_IFREG)
    {
      fprintf(stderr, "warning: World-writable config file %s is ignored\n",
      fprintf(stderr, "Warning: World-writable config file '%s' is ignored\n",
              name);
      return 0;
    }
  }
#endif
  if (!(fp= my_fopen(fn_format(name, name, "", "", 4), O_RDONLY, MYF(0))))
  if (!(fp= my_fopen(name, O_RDONLY, MYF(0))))
    return 0;					/* Ignore wrong files */

  while (fgets(buff, sizeof(buff) - 1, fp))
Loading