]> granicus.if.org Git - postgresql/commitdiff
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:30 +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 52708205850b15f3578033949e1a8fa1bcd382da..fff8c992a3726a4185d3fb37606faeaf4b9f8d53 100644 (file)
@@ -734,7 +734,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;
 }