Mercurial > hg > nginx-tests
diff grpc.t @ 1321:351b95be742b
Tests: fixed grpc tests hang in accept() on internal nginx error.
author | Sergey Kandaurov <pluknet@nginx.com> |
---|---|
date | Mon, 09 Apr 2018 14:53:25 +0300 |
parents | 3b30e97acdcb |
children | 6874b32dc3d2 |
line wrap: on
line diff
--- a/grpc.t Fri Apr 06 17:21:23 2018 +0300 +++ b/grpc.t Mon Apr 09 14:53:25 2018 +0300 @@ -463,7 +463,20 @@ { name => 'te', value => 'trailers', mode => 2 }]}); if (!$extra{reuse}) { - $client = $server->accept() or return; + eval { + local $SIG{ALRM} = sub { die "timeout\n" }; + alarm(5); + + $client = $server->accept() or return; + + alarm(0); + }; + alarm(0); + if ($@) { + log_in("died: $@"); + return undef; + } + log2c("(new connection $client)"); $n++;