mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
Set default valgrind options to "-v --show-reachable=yes" and make it possible to override that with --valgrind-options
mysql-test/mysql-test-run.pl: Make --valgrind-all a synonym for --valgrind. Set "-v --show-reachable=yes" as our default valgrind options. Make --valgrind-options override the default options Update usage. Turn on valgrinding also when user specified --valgrind-path or --valgrind-options without --valgrind
This commit is contained in:
parent
2a07ee7202
commit
4ef7be4c32
1 changed files with 26 additions and 24 deletions
|
@ -286,7 +286,7 @@ our $opt_user_test;
|
|||
our $opt_valgrind= 0;
|
||||
our $opt_valgrind_mysqld= 0;
|
||||
our $opt_valgrind_mysqltest= 0;
|
||||
our $opt_valgrind_all= 0;
|
||||
our $default_valgrind_options= "-v --show-reachable=yes";
|
||||
our $opt_valgrind_options;
|
||||
our $opt_valgrind_path;
|
||||
|
||||
|
@ -597,10 +597,9 @@ sub command_line_setup () {
|
|||
# Coverage, profiling etc
|
||||
'gcov' => \$opt_gcov,
|
||||
'gprof' => \$opt_gprof,
|
||||
'valgrind' => \$opt_valgrind,
|
||||
'valgrind|valgrind-all' => \$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,
|
||||
|
||||
|
@ -807,20 +806,32 @@ sub command_line_setup () {
|
|||
$opt_with_ndbcluster= 0;
|
||||
}
|
||||
|
||||
# Turn on valgrinding of all executables if "valgrind" or "valgrind-all"
|
||||
if ( $opt_valgrind or $opt_valgrind_all )
|
||||
# Check valgrind arguments
|
||||
if ( $opt_valgrind or $opt_valgrind_path or defined $opt_valgrind_options)
|
||||
{
|
||||
mtr_report("Turning on valgrind for all executables");
|
||||
$opt_valgrind= 1;
|
||||
$opt_valgrind_mysqld= 1;
|
||||
$opt_valgrind_mysqltest= 1;
|
||||
}
|
||||
elsif ( $opt_valgrind_mysqld or $opt_valgrind_mysqltest )
|
||||
elsif ( $opt_valgrind_mysqld )
|
||||
{
|
||||
# If test's are run for a specific executable, turn on
|
||||
# verbose and show-reachable
|
||||
mtr_report("Turning on valgrind for mysqld(s) only");
|
||||
$opt_valgrind= 1;
|
||||
$opt_valgrind_all= 1;
|
||||
}
|
||||
elsif ( $opt_valgrind_mysqltest )
|
||||
{
|
||||
mtr_report("Turning on valgrind for mysqltest only");
|
||||
$opt_valgrind= 1;
|
||||
}
|
||||
|
||||
if ( $opt_valgrind )
|
||||
{
|
||||
# Set valgrind_options to default unless already defined
|
||||
$opt_valgrind_options=$default_valgrind_options
|
||||
unless defined $opt_valgrind_options;
|
||||
|
||||
mtr_report("Running valgrind with options \"$opt_valgrind_options\"");
|
||||
}
|
||||
|
||||
if ( ! $opt_testcase_timeout )
|
||||
|
@ -3409,17 +3420,8 @@ sub valgrind_arguments {
|
|||
mtr_add_arg($args, "--suppressions=%s/valgrind.supp", $glob_mysql_test_dir)
|
||||
if -f "$glob_mysql_test_dir/valgrind.supp";
|
||||
|
||||
if ( $opt_valgrind_all )
|
||||
{
|
||||
mtr_add_arg($args, "-v");
|
||||
mtr_add_arg($args, "--show-reachable=yes");
|
||||
}
|
||||
|
||||
if ( $opt_valgrind_options )
|
||||
{
|
||||
mtr_add_arg($args, '%s', $_) for (split(' ', $opt_valgrind_options));
|
||||
}
|
||||
|
||||
# Add valgrind options, can be overriden by user
|
||||
mtr_add_arg($args, '%s', $_) for (split(' ', $opt_valgrind_options));
|
||||
|
||||
mtr_add_arg($args, $$exe);
|
||||
|
||||
|
@ -3519,12 +3521,12 @@ Options for coverage, profiling etc
|
|||
|
||||
gcov FIXME
|
||||
gprof FIXME
|
||||
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 Run the "mysqltest" and "mysqld" executables using
|
||||
valgrind with options($default_valgrind_options)
|
||||
valgrind-all Synonym for --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-options=ARGS Options to give valgrind, replaces default options
|
||||
valgrind-path=[EXE] Path to the valgrind executable
|
||||
|
||||
Misc options
|
||||
|
|
Loading…
Reference in a new issue