Commit f62507e2 authored by unknown's avatar unknown

Add more checks to determine if test can be skipped becuase the feature it uses are not supported.

Check for big-test, ndb-extra, require_manager and binlog format row/stmt 
parent 4022d9dc
...@@ -457,6 +457,31 @@ sub collect_one_test_case($$$$$$$) { ...@@ -457,6 +457,31 @@ sub collect_one_test_case($$$$$$$) {
# selected test cases # selected test cases
# push(@{$tinfo->{'master_opt'}}, "--skip-innodb"); # push(@{$tinfo->{'master_opt'}}, "--skip-innodb");
} }
if ( $tinfo->{'big_test'} and ! $::opt_big_test )
{
$tinfo->{'skip'}= 1;
$tinfo->{'comment'}= "Test need 'big-test' option";
}
if ( $tinfo->{'ndb_extra'} and ! $::opt_ndb_extra_test )
{
$tinfo->{'skip'}= 1;
$tinfo->{'comment'}= "Test need 'ndb_extra' option";
}
if ( $tinfo->{'require_manager'} )
{
$tinfo->{'skip'}= 1;
$tinfo->{'comment'}= "Test need the _old_ manager(to be removed)";
}
if ( defined $tinfo->{'binlog_format'} and
! ( $tinfo->{'binlog_format'} eq $::used_binlog_format ) )
{
$tinfo->{'skip'}= 1;
$tinfo->{'comment'}= "Not running with binlog format '$tinfo->{'binlog_format'}'";
}
} }
# We can't restart a running server that may be in use # We can't restart a running server that may be in use
...@@ -470,6 +495,7 @@ sub collect_one_test_case($$$$$$$) { ...@@ -470,6 +495,7 @@ sub collect_one_test_case($$$$$$$) {
} }
sub mtr_options_from_test_file($$$) { sub mtr_options_from_test_file($$$) {
my $tinfo= shift; my $tinfo= shift;
my $file= shift; my $file= shift;
...@@ -486,6 +512,36 @@ sub mtr_options_from_test_file($$$) { ...@@ -486,6 +512,36 @@ sub mtr_options_from_test_file($$$) {
$tinfo->{'innodb_test'} = 1; $tinfo->{'innodb_test'} = 1;
} }
# Check if test need rowbased logging
if ( defined mtr_match_substring($_,"include/have_binlog_format_row.inc"))
{
$tinfo->{'binlog_format'} = "row";
}
# Check if test need rowbased logging
if ( defined mtr_match_substring($_,"include/have_binlog_format_statement.inc"))
{
$tinfo->{'binlog_format'} = "stmt";
}
# Check if test need "big test"
if ( defined mtr_match_substring($_,"include/big_test.inc"))
{
$tinfo->{'big_test'} = 1;
}
# Check if test need "ndb_extra"
if ( defined mtr_match_substring($_,"include/have_ndb_extra.inc"))
{
$tinfo->{'ndb_extra'} = 1;
}
# Check if test need "manager", the old one
if ( defined mtr_match_substring($_,"require_manager;"))
{
$tinfo->{'require_manager'} = 1;
}
# If test sources another file, open it as well # If test sources another file, open it as well
my $value= mtr_match_prefix($_, "--source"); my $value= mtr_match_prefix($_, "--source");
if ( defined $value) if ( defined $value)
......
...@@ -329,6 +329,8 @@ our $file_ndb_testrun_log; ...@@ -329,6 +329,8 @@ our $file_ndb_testrun_log;
our @data_dir_lst; our @data_dir_lst;
our $used_binlog_format;
###################################################################### ######################################################################
# #
# Function declarations # Function declarations
...@@ -707,6 +709,21 @@ sub command_line_setup () { ...@@ -707,6 +709,21 @@ sub command_line_setup () {
} }
} }
# --------------------------------------------------------------------------
# Find out type of logging that are being used
# --------------------------------------------------------------------------
# NOTE if the default binlog format is changed, this has to be changed
$used_binlog_format= "stmt";
foreach my $arg ( @opt_extra_mysqld_opt )
{
if ( defined mtr_match_substring($arg,"binlog-format=row"))
{
$used_binlog_format= "row";
}
}
mtr_report("Using binlog format '$used_binlog_format'");
# -------------------------------------------------------------------------- # --------------------------------------------------------------------------
# Set the "var/" directory, as it is the base for everything else # Set the "var/" directory, as it is the base for everything else
# -------------------------------------------------------------------------- # --------------------------------------------------------------------------
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment