runtime icon indicating copy to clipboard operation
runtime copied to clipboard

Timeout in System.Net.Quic

Open kunalspathak opened this issue 1 year ago • 3 comments

Build Information

Build: https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_build/results?buildId=655963 Build error leg or test failing: Build / Libraries Test Run release coreclr windows x64 Debug / Send to Helix Pull request: https://github.com/dotnet/runtime/pull/100949

Error Message

Fill the error message using step by step known issues guidance.

{
  "ErrorMessage": "System.Net.Quic.QuicException: Connection handshake was canceled due to the configured timeout of",
  "BuildRetry": false,
  "ExcludeConsoleLog": false
}

Known issue validation

Build: :mag_right: https://dev.azure.com/dnceng-public/public/_build/results?buildId=655963 Error message validated: [System.Net.Quic.QuicException: Connection handshake was canceled due to the configured timeout of] Result validation: :x: Known issue did not match with the provided build. Validation performed at: 4/25/2024 5:49:01 PM UTC

Report

Build Definition Test Pull Request
671701 dotnet/runtime System.Net.Http.Functional.Tests.SocketsHttpHandlerTest_HttpClientHandlerTest_Headers_Http3.SendAsync_Expires_Success
663692 dotnet/runtime System.Net.Http.Functional.Tests.SocketsHttpHandler_HttpClientHandler_AltSvc_Test_Http3.AltSvc_ConnectionFrame_UpgradeFrom20_Success dotnet/runtime#101818
662966 dotnet/runtime System.Net.Quic.Functional.Tests.WorkItemExecution
658149 dotnet/runtime System.Net.Http.Functional.Tests.SocketsHttpHandlerTest_HttpClientHandlerTest_Headers_Http3.SendAsync_Expires_Success dotnet/runtime#101645
657407 dotnet/runtime System.Net.Http.Functional.Tests.WorkItemExecution dotnet/runtime#101531
655731 dotnet/runtime System.Net.Http.Functional.Tests.SocketsHttpHandlerTest_Cookies_Http3.GetAsync_DefaultCoookieContainer_NoCookieSent dotnet/runtime#101053
655692 dotnet/runtime System.Net.Http.Functional.Tests.SocketsHttpHandlerTest_Cookies_Http3.GetAsync_DefaultCoookieContainer_NoCookieSent dotnet/runtime#101531
655445 dotnet/runtime System.Net.Http.Functional.Tests.SocketsHttpHandlerTest_Cookies_Http3.GetAsync_SetCookieContainerAndCookieHeader_BothCookiesSent dotnet/runtime#101525
655401 dotnet/runtime System.Net.Http.Functional.Tests.SocketsHttpHandler_HttpClientHandler_AltSvc_Test_Http3.AltSvc_Header_Upgrade_Success dotnet/runtime#101378
653929 dotnet/runtime System.Net.Http.Functional.Tests.SocketsHttpHandlerTest_HttpClientHandlerTest_Http3.ReadAsStreamAsync_HandlerProducesWellBehavedResponseStream dotnet/runtime#101418
655011 dotnet/runtime System.Net.Http.Functional.Tests.SocketsHttpHandlerTest_Cookies_Http3.GetAsync_DefaultCoookieContainer_NoCookieSent dotnet/runtime#101221

Summary

24-Hour Hit Count 7-Day Hit Count 1-Month Count
0 1 11

kunalspathak avatar Apr 25 '24 17:04 kunalspathak

System.Net.Http.Functional.Tests.SocketsHttpHandler_HttpClientHandler_Cancellation_Test_Http3.PostAsync_CancelDuringRequestContentSend_TaskCanceledQuickly(chunkedTransfer: False, mode: Token) [FAIL]
      Expected cancellation exception, got:
      System.Net.Http.HttpRequestException: Connection handshake was canceled due to the configured timeout of 00:00:10 seconds elapsing. (127.0.0.1:63734)
       ---> System.Net.Quic.QuicException: Connection handshake was canceled due to the configured timeout of 00:00:10 seconds elapsing.
         at System.Net.Quic.QuicConnection.<ConnectAsync>g__StartConnectAsync|2_0(QuicClientConnectionOptions options, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Quic/src/System/Net/Quic/QuicConnection.cs:line 89
         at System.Net.Http.ConnectHelper.ConnectQuicAsync(HttpRequestMessage request, DnsEndPoint endPoint, TimeSpan idleTimeout, SslClientAuthenticationOptions clientAuthenticationOptions, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/ConnectHelper.cs:line 121
         --- End of inner exception stack trace ---
         at System.Net.Http.ConnectHelper.ConnectQuicAsync(HttpRequestMessage request, DnsEndPoint endPoint, TimeSpan idleTimeout, SslClientAuthenticationOptions clientAuthenticationOptions, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/ConnectHelper.cs:line 134
         at System.Net.Http.HttpConnectionPool.GetHttp3ConnectionAsync(HttpRequestMessage request, HttpAuthority authority, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/ConnectionPool/HttpConnectionPool.Http3.cs:line 162
         at System.Net.Http.HttpConnectionPool.GetHttp3ConnectionAsync(HttpRequestMessage request, HttpAuthority authority, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/ConnectionPool/HttpConnectionPool.Http3.cs:line 174
         at System.Net.Http.HttpConnectionPool.TrySendUsingHttp3Async(HttpRequestMessage request, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/ConnectionPool/HttpConnectionPool.Http3.cs:line 85
         at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/ConnectionPool/HttpConnectionPool.cs:line 430
         at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/RedirectHandler.cs:line 30
         at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/HttpClient.cs:line 530
         at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/HttpClient.cs:line 550
         at Xunit.Record.ExceptionAsync(Func`1 testCode) in /_/src/xunit.core/Record.cs:line 76
      Stack Trace:
        /_/src/libraries/Common/tests/System/Net/Http/HttpClientHandlerTest.Cancellation.cs(623,0): at System.Net.Http.Functional.Tests.HttpClientHandler_Cancellation_Test.ValidateClientCancellationAsync(Func`1 clientBodyAsync)
        /_/src/libraries/Common/tests/System/Net/Http/HttpClientHandlerTest.Cancellation.cs(80,0): at System.Net.Http.Functional.Tests.HttpClientHandler_Cancellation_Test.<>c__DisplayClass1_0.<<PostAsync_CancelDuringRequestContentSend_TaskCanceledQuickly>b__0>d.MoveNext()
        --- End of stack trace from previous location ---
        /_/src/libraries/Common/tests/System/Threading/Tasks/TaskTimeoutExtensions.cs(120,0): at System.Threading.Tasks.TaskTimeoutExtensions.GetRealException(Task task)
        --- End of stack trace from previous location ---
        /_/src/libraries/Common/tests/System/Threading/Tasks/TaskTimeoutExtensions.cs(90,0): at System.Threading.Tasks.TaskTimeoutExtensions.WhenAllOrAnyFailed(Task[] tasks)
        /_/src/libraries/Common/tests/System/Net/Http/GenericLoopbackServer.cs(44,0): at System.Net.Test.Common.LoopbackServerFactory.<>c__DisplayClass6_0.<<CreateClientAndServerAsync>b__0>d.MoveNext()
        --- End of stack trace from previous location ---
        /_/src/libraries/Common/tests/System/Net/Http/Http3LoopbackServer.cs(116,0): at System.Net.Test.Common.Http3LoopbackServerFactory.CreateServerAsync(Func`3 funcAsync, Int32 millisecondsTimeout, GenericLoopbackOptions options)
        /_/src/libraries/Common/tests/System/Net/Http/HttpCl

kunalspathak avatar Apr 25 '24 17:04 kunalspathak

I believe the root cause is same as for https://github.com/dotnet/runtime/issues/91757 and https://github.com/dotnet/runtime/issues/101463, but the exception thrown is different, so opening a separate issue.

kunalspathak avatar Apr 25 '24 17:04 kunalspathak

Tagging subscribers to this area: @dotnet/ncl See info in area-owners.md if you want to be subscribed.

Fixed by #102699

ManickaP avatar Jun 13 '24 11:06 ManickaP