From 74cd00065a58288d6f5b41b46779e9ddb2970c20 Mon Sep 17 00:00:00 2001 From: Tingluo Huang Date: Tue, 18 Apr 2023 22:22:27 -0400 Subject: [PATCH] Limit the time we wait for waiting websocket to connect. --- src/Runner.Common/JobServer.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Runner.Common/JobServer.cs b/src/Runner.Common/JobServer.cs index 04c244ad8a3..c0719f61572 100644 --- a/src/Runner.Common/JobServer.cs +++ b/src/Runner.Common/JobServer.cs @@ -199,13 +199,15 @@ private async Task ConnectWebSocketClient(string feedStreamUrl, TimeSpan delay) { Trace.Info($"Attempting to start websocket client with delay {delay}."); await Task.Delay(delay); - await this._websocketClient.ConnectAsync(new Uri(feedStreamUrl), default(CancellationToken)); + using var connectTimeoutTokenSource = new CancellationTokenSource(TimeSpan.FromSeconds(30)); + await this._websocketClient.ConnectAsync(new Uri(feedStreamUrl), connectTimeoutTokenSource.Token); Trace.Info($"Successfully started websocket client."); } catch (Exception ex) { Trace.Info("Exception caught during websocket client connect, fallback of HTTP would be used now instead of websocket."); Trace.Error(ex); + this._websocketClient = null; } }