Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
When Perl "kill(9, ...)" fails, try "pg_ctl kill".
authorNoah Misch <noah@leadboat.com>
Sat, 13 Apr 2019 18:09:27 +0000 (11:09 -0700)
committerNoah Misch <noah@leadboat.com>
Sat, 13 Apr 2019 18:09:27 +0000 (11:09 -0700)
Per buildfarm member jacana, the former fails under msys Perl 5.8.8.
Back-patch to 9.6, like the code in question.

Discussion: https://postgr.es/m/GrdLgAdUK9FdyZg8VIcTDKVOkys122ZINEb3CjjoySfGj2KyPiMKTh1zqtRp0TAD7FJ27G-OBB3eplxIB5GhcQH5o8zzGZfp0MuJaXJxVxk=@yesql.se

src/test/perl/PostgresNode.pm

index f6570639e00dc57b6d0f7e1074e48e1bd1a7c27b..61d78ad4c0d910cf5dcd0275031cfa8ff19bf5f3 100644 (file)
@@ -789,7 +789,9 @@ sub kill9
    my $name = $self->name;
    return unless defined $self->{_pid};
    print "### Killing node \"$name\" using signal 9\n";
-   kill(9, $self->{_pid}) or BAIL_OUT("kill(9, $self->{_pid}) failed");
+   # kill(9, ...) fails under msys Perl 5.8.8, so fall back on pg_ctl.
+   kill(9, $self->{_pid})
+     or TestLib::system_or_bail('pg_ctl', 'kill', 'KILL', $self->{_pid});
    $self->{_pid} = undef;
    return;
 }