Limit the time we wait for waiting websocket to connect. (#2554)

This commit is contained in:
Tingluo Huang
2023-04-19 10:20:00 -04:00
committed by GitHub
parent 38ab9dedf4
commit e8b2380a20

View File

@@ -199,13 +199,15 @@ namespace GitHub.Runner.Common
{ {
Trace.Info($"Attempting to start websocket client with delay {delay}."); Trace.Info($"Attempting to start websocket client with delay {delay}.");
await Task.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."); Trace.Info($"Successfully started websocket client.");
} }
catch (Exception ex) catch (Exception ex)
{ {
Trace.Info("Exception caught during websocket client connect, fallback of HTTP would be used now instead of websocket."); Trace.Info("Exception caught during websocket client connect, fallback of HTTP would be used now instead of websocket.");
Trace.Error(ex); Trace.Error(ex);
this._websocketClient = null;
} }
} }