mirror of
https://github.com/MariaDB/server.git
synced 2025-02-01 19:41:47 +01:00
Merge bk-internal.mysql.com:/home/bk/mysql-5.1-new
into shellback.(none):/home/msvensson/mysql/mysql-5.1
This commit is contained in:
commit
0568175984
3 changed files with 270 additions and 94 deletions
|
@ -654,6 +654,8 @@ static void die(const char *fmt, ...)
|
|||
{
|
||||
va_list args;
|
||||
DBUG_ENTER("die");
|
||||
|
||||
/* Print the error message */
|
||||
va_start(args, fmt);
|
||||
if (fmt)
|
||||
{
|
||||
|
@ -668,6 +670,12 @@ static void die(const char *fmt, ...)
|
|||
fflush(stderr);
|
||||
}
|
||||
va_end(args);
|
||||
|
||||
/* Dump the result that has been accumulated so far to reject file */
|
||||
if (result_file && ds_res.length)
|
||||
dump_result_to_reject_file(result_file, ds_res.str, ds_res.length);
|
||||
|
||||
/* Clean up and exit */
|
||||
free_used_memory();
|
||||
my_end(MY_CHECK_ERROR);
|
||||
|
||||
|
|
|
@ -134,6 +134,7 @@ our $glob_win32= 0; # OS and native Win32 executables
|
|||
our $glob_win32_perl= 0; # ActiveState Win32 Perl
|
||||
our $glob_cygwin_perl= 0; # Cygwin Perl
|
||||
our $glob_cygwin_shell= undef;
|
||||
our $glob_use_libtool= 1;
|
||||
our $glob_mysql_test_dir= undef;
|
||||
our $glob_mysql_bench_dir= undef;
|
||||
our $glob_hostname= undef;
|
||||
|
@ -210,7 +211,6 @@ our $opt_cursor_protocol;
|
|||
our $opt_view_protocol;
|
||||
|
||||
our $opt_current_test;
|
||||
our $opt_ddd;
|
||||
our $opt_debug;
|
||||
our $opt_do_test;
|
||||
our @opt_cases; # The test cases names in argv
|
||||
|
@ -224,9 +224,14 @@ our $opt_gcov;
|
|||
our $opt_gcov_err;
|
||||
our $opt_gcov_msg;
|
||||
|
||||
our $glob_debugger= 0;
|
||||
our $opt_gdb;
|
||||
our $opt_client_gdb;
|
||||
our $opt_ddd;
|
||||
our $opt_client_ddd;
|
||||
our $opt_manual_gdb;
|
||||
our $opt_manual_ddd;
|
||||
our $opt_manual_debug;
|
||||
|
||||
our $opt_gprof;
|
||||
our $opt_gprof_dir;
|
||||
|
@ -285,11 +290,12 @@ our $opt_timer;
|
|||
our $opt_user;
|
||||
our $opt_user_test;
|
||||
|
||||
our $opt_valgrind;
|
||||
our $opt_valgrind_mysqld;
|
||||
our $opt_valgrind_mysqltest;
|
||||
our $opt_valgrind_all;
|
||||
our $opt_valgrind= 0;
|
||||
our $opt_valgrind_mysqld= 0;
|
||||
our $opt_valgrind_mysqltest= 0;
|
||||
our $opt_valgrind_all= 0;
|
||||
our $opt_valgrind_options;
|
||||
our $opt_valgrind_path;
|
||||
|
||||
our $opt_stress= "";
|
||||
our $opt_stress_suite= "main";
|
||||
|
@ -301,8 +307,6 @@ our $opt_stress_test_duration= 0;
|
|||
our $opt_stress_init_file= "";
|
||||
our $opt_stress_test_file= "";
|
||||
|
||||
our $opt_verbose;
|
||||
|
||||
our $opt_wait_for_master;
|
||||
our $opt_wait_for_slave;
|
||||
our $opt_wait_timeout= 10;
|
||||
|
@ -464,6 +468,12 @@ sub initial_setup () {
|
|||
$glob_cygwin_perl= ($^O eq "cygwin");
|
||||
$glob_win32= ($glob_win32_perl or $glob_cygwin_perl);
|
||||
|
||||
# Use libtool on all platforms except windows
|
||||
if ( $glob_win32 )
|
||||
{
|
||||
$glob_use_libtool= 0;
|
||||
}
|
||||
|
||||
# We require that we are in the "mysql-test" directory
|
||||
# to run mysql-test-run
|
||||
|
||||
|
@ -607,9 +617,11 @@ sub command_line_setup () {
|
|||
|
||||
# Debugging
|
||||
'gdb' => \$opt_gdb,
|
||||
'manual-gdb' => \$opt_manual_gdb,
|
||||
'client-gdb' => \$opt_client_gdb,
|
||||
'manual-gdb' => \$opt_manual_gdb,
|
||||
'manual-debug' => \$opt_manual_debug,
|
||||
'ddd' => \$opt_ddd,
|
||||
'client-ddd' => \$opt_client_ddd,
|
||||
'strace-client' => \$opt_strace_client,
|
||||
'master-binary=s' => \$exe_master_mysqld,
|
||||
'slave-binary=s' => \$exe_slave_mysqld,
|
||||
|
@ -617,10 +629,12 @@ sub command_line_setup () {
|
|||
# Coverage, profiling etc
|
||||
'gcov' => \$opt_gcov,
|
||||
'gprof' => \$opt_gprof,
|
||||
'valgrind:s' => \$opt_valgrind,
|
||||
'valgrind-mysqltest:s' => \$opt_valgrind_mysqltest,
|
||||
'valgrind-all:s' => \$opt_valgrind_all,
|
||||
'valgrind' => \$opt_valgrind,
|
||||
'valgrind-mysqltest' => \$opt_valgrind_mysqltest,
|
||||
'valgrind-mysqld' => \$opt_valgrind_mysqld,
|
||||
'valgrind-all' => \$opt_valgrind_all,
|
||||
'valgrind-options=s' => \$opt_valgrind_options,
|
||||
'valgrind-path=s' => \$opt_valgrind_path,
|
||||
|
||||
# Stress testing
|
||||
'stress' => \$opt_stress,
|
||||
|
@ -633,6 +647,10 @@ sub command_line_setup () {
|
|||
'stress-test-count=i' => \$opt_stress_test_count,
|
||||
'stress-test-duration=i' => \$opt_stress_test_duration,
|
||||
|
||||
# Directories
|
||||
'tmpdir=s' => \$opt_tmpdir,
|
||||
'vardir=s' => \$opt_vardir,
|
||||
|
||||
# Misc
|
||||
'big-test' => \$opt_big_test,
|
||||
'comment=s' => \$opt_comment,
|
||||
|
@ -651,12 +669,9 @@ sub command_line_setup () {
|
|||
'start-and-exit' => \$opt_start_and_exit,
|
||||
'start-from=s' => \$opt_start_from,
|
||||
'timer' => \$opt_timer,
|
||||
'tmpdir=s' => \$opt_tmpdir,
|
||||
'unified-diff|udiff' => \$opt_udiff,
|
||||
'user-test=s' => \$opt_user_test,
|
||||
'user=s' => \$opt_user,
|
||||
'vardir=s' => \$opt_vardir,
|
||||
'verbose' => \$opt_verbose,
|
||||
'wait-timeout=i' => \$opt_wait_timeout,
|
||||
'testcase-timeout=i' => \$opt_testcase_timeout,
|
||||
'suite-timeout=i' => \$opt_suite_timeout,
|
||||
|
@ -795,48 +810,34 @@ sub command_line_setup () {
|
|||
mtr_error("Coverage test needs the source - please use source dist");
|
||||
}
|
||||
|
||||
if ( $opt_gdb )
|
||||
# Check debug related options
|
||||
if ( $opt_gdb || $opt_client_gdb || $opt_ddd || $opt_client_ddd ||
|
||||
$opt_manual_gdb || $opt_manual_ddd || $opt_manual_debug)
|
||||
{
|
||||
# Indicate that we are using debugger
|
||||
$glob_debugger= 1;
|
||||
# Increase timeouts
|
||||
$opt_wait_timeout= 300;
|
||||
if ( $opt_extern )
|
||||
{
|
||||
mtr_error("Can't use --extern with --gdb");
|
||||
mtr_error("Can't use --extern when using debugger");
|
||||
}
|
||||
}
|
||||
|
||||
if ( $opt_manual_gdb )
|
||||
# Turn on valgrinding of all executables if "valgrind" or "valgrind-all"
|
||||
if ( $opt_valgrind or $opt_valgrind_all )
|
||||
{
|
||||
$opt_gdb= 1;
|
||||
if ( $opt_extern )
|
||||
{
|
||||
mtr_error("Can't use --extern with --manual-gdb");
|
||||
}
|
||||
mtr_report("Turning on valgrind for all executables");
|
||||
$opt_valgrind= 1;
|
||||
$opt_valgrind_mysqld= 1;
|
||||
$opt_valgrind_mysqltest= 1;
|
||||
}
|
||||
|
||||
if ( $opt_ddd )
|
||||
elsif ( $opt_valgrind_mysqld or $opt_valgrind_mysqltest )
|
||||
{
|
||||
if ( $opt_extern )
|
||||
{
|
||||
mtr_error("Can't use --extern with --ddd");
|
||||
}
|
||||
}
|
||||
|
||||
# The ":s" in the argument spec, means we have three different cases
|
||||
#
|
||||
# undefined option not set
|
||||
# "" option set with no argument
|
||||
# "somestring" option is name/path of valgrind executable
|
||||
|
||||
# Take executable path from any of them, if any
|
||||
$opt_valgrind_mysqld= $opt_valgrind;
|
||||
$opt_valgrind= $opt_valgrind_mysqltest if $opt_valgrind_mysqltest;
|
||||
$opt_valgrind= $opt_valgrind_all if $opt_valgrind_all;
|
||||
|
||||
# If valgrind flag not defined, define if other valgrind flags are
|
||||
unless ( defined $opt_valgrind )
|
||||
{
|
||||
$opt_valgrind= ""
|
||||
if defined $opt_valgrind_mysqltest or defined $opt_valgrind_all;
|
||||
# If test's are run for a specific executable, turn on
|
||||
# verbose and show-reachable
|
||||
$opt_valgrind= 1;
|
||||
$opt_valgrind_all= 1;
|
||||
}
|
||||
|
||||
if ( ! $opt_testcase_timeout )
|
||||
|
@ -851,12 +852,11 @@ sub command_line_setup () {
|
|||
$opt_suite_timeout*= 4 if defined $opt_valgrind;
|
||||
}
|
||||
|
||||
if ( defined $opt_valgrind )
|
||||
# Increase times to wait for executables to start if using valgrind
|
||||
if ( $opt_valgrind )
|
||||
{
|
||||
$opt_sleep_time_after_restart= 10;
|
||||
$opt_sleep_time_for_delete= 60;
|
||||
# >=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"
|
||||
}
|
||||
|
||||
if ( ! $opt_user )
|
||||
|
@ -1060,19 +1060,7 @@ sub executable_setup () {
|
|||
}
|
||||
else
|
||||
{
|
||||
if ( $opt_valgrind_mysqltest )
|
||||
{
|
||||
# client/mysqltest might be a libtool .sh script, so look for real exe
|
||||
# to avoid valgrinding bash ;)
|
||||
$exe_mysqltest=
|
||||
mtr_exe_exists("$path_client_bindir/.libs/lt-mysqltest",
|
||||
"$path_client_bindir/.libs/mysqltest",
|
||||
"$path_client_bindir/mysqltest");
|
||||
}
|
||||
else
|
||||
{
|
||||
$exe_mysqltest= mtr_exe_exists("$path_client_bindir/mysqltest");
|
||||
}
|
||||
$exe_mysqltest= mtr_exe_exists("$path_client_bindir/mysqltest");
|
||||
$exe_mysql_client_test=
|
||||
mtr_exe_exists("$glob_basedir/tests/mysql_client_test",
|
||||
"$path_client_bindir/mysql_client_test",
|
||||
|
@ -1750,8 +1738,9 @@ sub run_suite () {
|
|||
|
||||
mtr_print_line();
|
||||
|
||||
if ( ! $opt_gdb and ! $glob_use_running_server and
|
||||
! $opt_ddd and ! $glob_use_embedded_server )
|
||||
if ( ! $glob_debugger and
|
||||
! $glob_use_running_server and
|
||||
! $glob_use_embedded_server )
|
||||
{
|
||||
stop_masters_slaves();
|
||||
}
|
||||
|
@ -2411,8 +2400,9 @@ sub report_failure_and_restart ($) {
|
|||
my $test_mode= join(" ", @::glob_test_mode) || "default";
|
||||
print "Aborting: $tinfo->{'name'} failed in $test_mode mode. ";
|
||||
print "To continue, re-run with '--force'.\n";
|
||||
if ( ! $opt_gdb and ! $glob_use_running_server and
|
||||
! $opt_ddd and ! $glob_use_embedded_server )
|
||||
if ( ! $glob_debugger and
|
||||
! $glob_use_running_server and
|
||||
! $glob_use_embedded_server )
|
||||
{
|
||||
stop_masters_slaves();
|
||||
}
|
||||
|
@ -2540,7 +2530,7 @@ sub mysqld_arguments ($$$$$$) {
|
|||
mtr_add_arg($args, "%s--language=%s", $prefix, $path_language);
|
||||
mtr_add_arg($args, "%s--tmpdir=$opt_tmpdir", $prefix);
|
||||
|
||||
if ( defined $opt_valgrind_mysqld )
|
||||
if ( $opt_valgrind_mysqld )
|
||||
{
|
||||
mtr_add_arg($args, "%s--skip-safemalloc", $prefix);
|
||||
mtr_add_arg($args, "%s--skip-bdb", $prefix);
|
||||
|
@ -2692,7 +2682,8 @@ sub mysqld_arguments ($$$$$$) {
|
|||
mtr_add_arg($args, "%s--log-warnings", $prefix);
|
||||
}
|
||||
|
||||
if ( $opt_gdb or $opt_client_gdb or $opt_manual_gdb or $opt_ddd)
|
||||
# Indicate to "mysqld" it will be debugged in debugger
|
||||
if ( $glob_debugger )
|
||||
{
|
||||
mtr_add_arg($args, "%s--gdb", $prefix);
|
||||
}
|
||||
|
@ -2768,7 +2759,7 @@ sub mysqld_start ($$$$$) {
|
|||
|
||||
my $args; # Arg vector
|
||||
my $exe;
|
||||
my $pid;
|
||||
my $pid= -1;
|
||||
|
||||
if ( $type eq 'master' )
|
||||
{
|
||||
|
@ -2785,7 +2776,7 @@ sub mysqld_start ($$$$$) {
|
|||
|
||||
mtr_init_args(\$args);
|
||||
|
||||
if ( defined $opt_valgrind_mysqld )
|
||||
if ( $opt_valgrind_mysqld )
|
||||
{
|
||||
valgrind_arguments($args, \$exe);
|
||||
}
|
||||
|
@ -2793,29 +2784,53 @@ sub mysqld_start ($$$$$) {
|
|||
mysqld_arguments($args,$type,$idx,$extra_opt,$slave_master_info,
|
||||
$using_ndbcluster);
|
||||
|
||||
if ( $opt_gdb || $opt_manual_gdb)
|
||||
{
|
||||
gdb_arguments(\$args, \$exe, $type);
|
||||
}
|
||||
elsif ( $opt_ddd || $opt_manual_ddd )
|
||||
{
|
||||
ddd_arguments(\$args, \$exe, $type);
|
||||
}
|
||||
elsif ( $opt_manual_debug )
|
||||
{
|
||||
print "\nStart $type in your debugger\n" .
|
||||
"dir: $glob_mysql_test_dir\n" .
|
||||
"exe: $exe\n" .
|
||||
"args: " . join(" ", @$args) . "\n\n" .
|
||||
"Waiting ....\n";
|
||||
|
||||
# Indicate the exe should not be started
|
||||
$exe= undef;
|
||||
}
|
||||
|
||||
if ( $type eq 'master' )
|
||||
{
|
||||
if ( $pid= mtr_spawn($exe, $args, "",
|
||||
$master->[$idx]->{'path_myerr'},
|
||||
$master->[$idx]->{'path_myerr'},
|
||||
"",
|
||||
{ append_log_file => 1 }) )
|
||||
if ( ! defined $exe or
|
||||
$pid= mtr_spawn($exe, $args, "",
|
||||
$master->[$idx]->{'path_myerr'},
|
||||
$master->[$idx]->{'path_myerr'},
|
||||
"",
|
||||
{ append_log_file => 1 }) )
|
||||
{
|
||||
return sleep_until_file_created($master->[$idx]->{'path_mypid'},
|
||||
$master->[$idx]->{'start_timeout'}, $pid);
|
||||
$master->[$idx]->{'start_timeout'},
|
||||
$pid);
|
||||
}
|
||||
}
|
||||
|
||||
if ( $type eq 'slave' )
|
||||
{
|
||||
if ( $pid= mtr_spawn($exe, $args, "",
|
||||
if ( ! defined $exe or
|
||||
$pid= mtr_spawn($exe, $args, "",
|
||||
$slave->[$idx]->{'path_myerr'},
|
||||
$slave->[$idx]->{'path_myerr'},
|
||||
"",
|
||||
{ append_log_file => 1 }) )
|
||||
{
|
||||
return sleep_until_file_created($slave->[$idx]->{'path_mypid'},
|
||||
$master->[$idx]->{'start_timeout'}, $pid);
|
||||
$master->[$idx]->{'start_timeout'},
|
||||
$pid);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -3164,7 +3179,7 @@ sub run_mysqltest ($) {
|
|||
|
||||
mtr_init_args(\$args);
|
||||
|
||||
if ( defined $opt_valgrind_mysqltest )
|
||||
if ( $opt_valgrind_mysqltest )
|
||||
{
|
||||
valgrind_arguments($args, \$exe);
|
||||
}
|
||||
|
@ -3290,7 +3305,10 @@ sub run_mysqltest ($) {
|
|||
# Add arguments that should not go into the MYSQL_TEST env var
|
||||
# ----------------------------------------------------------------------
|
||||
|
||||
mtr_add_arg($args, "-R");
|
||||
mtr_add_arg($args, "--test-file");
|
||||
mtr_add_arg($args, $tinfo->{'path'});
|
||||
|
||||
mtr_add_arg($args, "--result-file");
|
||||
mtr_add_arg($args, $tinfo->{'result_file'});
|
||||
|
||||
if ( $opt_record )
|
||||
|
@ -3298,21 +3316,162 @@ sub run_mysqltest ($) {
|
|||
mtr_add_arg($args, "--record");
|
||||
}
|
||||
|
||||
if ( $opt_client_gdb )
|
||||
{
|
||||
gdb_arguments(\$args, \$exe, "client");
|
||||
}
|
||||
elsif ( $opt_client_ddd )
|
||||
{
|
||||
ddd_arguments(\$args, \$exe, "client");
|
||||
}
|
||||
|
||||
if ($glob_use_libtool)
|
||||
{
|
||||
# Add "libtool --mode-execute" before the test to execute
|
||||
unshift(@$args, "--mode=execute", $exe);
|
||||
$exe= "libtool";
|
||||
}
|
||||
|
||||
if ( $opt_check_testcases )
|
||||
{
|
||||
run_check_testcase("before");
|
||||
}
|
||||
|
||||
my $res = mtr_run_test($exe,$args,$tinfo->{'path'},"",$path_timefile,"");
|
||||
my $res = mtr_run_test($exe,$args,"","",$path_timefile,"");
|
||||
|
||||
if ( $opt_check_testcases )
|
||||
{
|
||||
run_check_testcase("after");
|
||||
}
|
||||
|
||||
return $res;
|
||||
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# Modify the exe and args so that program is run in gdb in xterm
|
||||
#
|
||||
sub gdb_arguments {
|
||||
my $args= shift;
|
||||
my $exe= shift;
|
||||
my $type= shift;
|
||||
|
||||
# Write $args to gdb init file
|
||||
my $str= join(" ", @$$args);
|
||||
my $gdb_init_file= "$opt_tmpdir/gdbinit.$type";
|
||||
|
||||
if ( $type eq "client" )
|
||||
{
|
||||
# write init file for client
|
||||
mtr_tofile($gdb_init_file,
|
||||
"set args $str\n" .
|
||||
"break main\n");
|
||||
}
|
||||
else
|
||||
{
|
||||
# write init file for mysqld
|
||||
mtr_tofile($gdb_init_file,
|
||||
"set args $str\n" .
|
||||
"break mysql_parse\n" .
|
||||
"commands 1\n" .
|
||||
"disable 1\n" .
|
||||
"end\n" .
|
||||
"run");
|
||||
}
|
||||
|
||||
if ( $opt_manual_gdb )
|
||||
{
|
||||
print "\nTo start gdb for$type, type in another window:\n";
|
||||
print "cd $glob_mysql_test_dir;\n";
|
||||
print "gdb -x $gdb_init_file $$exe\n";
|
||||
|
||||
# Indicate the exe should not be started
|
||||
$$exe= undef;
|
||||
return;
|
||||
}
|
||||
|
||||
$$args= [];
|
||||
mtr_add_arg($$args, "-title");
|
||||
mtr_add_arg($$args, "$type");
|
||||
mtr_add_arg($$args, "-e");
|
||||
|
||||
if ( $glob_use_libtool )
|
||||
{
|
||||
mtr_add_arg($$args, "libtool");
|
||||
mtr_add_arg($$args, "--mode=execute");
|
||||
}
|
||||
|
||||
mtr_add_arg($$args, "gdb");
|
||||
mtr_add_arg($$args, "-x");
|
||||
mtr_add_arg($$args, "$gdb_init_file");
|
||||
mtr_add_arg($$args, "$$exe");
|
||||
|
||||
$$exe= "xterm";
|
||||
}
|
||||
|
||||
#
|
||||
# Modify the exe and args so that program is run in ddd
|
||||
#
|
||||
sub ddd_arguments {
|
||||
my $args= shift;
|
||||
my $exe= shift;
|
||||
my $type= shift;
|
||||
|
||||
# Write $args to ddd init file
|
||||
my $str= join(" ", @$$args);
|
||||
my $gdb_init_file= "$opt_tmpdir/gdbinit.$type";
|
||||
|
||||
if ( $type eq "client" )
|
||||
{
|
||||
# write init file for client
|
||||
mtr_tofile($gdb_init_file,
|
||||
"set args $str\n" .
|
||||
"break main\n");
|
||||
}
|
||||
else
|
||||
{
|
||||
# write init file for mysqld
|
||||
mtr_tofile($gdb_init_file,
|
||||
"file $$exe\n" .
|
||||
"set args $str\n" .
|
||||
"break mysql_parse\n" .
|
||||
"commands 1\n" .
|
||||
"disable 1\n" .
|
||||
"end\n" .
|
||||
"run");
|
||||
}
|
||||
|
||||
if ( $opt_manual_ddd )
|
||||
{
|
||||
print "\nTo start ddd for$type, type in another window:\n";
|
||||
print "cd $glob_mysql_test_dir;\n";
|
||||
print "ddd -x $gdb_init_file $$exe\n";
|
||||
|
||||
# Indicate the exe should not be started
|
||||
$$exe= undef;
|
||||
return;
|
||||
}
|
||||
|
||||
my $save_exe= $$exe;
|
||||
$$args= [];
|
||||
if ( $glob_use_libtool )
|
||||
{
|
||||
$$exe= "libtool";
|
||||
mtr_add_arg($$args, "--mode=execute");
|
||||
mtr_add_arg($$args, "ddd");
|
||||
}
|
||||
else
|
||||
{
|
||||
$$exe= "ddd";
|
||||
}
|
||||
mtr_add_arg($$args, "--command=$gdb_init_file");
|
||||
mtr_add_arg($$args, "$save_exe");
|
||||
}
|
||||
|
||||
#
|
||||
# Modify the exe and args so that program is run in valgrind
|
||||
#
|
||||
sub valgrind_arguments {
|
||||
my $args= shift;
|
||||
my $exe= shift;
|
||||
|
@ -3324,7 +3483,7 @@ sub valgrind_arguments {
|
|||
mtr_add_arg($args, "--suppressions=%s/valgrind.supp", $glob_mysql_test_dir)
|
||||
if -f "$glob_mysql_test_dir/valgrind.supp";
|
||||
|
||||
if ( defined $opt_valgrind_all )
|
||||
if ( $opt_valgrind_all )
|
||||
{
|
||||
mtr_add_arg($args, "-v");
|
||||
mtr_add_arg($args, "--show-reachable=yes");
|
||||
|
@ -3332,14 +3491,13 @@ sub valgrind_arguments {
|
|||
|
||||
if ( $opt_valgrind_options )
|
||||
{
|
||||
# FIXME split earlier and put into @glob_valgrind_*
|
||||
mtr_add_arg($args, split(' ', $opt_valgrind_options));
|
||||
}
|
||||
|
||||
|
||||
mtr_add_arg($args, $$exe);
|
||||
|
||||
$$exe= $opt_valgrind || "valgrind";
|
||||
$$exe= $opt_valgrind_path || "valgrind";
|
||||
}
|
||||
|
||||
|
||||
|
@ -3370,6 +3528,13 @@ Options to control what engine/variation to run
|
|||
bench Run the benchmark suite FIXME
|
||||
small-bench FIXME
|
||||
|
||||
Options to control directories to use
|
||||
vardir=DIR The directory where files generated from the test run
|
||||
is stored(default: ./var). Specifying a ramdisk or tmpfs
|
||||
will speed up tests.
|
||||
tmpdir=DIR The directory where temporary files are stored
|
||||
(default: ./var/tmp).
|
||||
|
||||
Options to control what test suites or cases to run
|
||||
|
||||
force Continue to run the suite after failure
|
||||
|
@ -3407,10 +3572,12 @@ Options to run test on running server
|
|||
|
||||
Options for debugging the product
|
||||
|
||||
gdb FIXME
|
||||
manual-gdb FIXME
|
||||
client-gdb FIXME
|
||||
ddd FIXME
|
||||
gdb Start the mysqld(s) in gdb
|
||||
manual-gdb Let user manually start mysqld in gdb, before running test(s)
|
||||
manual-debug Let user manually start mysqld in debugger, before running test(s)
|
||||
client-gdb Start mysqltest client in gdb
|
||||
ddd Start mysqld in ddd
|
||||
client-ddd Start mysqltest client in ddd
|
||||
strace-client FIXME
|
||||
master-binary=PATH Specify the master "mysqld" to use
|
||||
slave-binary=PATH Specify the slave "mysqld" to use
|
||||
|
@ -3419,16 +3586,17 @@ Options for coverage, profiling etc
|
|||
|
||||
gcov FIXME
|
||||
gprof FIXME
|
||||
valgrind[=EXE] Run the "mysqld" server using valgrind, optionally
|
||||
specifying the executable path/name
|
||||
valgrind-mysqltest[=EXE] In addition, run the "mysqltest" executable with valgrind
|
||||
valgrind-all[=EXE] Adds verbose flag, and --show-reachable to valgrind
|
||||
valgrind Run the "mysqltest" and "mysqld" executables using valgrind
|
||||
valgrind-all Same as "valgrind" but will also add "verbose" and "--show-reachable"
|
||||
flags to valgrind
|
||||
valgrind-mysqltest Run the "mysqltest" executable with valgrind
|
||||
valgrind-mysqld Run the "mysqld" executable with valgrind
|
||||
valgrind-options=ARGS Extra options to give valgrind
|
||||
valgrind-path=[EXE] Path to the valgrind executable
|
||||
|
||||
Misc options
|
||||
|
||||
comment=STR Write STR to the output
|
||||
verbose Verbose output from this script
|
||||
script-debug Debug this script itself
|
||||
timer Show test case execution time
|
||||
start-and-exit Only initiate and start the "mysqld" servers, use the startup
|
||||
|
@ -3456,7 +3624,6 @@ Options not yet described, or that I want to look into more
|
|||
old-master
|
||||
sleep=SECONDS
|
||||
socket=PATH
|
||||
tmpdir=DIR
|
||||
user-test=s
|
||||
wait-timeout=SECONDS
|
||||
warnings
|
||||
|
|
|
@ -108,6 +108,7 @@ MYSQL_ERROR *push_warning(THD *thd, MYSQL_ERROR::enum_warning_level level,
|
|||
{
|
||||
MYSQL_ERROR *err= 0;
|
||||
DBUG_ENTER("push_warning");
|
||||
DBUG_PRINT("enter", ("code: %d, msg: %s", code, msg));
|
||||
|
||||
if (level == MYSQL_ERROR::WARN_LEVEL_NOTE &&
|
||||
!(thd->options & OPTION_SQL_NOTES))
|
||||
|
|
Loading…
Add table
Reference in a new issue