pt-fifo-split: Fix for the blocking tests

This commit is contained in:
Brian Fraser
2013-03-01 06:21:28 -03:00
parent 398bd1f164
commit be048f9674

View File

@@ -41,8 +41,14 @@ my @fifo;
while (kill 0, $pid) { while (kill 0, $pid) {
if ( -e $fifo ) { if ( -e $fifo ) {
eval { eval {
local $SIG{ALRM} = sub { die "read timeout" };
alarm 3;
my $contents = slurp_file($fifo); my $contents = slurp_file($fifo);
push @fifo, $contents; push @fifo, $contents;
alarm 0;
};
if (my $e = $@) {
die $e unless $e =~ /\Aread timeout\z/;
} }
} }
} }
@@ -72,8 +78,14 @@ PerconaTest::wait_until(sub { -p $fifo });
while (kill 0, $pid) { while (kill 0, $pid) {
if ( -e $fifo ) { if ( -e $fifo ) {
eval { eval {
local $SIG{ALRM} = sub { die "read timeout" };
alarm 3;
my $contents = slurp_file($fifo); my $contents = slurp_file($fifo);
push @fifo, $contents; push @fifo, $contents;
alarm 0;
};
if (my $e = $@) {
die $e unless $e =~ /\Aread timeout\z/;
} }
} }
} }