Commit ab73c0cf authored by magnus.blaudd@oracle.com's avatar magnus.blaudd@oracle.com

Merge

parents 95264568 78d81e9c
...@@ -963,18 +963,11 @@ sub collect_one_test_case { ...@@ -963,18 +963,11 @@ sub collect_one_test_case {
if ( $tinfo->{'ndb_test'} ) if ( $tinfo->{'ndb_test'} )
{ {
# This is a NDB test # This is a NDB test
if ( $::opt_skip_ndbcluster == 2 ) if ( $::ndbcluster_enabled == 0)
{ {
# Ndb is not supported, skip it # ndbcluster is disabled
$tinfo->{'skip'}= 1; $tinfo->{'skip'}= 1;
$tinfo->{'comment'}= "No ndbcluster support or ndb tests not enabled"; $tinfo->{'comment'}= "ndbcluster disabled";
return $tinfo;
}
elsif ( $::opt_skip_ndbcluster )
{
# All ndb test's should be skipped
$tinfo->{'skip'}= 1;
$tinfo->{'comment'}= "No ndbcluster tests(--skip-ndbcluster)";
return $tinfo; return $tinfo;
} }
} }
......
...@@ -310,8 +310,9 @@ sub check_timeout ($) { return testcase_timeout($_[0]) / 10; } ...@@ -310,8 +310,9 @@ sub check_timeout ($) { return testcase_timeout($_[0]) / 10; }
our $opt_warnings= 1; our $opt_warnings= 1;
our $opt_include_ndbcluster= 0; our $ndbcluster_enabled= 0;
our $opt_skip_ndbcluster= 1; my $opt_include_ndbcluster= 0;
my $opt_skip_ndbcluster= 0;
my $exe_ndbd; my $exe_ndbd;
my $exe_ndbmtd; my $exe_ndbmtd;
...@@ -365,26 +366,6 @@ sub main { ...@@ -365,26 +366,6 @@ sub main {
if (!$opt_suites) { if (!$opt_suites) {
$opt_suites= $DEFAULT_SUITES; $opt_suites= $DEFAULT_SUITES;
# Check for any extra suites to enable based on the path name
my %extra_suites=
(
"mysql-5.1-new-ndb" => "ndb_team",
"mysql-5.1-new-ndb-merge" => "ndb_team",
"mysql-5.1-telco-6.2" => "ndb_team",
"mysql-5.1-telco-6.2-merge" => "ndb_team",
"mysql-5.1-telco-6.3" => "ndb_team",
"mysql-6.0-ndb" => "ndb_team",
);
foreach my $dir ( reverse splitdir($basedir) ) {
my $extra_suite= $extra_suites{$dir};
if (defined $extra_suite) {
mtr_report("Found extra suite: $extra_suite");
$opt_suites= "$extra_suite,$opt_suites";
last;
}
}
} }
mtr_report("Using suites: $opt_suites") unless @opt_cases; mtr_report("Using suites: $opt_suites") unless @opt_cases;
...@@ -408,7 +389,6 @@ sub main { ...@@ -408,7 +389,6 @@ sub main {
unshift(@$tests, $tinfo); unshift(@$tests, $tinfo);
} }
print "vardir: $opt_vardir\n";
initialize_servers(); initialize_servers();
####################################################################### #######################################################################
...@@ -1070,7 +1050,7 @@ sub command_line_setup { ...@@ -1070,7 +1050,7 @@ sub command_line_setup {
# Control what test suites or cases to run # Control what test suites or cases to run
'force' => \$opt_force, 'force' => \$opt_force,
'with-ndbcluster-only' => \&collect_option, 'with-ndbcluster-only' => \&collect_option,
'include-ndbcluster' => \$opt_include_ndbcluster, 'ndb|include-ndbcluster' => \$opt_include_ndbcluster,
'skip-ndbcluster|skip-ndb' => \$opt_skip_ndbcluster, 'skip-ndbcluster|skip-ndb' => \$opt_skip_ndbcluster,
'suite|suites=s' => \$opt_suites, 'suite|suites=s' => \$opt_suites,
'skip-rpl' => \&collect_option, 'skip-rpl' => \&collect_option,
...@@ -1519,7 +1499,6 @@ sub command_line_setup { ...@@ -1519,7 +1499,6 @@ sub command_line_setup {
} }
$ENV{'PATH'}= "$ENV{'PATH'}".$separator.$lib_mysqld; $ENV{'PATH'}= "$ENV{'PATH'}".$separator.$lib_mysqld;
} }
$opt_skip_ndbcluster= 1; # Turn off use of NDB cluster
$opt_skip_ssl= 1; # Turn off use of SSL $opt_skip_ssl= 1; # Turn off use of SSL
# Turn off use of bin log # Turn off use of bin log
...@@ -1999,7 +1978,7 @@ sub executable_setup () { ...@@ -1999,7 +1978,7 @@ sub executable_setup () {
$exe_mysql_embedded= mtr_exe_maybe_exists("$basedir/libmysqld/examples/mysql_embedded"); $exe_mysql_embedded= mtr_exe_maybe_exists("$basedir/libmysqld/examples/mysql_embedded");
if ( ! $opt_skip_ndbcluster ) if ( $ndbcluster_enabled )
{ {
# Look for single threaded NDB # Look for single threaded NDB
$exe_ndbd= $exe_ndbd=
...@@ -2270,7 +2249,7 @@ sub environment_setup { ...@@ -2270,7 +2249,7 @@ sub environment_setup {
# -------------------------------------------------------------------------- # --------------------------------------------------------------------------
# Add the path where libndbclient can be found # Add the path where libndbclient can be found
# -------------------------------------------------------------------------- # --------------------------------------------------------------------------
if ( !$opt_skip_ndbcluster ) if ( $ndbcluster_enabled )
{ {
push(@ld_library_paths, "$basedir/storage/ndb/src/.libs"); push(@ld_library_paths, "$basedir/storage/ndb/src/.libs");
} }
...@@ -2358,7 +2337,7 @@ sub environment_setup { ...@@ -2358,7 +2337,7 @@ sub environment_setup {
# ---------------------------------------------------- # ----------------------------------------------------
# Setup env for NDB # Setup env for NDB
# ---------------------------------------------------- # ----------------------------------------------------
if ( ! $opt_skip_ndbcluster ) if ( $ndbcluster_enabled )
{ {
$ENV{'NDB_MGM'}= $ENV{'NDB_MGM'}=
my_find_bin($bindir, my_find_bin($bindir,
...@@ -2753,37 +2732,87 @@ sub vs_config_dirs ($$) { ...@@ -2753,37 +2732,87 @@ sub vs_config_dirs ($$) {
sub check_ndbcluster_support ($) { sub check_ndbcluster_support ($) {
my $mysqld_variables= shift; my $mysqld_variables= shift;
# Check if this is MySQL Cluster, ie. mysql version string ends my $ndbcluster_supported = 0;
# with -ndb-Y.Y.Y[-status] if ($mysqld_variables{'ndb-connectstring'})
if ( defined $mysql_version_extra &&
$mysql_version_extra =~ /^-ndb-/ )
{ {
mtr_report(" - MySQL Cluster"); $ndbcluster_supported = 1;
# Enable ndb engine and add more test suites
$opt_include_ndbcluster = 1;
$DEFAULT_SUITES.=",ndb";
} }
if ($opt_include_ndbcluster) if ($opt_skip_ndbcluster && $opt_include_ndbcluster)
{ {
$opt_skip_ndbcluster= 0; # User is ambivalent. Theoretically the arg which was
# given last on command line should win, but that order is
# unknown at this time.
mtr_error("Ambigous command, both --include-ndbcluster " .
" and --skip-ndbcluster was specified");
} }
if ($opt_skip_ndbcluster) # Check if this is MySQL Cluster, ie. mysql version string ends
# with -ndb-Y.Y.Y[-status]
if ( defined $mysql_version_extra &&
$mysql_version_extra =~ /-ndb-([0-9]*)\.([0-9]*)\.([0-9]*)/ )
{ {
mtr_report(" - skipping ndbcluster"); # MySQL Cluster tree
return; mtr_report(" - MySQL Cluster detected");
}
if ( ! $mysqld_variables{'ndb-connectstring'} ) if ($opt_skip_ndbcluster)
{ {
mtr_report(" - skipping ndbcluster, mysqld not compiled with ndbcluster"); mtr_report(" - skipping ndbcluster(--skip-ndbcluster)");
$opt_skip_ndbcluster= 2; return;
return; }
if (!$ndbcluster_supported)
{
# MySQL Cluster tree, but mysqld was not compiled with
# ndbcluster -> fail unless --skip-ndbcluster was used
mtr_error("This is MySQL Cluster but mysqld does not " .
"support ndbcluster. Use --skip-ndbcluster to " .
"force mtr to run without it.");
}
# mysqld was compiled with ndbcluster -> auto enable
} }
else
{
# Not a MySQL Cluster tree
if (!$ndbcluster_supported)
{
if ($opt_include_ndbcluster)
{
mtr_error("Could not detect ndbcluster support ".
"requested with --include-ndbcluster");
}
# Silently skip, mysqld was compiled without ndbcluster
# which is the default case
return;
}
if ($opt_skip_ndbcluster)
{
# Compiled with ndbcluster but ndbcluster skipped
mtr_report(" - skipping ndbcluster(--skip-ndbcluster)");
return;
}
mtr_report(" - using ndbcluster when necessary, mysqld supports it");
# Not a MySQL Cluster tree, enable ndbcluster
# if --include-ndbcluster was used
if ($opt_include_ndbcluster)
{
# enable ndbcluster
}
else
{
mtr_report(" - skipping ndbcluster(disabled by default)");
return;
}
}
mtr_report(" - enabling ndbcluster");
$ndbcluster_enabled= 1;
# Add MySQL Cluster test suites
$DEFAULT_SUITES.=",ndb,ndb_binlog,rpl_ndb,ndb_rpl,ndb_memcache";
return; return;
} }
......
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