mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
automerge
This commit is contained in:
@ -384,9 +384,9 @@ sub kill {
|
||||
|
||||
|
||||
sub _collect {
|
||||
my ($self)= @_;
|
||||
my ($self, $exit_code)= @_;
|
||||
|
||||
$self->{EXIT_STATUS}= $?;
|
||||
$self->{EXIT_STATUS}= $exit_code;
|
||||
_verbose("_collect: $self");
|
||||
|
||||
# Take the process out of running list
|
||||
@ -453,6 +453,7 @@ sub wait_one {
|
||||
#_verbose("blocking: $blocking, use_alarm: $use_alarm");
|
||||
|
||||
my $retpid;
|
||||
my $exit_code;
|
||||
eval
|
||||
{
|
||||
# alarm should break the wait
|
||||
@ -461,6 +462,7 @@ sub wait_one {
|
||||
alarm($timeout) if $use_alarm;
|
||||
|
||||
$retpid= waitpid($pid, $blocking ? 0 : &WNOHANG);
|
||||
$exit_code= $?;
|
||||
|
||||
alarm(0) if $use_alarm;
|
||||
};
|
||||
@ -492,7 +494,7 @@ sub wait_one {
|
||||
#warn "wait_one: expected pid $pid but got $retpid"
|
||||
# unless( $retpid == $pid );
|
||||
|
||||
$self->_collect();
|
||||
$self->_collect($exit_code);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -505,6 +507,8 @@ sub wait_one {
|
||||
#
|
||||
sub wait_any {
|
||||
my $ret_pid;
|
||||
my $exit_code;
|
||||
|
||||
if (IS_WIN32PERL) {
|
||||
# Can't wait for -1 => use a polling loop
|
||||
do {
|
||||
@ -514,6 +518,7 @@ sub wait_any {
|
||||
last if $pid == $ret_pid;
|
||||
}
|
||||
} while ($ret_pid == 0);
|
||||
$exit_code= $?;
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -523,6 +528,7 @@ sub wait_any {
|
||||
print STDERR "wait_any, got invalid pid: $ret_pid\n";
|
||||
return undef;
|
||||
}
|
||||
$exit_code= $?;
|
||||
}
|
||||
|
||||
# Look it up in "running" table
|
||||
@ -532,7 +538,7 @@ sub wait_any {
|
||||
print STDERR "running: ". join(", ", keys(%running)). "\n";
|
||||
return undef;
|
||||
}
|
||||
$proc->_collect;
|
||||
$proc->_collect($exit_code);
|
||||
return $proc;
|
||||
}
|
||||
|
||||
|
@ -159,7 +159,7 @@ int main(int argc, char* const argv[] )
|
||||
signal(SIGCHLD, handle_signal);
|
||||
signal(SIGABRT, handle_abort);
|
||||
|
||||
sprintf(safe_process_name, "safe_process[%d]", own_pid);
|
||||
sprintf(safe_process_name, "safe_process[%d]", (int) own_pid);
|
||||
|
||||
message("Started");
|
||||
|
||||
|
@ -524,6 +524,10 @@ sub collect_one_suite
|
||||
next if ($test->{'name'} eq 'sys_vars.innodb_thread_concurrency_basic');
|
||||
# Can't work with InnoPlug. Test framework needs to be re-designed.
|
||||
next if ($test->{'name'} eq 'main.innodb_bug46000');
|
||||
# Fails with innodb plugin
|
||||
next if ($test->{'name'} eq 'main.innodb-autoinc');
|
||||
# Fails with innodb plugin: r6185 Testcases changes not included
|
||||
next if ($test->{'name'} eq 'main.innodb_bug44369');
|
||||
# Copy test options
|
||||
my $new_test= My::Test->new();
|
||||
while (my ($key, $value) = each(%$test))
|
||||
@ -677,6 +681,8 @@ sub optimize_cases {
|
||||
if ( $default_engine =~ /^ndb/i );
|
||||
$tinfo->{'innodb_test'}= 1
|
||||
if ( $default_engine =~ /^innodb/i );
|
||||
$tinfo->{'pbxt_test'}= 1
|
||||
if ( $default_engine =~ /^pbxt/i );
|
||||
}
|
||||
}
|
||||
|
||||
@ -774,6 +780,8 @@ sub collect_one_test_case {
|
||||
my $disabled= shift;
|
||||
my $suite_opts= shift;
|
||||
|
||||
my $local_default_storage_engine= $default_storage_engine;
|
||||
|
||||
#print "collect_one_test_case\n";
|
||||
#print " suitedir: $suitedir\n";
|
||||
#print " testdir: $testdir\n";
|
||||
@ -928,15 +936,26 @@ sub collect_one_test_case {
|
||||
|
||||
tags_from_test_file($tinfo,"$testdir/${tname}.test");
|
||||
|
||||
if ( defined $default_storage_engine )
|
||||
# Get default storage engine from suite.opt file
|
||||
|
||||
if (defined $suite_opts &&
|
||||
"@$suite_opts" =~ "default-storage-engine=\s*([^\s]*)")
|
||||
{
|
||||
$local_default_storage_engine= $1;
|
||||
}
|
||||
|
||||
if ( defined $local_default_storage_engine )
|
||||
{
|
||||
# Different default engine is used
|
||||
# tag test to require that engine
|
||||
$tinfo->{'ndb_test'}= 1
|
||||
if ( $default_storage_engine =~ /^ndb/i );
|
||||
if ( $local_default_storage_engine =~ /^ndb/i );
|
||||
|
||||
$tinfo->{'innodb_test'}= 1
|
||||
if ( $default_storage_engine =~ /^innodb/i );
|
||||
if ( $local_default_storage_engine =~ /^innodb/i );
|
||||
|
||||
$tinfo->{'pbxt_test'}= 1
|
||||
if ( $local_default_storage_engine =~ /^pbxt/i );
|
||||
|
||||
}
|
||||
|
||||
@ -1099,6 +1118,28 @@ sub collect_one_test_case {
|
||||
$tinfo->{template_path}= $config;
|
||||
}
|
||||
|
||||
if ( $tinfo->{'pbxt_test'} )
|
||||
{
|
||||
# This is a test that needs pbxt
|
||||
if ( $::mysqld_variables{'pbxt'} eq "OFF" ||
|
||||
! exists $::mysqld_variables{'pbxt'} )
|
||||
{
|
||||
# Engine is not supported, skip it
|
||||
$tinfo->{'skip'}= 1;
|
||||
return $tinfo;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
# Only disable engine if it's on by default (to avoid warnings about
|
||||
# not existing loose options
|
||||
if ( $::mysqld_variables{'pbxt'} eq "ON")
|
||||
{
|
||||
push(@{$tinfo->{'master_opt'}}, "--loose-skip-pbxt");
|
||||
push(@{$tinfo->{'slave_opt'}}, "--loose-skip-pbxt");
|
||||
}
|
||||
}
|
||||
|
||||
if ( $tinfo->{'example_plugin_test'} )
|
||||
{
|
||||
if ( !$ENV{'EXAMPLE_PLUGIN'} )
|
||||
@ -1162,6 +1203,7 @@ my @tags=
|
||||
["include/have_log_bin.inc", "need_binlog", 1],
|
||||
|
||||
["include/have_innodb.inc", "innodb_test", 1],
|
||||
["include/have_pbxt.inc", "pbxt_test", 1],
|
||||
["include/big_test.inc", "big_test", 1],
|
||||
["include/have_debug.inc", "need_debug", 1],
|
||||
["include/have_ndb.inc", "ndb_test", 1],
|
||||
|
@ -1117,14 +1117,16 @@ sub command_line_setup () {
|
||||
|
||||
if ( ! $opt_testcase_timeout )
|
||||
{
|
||||
$opt_testcase_timeout= $default_testcase_timeout;
|
||||
$opt_testcase_timeout=
|
||||
$ENV{MTR_TESTCASE_TIMEOUT} || $default_testcase_timeout;
|
||||
$opt_testcase_timeout*= 10 if $opt_valgrind;
|
||||
$opt_testcase_timeout*= 10 if ($opt_debug and $glob_win32);
|
||||
}
|
||||
|
||||
if ( ! $opt_suite_timeout )
|
||||
{
|
||||
$opt_suite_timeout= $default_suite_timeout;
|
||||
$opt_suite_timeout=
|
||||
$ENV{MTR_SUITE_TIMEOUT} || $default_suite_timeout;
|
||||
$opt_suite_timeout*= 6 if $opt_valgrind;
|
||||
$opt_suite_timeout*= 6 if ($opt_debug and $glob_win32);
|
||||
}
|
||||
@ -3963,7 +3965,7 @@ sub mysqld_arguments ($$$$) {
|
||||
}
|
||||
}
|
||||
|
||||
mtr_add_arg($args, "%s--default-character-set=latin1", $prefix);
|
||||
mtr_add_arg($args, "%s--character-set-server-set=latin1", $prefix);
|
||||
mtr_add_arg($args, "%s--language=%s", $prefix, $path_language);
|
||||
mtr_add_arg($args, "%s--tmpdir=$opt_tmpdir", $prefix);
|
||||
|
||||
|
Reference in New Issue
Block a user