comparison 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
comparison
equal deleted inserted replaced
1320:8bd4b88fcac5 1321:351b95be742b
461 { name => ':authority', value => 'localhost' }, 461 { name => ':authority', value => 'localhost' },
462 { name => 'content-type', value => 'application/grpc' }, 462 { name => 'content-type', value => 'application/grpc' },
463 { name => 'te', value => 'trailers', mode => 2 }]}); 463 { name => 'te', value => 'trailers', mode => 2 }]});
464 464
465 if (!$extra{reuse}) { 465 if (!$extra{reuse}) {
466 $client = $server->accept() or return; 466 eval {
467 local $SIG{ALRM} = sub { die "timeout\n" };
468 alarm(5);
469
470 $client = $server->accept() or return;
471
472 alarm(0);
473 };
474 alarm(0);
475 if ($@) {
476 log_in("died: $@");
477 return undef;
478 }
479
467 log2c("(new connection $client)"); 480 log2c("(new connection $client)");
468 $n++; 481 $n++;
469 482
470 $client->sysread(my $buf, 24) == 24 or return; # preface 483 $client->sysread(my $buf, 24) == 24 or return; # preface
471 484