Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[HTTP/3] Test failure ResponseCancellation_ServerReceivesCancellation #56194

Closed
VincentBu opened this issue Jul 23, 2021 · 4 comments · Fixed by #67535
Closed

[HTTP/3] Test failure ResponseCancellation_ServerReceivesCancellation #56194

VincentBu opened this issue Jul 23, 2021 · 4 comments · Fixed by #67535
Assignees
Labels
area-System.Net.Http disabled-test The test is disabled in source code against the issue os-linux Linux OS (any supported distro) test-run-core Test failures in .NET Core test runs
Milestone

Comments

@VincentBu
Copy link
Contributor

VincentBu commented Jul 23, 2021

Test failures 5/23-7/23 (incl. PRs):

Day Run
7/22 PR #56153
7/22 Official run
7/25 PR #56210
7/26 1x Official run + 8x PR
7/26 Test disabled

Test: System.Net.Http.Functional.Tests.SocketsHttpHandlerTest_Http3_MsQuic.ResponseCancellation_ServerReceivesCancellation(type: Dispose)

System.AggregateException : One or more errors occurred. (One or more errors occurred. (The operation has timed out.)) (One or more errors occurred. (Stream aborted by peer (4294967295).))
---- System.AggregateException : One or more errors occurred. (The operation has timed out.)
-------- System.TimeoutException : The operation has timed out.
---- System.AggregateException : One or more errors occurred. (Stream aborted by peer (4294967295).)
-------- System.Net.Quic.QuicStreamAbortedException : Stream aborted by peer (4294967295).


Stack trace
   at System.Threading.Tasks.TaskTimeoutExtensions.WhenAllOrAnyFailed(Task[] tasks) in /_/src/libraries/Common/tests/System/Threading/Tasks/TaskTimeoutExtensions.cs:line 80
   at System.Threading.Tasks.TaskTimeoutExtensions.WhenAllOrAnyFailed(Task[] tasks, Int32 millisecondsTimeout) in /_/src/libraries/Common/tests/System/Threading/Tasks/TaskTimeoutExtensions.cs:line 49
   at System.Net.Http.Functional.Tests.HttpClientHandlerTest_Http3.ResponseCancellation_ServerReceivesCancellation(CancellationType type) in /_/src/libraries/System.Net.Http/tests/FunctionalTests/HttpClientHandlerTest.Http3.cs:line 544
--- End of stack trace from previous location ---
----- Inner Stack Trace #1 (System.AggregateException) -----

----- Inner Stack Trace -----
   at System.Net.Http.Functional.Tests.HttpClientHandlerTest_Http3.<>c__DisplayClass12_0.<<ResponseCancellation_ServerReceivesCancellation>b__1>d.MoveNext() in /_/src/libraries/System.Net.Http/tests/FunctionalTests/HttpClientHandlerTest.Http3.cs:line 512
--- End of stack trace from previous location ---
   at System.Threading.Tasks.TaskTimeoutExtensions.WhenAllOrAnyFailed(Task[] tasks) in /_/src/libraries/Common/tests/System/Threading/Tasks/TaskTimeoutExtensions.cs:line 63
----- Inner Stack Trace #2 (System.AggregateException) -----

----- Inner Stack Trace -----
   at System.Net.Quic.Implementations.MsQuic.MsQuicStream.HandleWriteStartState(CancellationToken cancellationToken) in /_/src/libraries/System.Net.Quic/src/System/Net/Quic/Implementations/MsQuic/MsQuicStream.cs:line 328
   at System.Net.Quic.Implementations.MsQuic.MsQuicStream.WriteAsync(ReadOnlyMemory`1 buffer, Boolean endStream, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Quic/src/System/Net/Quic/Implementations/MsQuic/MsQuicStream.cs:line 256
   at System.Net.Test.Common.Http3LoopbackStream.SendFrameHeaderAsync(Int64 frameType, Int32 payloadLength) in /_/src/libraries/Common/tests/System/Net/Http/Http3LoopbackStream.cs:line 149
   at System.Net.Test.Common.Http3LoopbackStream.SendFrameAsync(Int64 frameType, ReadOnlyMemory`1 framePayload) in /_/src/libraries/Common/tests/System/Net/Http/Http3LoopbackStream.cs:line 155
   at System.Net.Test.Common.Http3LoopbackStream.SendHeadersFrameAsync(IEnumerable`1 headers) in /_/src/libraries/Common/tests/System/Net/Http/Http3LoopbackStream.cs:line 109
   at System.Net.Test.Common.Http3LoopbackStream.SendResponseHeadersAsync(HttpStatusCode statusCode, IEnumerable`1 headers) in /_/src/libraries/Common/tests/System/Net/Http/Http3LoopbackStream.cs:line 252
   at System.Net.Http.Functional.Tests.HttpClientHandlerTest_Http3.<>c__DisplayClass12_0.<<ResponseCancellation_ServerReceivesCancellation>b__0>d.MoveNext() in /_/src/libraries/System.Net.Http/tests/FunctionalTests/HttpClientHandlerTest.Http3.cs:line 486
@VincentBu VincentBu added area-System.Net.Http os-linux Linux OS (any supported distro) arch-x64 labels Jul 23, 2021
@ghost
Copy link

ghost commented Jul 23, 2021

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

Issue Details

Run: runtime 20210722.80
Failed test:

net6.0-Linux-Release-x64-CoreCLR_release-(Fedora.32.Amd64.Open)ubuntu.1604.amd64.open@mcr.microsoft.com/dotnet-buildtools/prereqs:fedora-32-helix-20210710031120-870c408

- System.Net.Http.Functional.Tests.SocketsHttpHandlerTest_Http3_MsQuic.ResponseCancellation_ServerReceivesCancellation(type: Dispose)

Error message:

System.AggregateException : One or more errors occurred. (One or more errors occurred. (The operation has timed out.)) (One or more errors occurred. (Stream aborted by peer (4294967295).))
---- System.AggregateException : One or more errors occurred. (The operation has timed out.)
-------- System.TimeoutException : The operation has timed out.
---- System.AggregateException : One or more errors occurred. (Stream aborted by peer (4294967295).)
-------- System.Net.Quic.QuicStreamAbortedException : Stream aborted by peer (4294967295).


Stack trace
   at System.Threading.Tasks.TaskTimeoutExtensions.WhenAllOrAnyFailed(Task[] tasks) in /_/src/libraries/Common/tests/System/Threading/Tasks/TaskTimeoutExtensions.cs:line 80
   at System.Threading.Tasks.TaskTimeoutExtensions.WhenAllOrAnyFailed(Task[] tasks, Int32 millisecondsTimeout) in /_/src/libraries/Common/tests/System/Threading/Tasks/TaskTimeoutExtensions.cs:line 49
   at System.Net.Http.Functional.Tests.HttpClientHandlerTest_Http3.ResponseCancellation_ServerReceivesCancellation(CancellationType type) in /_/src/libraries/System.Net.Http/tests/FunctionalTests/HttpClientHandlerTest.Http3.cs:line 544
--- End of stack trace from previous location ---
----- Inner Stack Trace #1 (System.AggregateException) -----

----- Inner Stack Trace -----
   at System.Net.Http.Functional.Tests.HttpClientHandlerTest_Http3.<>c__DisplayClass12_0.<<ResponseCancellation_ServerReceivesCancellation>b__1>d.MoveNext() in /_/src/libraries/System.Net.Http/tests/FunctionalTests/HttpClientHandlerTest.Http3.cs:line 512
--- End of stack trace from previous location ---
   at System.Threading.Tasks.TaskTimeoutExtensions.WhenAllOrAnyFailed(Task[] tasks) in /_/src/libraries/Common/tests/System/Threading/Tasks/TaskTimeoutExtensions.cs:line 63
----- Inner Stack Trace #2 (System.AggregateException) -----

----- Inner Stack Trace -----
   at System.Net.Quic.Implementations.MsQuic.MsQuicStream.HandleWriteStartState(CancellationToken cancellationToken) in /_/src/libraries/System.Net.Quic/src/System/Net/Quic/Implementations/MsQuic/MsQuicStream.cs:line 328
   at System.Net.Quic.Implementations.MsQuic.MsQuicStream.WriteAsync(ReadOnlyMemory`1 buffer, Boolean endStream, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Quic/src/System/Net/Quic/Implementations/MsQuic/MsQuicStream.cs:line 256
   at System.Net.Test.Common.Http3LoopbackStream.SendFrameHeaderAsync(Int64 frameType, Int32 payloadLength) in /_/src/libraries/Common/tests/System/Net/Http/Http3LoopbackStream.cs:line 149
   at System.Net.Test.Common.Http3LoopbackStream.SendFrameAsync(Int64 frameType, ReadOnlyMemory`1 framePayload) in /_/src/libraries/Common/tests/System/Net/Http/Http3LoopbackStream.cs:line 155
   at System.Net.Test.Common.Http3LoopbackStream.SendHeadersFrameAsync(IEnumerable`1 headers) in /_/src/libraries/Common/tests/System/Net/Http/Http3LoopbackStream.cs:line 109
   at System.Net.Test.Common.Http3LoopbackStream.SendResponseHeadersAsync(HttpStatusCode statusCode, IEnumerable`1 headers) in /_/src/libraries/Common/tests/System/Net/Http/Http3LoopbackStream.cs:line 252
   at System.Net.Http.Functional.Tests.HttpClientHandlerTest_Http3.<>c__DisplayClass12_0.<<ResponseCancellation_ServerReceivesCancellation>b__0>d.MoveNext() in /_/src/libraries/System.Net.Http/tests/FunctionalTests/HttpClientHandlerTest.Http3.cs:line 486
Author: VincentBu
Assignees: -
Labels:

arch-x64, area-System.Net.Http, os-linux

Milestone: -

@dotnet-issue-labeler dotnet-issue-labeler bot added the untriaged New issue has not been triaged by the area owner label Jul 23, 2021
@wfurt
Copy link
Member

wfurt commented Jul 23, 2021

Failure count not too bad. I've seen few occurrences in my local runs. I will investigate if that is just flaky test (cancellation tests are hard) or if there is systematic problem.
We may disable it in mean time to improve CI experience @karelz

@karelz karelz removed the arch-x64 label Jul 23, 2021
@karelz
Copy link
Member

karelz commented Jul 23, 2021

Right now, there were only 2 failures, so it didn't even pop up on my monitoring queries yet (I am looking at all 3+ failures and only some 2+ failures).
Top post updated with failures. Once it reaches unpleasant frequency, I will disable it.

@karelz karelz removed the untriaged New issue has not been triaged by the area owner label Jul 23, 2021
@karelz karelz added this to the 6.0.0 milestone Jul 23, 2021
karelz added a commit that referenced this issue Jul 26, 2021
Disable System.Net.Http.Functional.Tests.SocketsHttpHandlerTest_Http3_MsQuic.ResponseCancellation_ServerReceivesCancellation

Disabled test tracked by #56194
@karelz karelz changed the title Failure test System.Net.Http.Functional.Tests.SocketsHttpHandlerTest_Http3_MsQuic.ResponseCancellation_ServerReceivesCancellation [HTTP/3] Test failure ResponseCancellation_ServerReceivesCancellation Jul 26, 2021
@karelz karelz added the test-run-core Test failures in .NET Core test runs label Jul 26, 2021
karelz added a commit that referenced this issue Jul 26, 2021
Test: System.Net.Http.Functional.Tests.SocketsHttpHandlerTest_Http3_MsQuic.ResponseCancellation_ServerReceivesCancellation

Disabled test tracked by #56194
@karelz karelz added the disabled-test The test is disabled in source code against the issue label Jul 26, 2021
@karelz
Copy link
Member

karelz commented Jul 26, 2021

Test disabled in PR #56291 on 7/26.

@ManickaP ManickaP modified the milestones: 6.0.0, Future Aug 10, 2021
@rzikm rzikm self-assigned this Apr 4, 2022
rzikm added a commit to rzikm/dotnet-runtime that referenced this issue Apr 4, 2022
Since dotnet#57156 enforced sending RequestCancelled HTTP response code when disposing the stream, we no longer need to check for the 0xffffffff error code.

Fixes dotnet#56194
@ghost ghost added the in-pr There is an active PR which will close this issue when it is merged label Apr 4, 2022
@ghost ghost removed the in-pr There is an active PR which will close this issue when it is merged label Apr 12, 2022
@ghost ghost locked as resolved and limited conversation to collaborators May 12, 2022
@karelz karelz modified the milestones: Future, 7.0.0 Jul 19, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-System.Net.Http disabled-test The test is disabled in source code against the issue os-linux Linux OS (any supported distro) test-run-core Test failures in .NET Core test runs
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants