mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Fix some compiler warnings seen in Buildbot.
Add some extra error output and code cleanup in an attempt to fix/debug a rare random testsuite problem in check_warnings, where the exit code from mysqltest is somehow corrupted inside mysql-test-run.pl. include/my_global.h: Fix compiler warnings on some platforms. mysql-test/lib/My/SafeProcess.pm: Move dereference of $? subprocess exit code closer to where it is generated, to make the code more robust and on the chance that this will fix the occasional problems in check_warnings we see in Buildbot. mysql-test/mysql-test-run.pl: When check_warnings failed, also log the mysqld server for which it failed. sql/sql_lex.cc: Fix compiler warning about possibly uninitialised value, by rewriting a for() loop that is always executed at least once into a do .. while() loop with an assert. sql/table.cc: Fix compiler warning about uninitialised value. storage/federatedx/ha_federatedx.cc: Fix uninitialised variable. storage/maria/ma_delete.c: Fix compiler warning about uninitialised value. storage/maria/ma_loghandler.c: Fix compiler warning about uninitialised value. storage/myisam/ft_stopwords.c: Fix compiler warning. storage/myisam/mi_write.c: Fix compiler warning about possibly uninitialised value, by rewriting a while() loop that is always executed at least once into a do .. while() loop with an assert. storage/xtradb/btr/btr0cur.c: Fix compiler warning about possibly uninitialised value. support-files/compiler_warnings.supp: Fix warning suppression to cover all cases in yassl. vio/viossl.c: Fix compiler warning.
This commit is contained in:
@ -4102,7 +4102,7 @@ sub start_check_warnings ($$) {
|
||||
error => $errfile,
|
||||
output => $errfile,
|
||||
args => \$args,
|
||||
user_data => $errfile,
|
||||
user_data => [$errfile, $mysqld],
|
||||
verbose => $opt_verbose,
|
||||
);
|
||||
mtr_verbose("Started $proc");
|
||||
@ -4148,7 +4148,7 @@ sub check_warnings ($) {
|
||||
if ( delete $started{$proc->pid()} ) {
|
||||
# One check warning process returned
|
||||
my $res= $proc->exit_status();
|
||||
my $err_file= $proc->user_data();
|
||||
my ($err_file, $mysqld)= @{$proc->user_data()};
|
||||
|
||||
if ( $res == 0 or $res == 62 ){
|
||||
|
||||
@ -4184,7 +4184,8 @@ sub check_warnings ($) {
|
||||
my $report= mtr_grab_file($err_file);
|
||||
$tinfo->{comment}.=
|
||||
"Could not execute 'check-warnings' for ".
|
||||
"testcase '$tname' (res: $res):\n";
|
||||
"testcase '$tname' (res: $res) server: '".
|
||||
$mysqld->name() .":\n";
|
||||
$tinfo->{comment}.= $report;
|
||||
|
||||
$result= 2;
|
||||
|
Reference in New Issue
Block a user