[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [OSSTEST PATCH 2/5] TCP fix: Do not wait for queuedaemon to speak
From: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> This depends on the preceding daemonlib patch and an ms-queuedaemon restart. Signed-off-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> --- Osstest/Executive.pm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/Osstest/Executive.pm b/Osstest/Executive.pm index 61a99bc3..80e70070 100644 --- a/Osstest/Executive.pm +++ b/Osstest/Executive.pm @@ -643,7 +643,16 @@ sub tcpconnect_queuedaemon () { my $qserv= tcpconnect($c{QueueDaemonHost}, $c{QueueDaemonPort}); $qserv->autoflush(1); + # TCP connections can get into a weird state where the client + # thinks the connection is open but the server has no record + # of it. To avoid this, have the client speak without waiting + # for the server. + # + # See A TCP "stuck" connection mystery" + # https://www.evanjones.ca/tcp-stuck-connection-mystery.html + print $qserv "noop\n"; $_= <$qserv>; defined && m/^OK ms-queuedaemon\s/ or die "$_?"; + $_= <$qserv>; defined && m/^OK noop\s/ or die "$_?"; return $qserv; } -- 2.20.1
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |