Commit dd1d0a46 authored by Bjorn Munch's avatar Bjorn Munch

Bug #47663 mtr --parallel has weird output

Some output is written, some is not
Finally concluded it's a Perl bug: after running with parallel threads
  for a while, print suddenly ignores all but the first argument.
Workaround: concatenate all the arguments into one, except in output that
  only comes before we start running tests
parent 6c28505e
......@@ -338,12 +338,12 @@ sub start_kill {
$ret= system($safe_kill, $winpid) >> 8;
if ($ret == 3){
print "Couldn't open the winpid: $winpid ",
print "Couldn't open the winpid: $winpid ".
"for pid: $pid, try one more time\n";
sleep(1);
$winpid= _winpid($pid);
$ret= system($safe_kill, $winpid) >> 8;
print "Couldn't open the winpid: $winpid ",
print "Couldn't open the winpid: $winpid ".
"for pid: $pid, continue and see what happens...\n";
}
}
......@@ -594,7 +594,7 @@ sub self2str {
sub _verbose {
return unless $_verbose;
print STDERR " ## ", @_, "\n";
print STDERR " ## ". @_. "\n";
}
......
......@@ -69,7 +69,7 @@ sub _mtr_report_test_name ($) {
$tname.= " '$tinfo->{combination}'"
if defined $tinfo->{combination};
print _name(), _timestamp();
print _name(). _timestamp();
printf "%-40s ", $tname;
my $worker = $tinfo->{worker};
printf "w$worker " if $worker;
......@@ -390,13 +390,13 @@ sub mtr_report_stats ($$;$) {
##############################################################################
sub mtr_print_line () {
print '-' x 60, "\n";
print '-' x 60 . "\n";
}
sub mtr_print_thick_line {
my $char= shift || '=';
print $char x 78, "\n";
print $char x 78 . "\n";
}
......@@ -454,7 +454,7 @@ sub _timestamp {
# Always print message to screen
sub mtr_print (@) {
print _name(), join(" ", @_), "\n";
print _name(). join(" ", @_). "\n";
}
......@@ -462,22 +462,22 @@ sub mtr_print (@) {
sub mtr_report (@) {
if (defined $verbose)
{
print _name(), join(" ", @_), "\n";
print _name(). join(" ", @_). "\n";
}
}
# Print warning to screen
sub mtr_warning (@) {
print STDERR _name(), _timestamp(),
"mysql-test-run: WARNING: ", join(" ", @_), "\n";
print STDERR _name(). _timestamp().
"mysql-test-run: WARNING: ". join(" ", @_). "\n";
}
# Print error to screen and then exit
sub mtr_error (@) {
print STDERR _name(), _timestamp(),
"mysql-test-run: *** ERROR: ", join(" ", @_), "\n";
print STDERR _name(). _timestamp().
"mysql-test-run: *** ERROR: ". join(" ", @_). "\n";
if (IS_WINDOWS)
{
POSIX::_exit(1);
......@@ -492,8 +492,8 @@ sub mtr_error (@) {
sub mtr_debug (@) {
if ( $verbose > 2 )
{
print STDERR _name(),
_timestamp(), "####: ", join(" ", @_), "\n";
print STDERR _name().
_timestamp(). "####: ". join(" ", @_). "\n";
}
}
......@@ -501,8 +501,8 @@ sub mtr_debug (@) {
sub mtr_verbose (@) {
if ( $verbose )
{
print STDERR _name(), _timestamp(),
"> ",join(" ", @_),"\n";
print STDERR _name(). _timestamp().
"> ".join(" ", @_)."\n";
}
}
......@@ -512,8 +512,8 @@ sub mtr_verbose_restart (@) {
my $proc= $server->{proc};
if ( $verbose_restart )
{
print STDERR _name(),_timestamp(),
"> Restart $proc - ",join(" ", @args),"\n";
print STDERR _name()._timestamp().
"> Restart $proc - ".join(" ", @args)."\n";
}
}
......
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