Skip to content

Commit

Permalink
use log-error in mtr, don't let mysqld to write to stderr
Browse files Browse the repository at this point in the history
because on Windows it cannot properly append to the file,
doesn't use CreateFile(..., FILE_APPEND_DATA, ...)

this fixes main.shutdown failures on Windows
  • Loading branch information
vuvova committed Apr 7, 2017
1 parent cd79be8 commit 84d9d28
Show file tree
Hide file tree
Showing 12 changed files with 19 additions and 63 deletions.
4 changes: 2 additions & 2 deletions mysql-test/lib/My/ConfigFactory.pm
Expand Up @@ -246,7 +246,7 @@ my @mysqld_rules=
{ '#host' => \&fix_host },
{ 'port' => \&fix_port },
{ 'socket' => \&fix_socket },
{ '#log-error' => \&fix_log_error },
{ 'log-error' => \&fix_log_error },
{ 'general-log' => 1 },
{ 'plugin-dir' => sub { $::plugindir } },
{ 'general-log-file' => \&fix_log },
Expand Down Expand Up @@ -394,7 +394,7 @@ sub post_check_embedded_group {

my %no_copy = map { $_ => 1 }
(
'#log-error', # Embedded server writes stderr to mysqltest's log file
'log-error', # Embedded server writes stderr to mysqltest's log file
'slave-net-timeout', # Embedded server are not build with replication
'shared-memory-base-name', # No shared memory for embedded
);
Expand Down
12 changes: 6 additions & 6 deletions mysql-test/mysql-test-run.pl
Expand Up @@ -2757,7 +2757,7 @@ ($)
# Already started

# Write start of testcase to log file
mark_log($mysqld->value('#log-error'), $tinfo);
mark_log($mysqld->value('log-error'), $tinfo);

return;
}
Expand Down Expand Up @@ -2814,7 +2814,7 @@ ($)
mkpath($tmpdir) unless -d $tmpdir;

# Write start of testcase to log file
mark_log($mysqld->value('#log-error'), $tinfo);
mark_log($mysqld->value('log-error'), $tinfo);

# Run <tname>-master.sh
if ($mysqld->option('#!run-master-sh') and
Expand Down Expand Up @@ -4259,7 +4259,7 @@ ($$)

foreach my $mysqld (all_servers()) {
if ($mysqld->{proc} eq $proc) {
my @srv_lines= extract_server_log($mysqld->if_exist('#log-error'), $name);
my @srv_lines= extract_server_log($mysqld->if_exist('log-error'), $name);
$srv_log= "\nServer log from this test:\n" .
"----------SERVER LOG START-----------\n". join ("", @srv_lines) .
"----------SERVER LOG END-------------\n";
Expand Down Expand Up @@ -4466,7 +4466,7 @@ ($$)

my $name= "warnings-".$mysqld->name();

my $log_error= $mysqld->value('#log-error');
my $log_error= $mysqld->value('log-error');
# To be communicated to the test
$ENV{MTR_LOG_ERROR}= $log_error;
extract_warning_lines($log_error, 0);
Expand Down Expand Up @@ -4624,7 +4624,7 @@ sub check_warnings_post_shutdown {
foreach my $mysqld ( mysqlds())
{
my ($testlist, $match_lines)=
extract_warning_lines($mysqld->value('#log-error'), 1);
extract_warning_lines($mysqld->value('log-error'), 1);
$testname_hash->{$_}= 1 for @$testlist;
$report.= join('', @$match_lines);
}
Expand Down Expand Up @@ -5073,7 +5073,7 @@ ($$)
# Remove the old pidfile if any
unlink($mysqld->value('pid-file'));

my $output= $mysqld->value('#log-error');
my $output= $mysqld->value('log-error');

if ( $opt_valgrind and $opt_debug )
{
Expand Down
21 changes: 0 additions & 21 deletions mysql-test/suite/sys_vars/r/log_error_basic.result

This file was deleted.

4 changes: 2 additions & 2 deletions mysql-test/suite/sys_vars/r/log_error_func.result
@@ -1,6 +1,6 @@
select (@err_log:=variable_value)*0 from information_schema.global_variables where variable_name="log_error";
(@err_log:=variable_value)*0
0
select instr(@err_log, "some_random_name5435413.err")>0;
instr(@err_log, "some_random_name5435413.err")>0
select instr(@err_log, "mysqld.1.err")>0;
instr(@err_log, "mysqld.1.err")>0
1
4 changes: 2 additions & 2 deletions mysql-test/suite/sys_vars/r/sysvars_server_notembedded.result
Expand Up @@ -1817,8 +1817,8 @@ READ_ONLY NO
COMMAND_LINE_ARGUMENT OPTIONAL
VARIABLE_NAME LOG_ERROR
SESSION_VALUE NULL
GLOBAL_VALUE
GLOBAL_VALUE_ORIGIN COMPILE-TIME
GLOBAL_VALUE PATH
GLOBAL_VALUE_ORIGIN CONFIG
DEFAULT_VALUE 0
VARIABLE_SCOPE GLOBAL
VARIABLE_TYPE VARCHAR
Expand Down
18 changes: 0 additions & 18 deletions mysql-test/suite/sys_vars/t/log_error_basic.test

This file was deleted.

5 changes: 0 additions & 5 deletions mysql-test/suite/sys_vars/t/log_error_func.cnf

This file was deleted.

5 changes: 4 additions & 1 deletion mysql-test/suite/sys_vars/t/log_error_func.test
@@ -1,10 +1,13 @@
# embedded .cnf doesn't have log-error option
source include/not_embedded.inc;

# Test for BUG#51215 "log-error partially works with version 5.5"
# when --log-error is used without argument

# check displayed value. We can check only the base name, the rest
# depends on paths, symbolic links, --vardir, etc...
select (@err_log:=variable_value)*0 from information_schema.global_variables where variable_name="log_error";
select instr(@err_log, "some_random_name5435413.err")>0;
select instr(@err_log, "mysqld.1.err")>0;

# Check file's existence. The displayed value may be relative or not.
let $err_log=`select @err_log`;
Expand Down
5 changes: 0 additions & 5 deletions mysql-test/suite/sys_vars/t/log_error_func2.cnf

This file was deleted.

1 change: 1 addition & 0 deletions mysql-test/suite/sys_vars/t/log_error_func2.opt
@@ -0,0 +1 @@
--log-error
1 change: 1 addition & 0 deletions mysql-test/suite/sys_vars/t/log_error_func3.opt
@@ -0,0 +1 @@
--disable-log-error
2 changes: 1 addition & 1 deletion mysql-test/t/plugin_loaderr.test
Expand Up @@ -18,7 +18,7 @@ FROM INFORMATION_SCHEMA.PLUGINS WHERE plugin_name = 'innodb';
--source include/wait_until_disconnected.inc

--error 1
--exec $MYSQLD_CMD --innodb=force --innodb-page-size=6000
--exec $MYSQLD_CMD --innodb=force --innodb-page-size=6000 --disable-log-error

--exec echo "restart" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
--enable_reconnect
Expand Down

0 comments on commit 84d9d28

Please sign in to comment.