Skip to content

Disable HTTP/3 tests on AzureLinux 3 VMs due to QUIC OOM#126605

Open
rzikm wants to merge 1 commit intodotnet:mainfrom
rzikm:fix/disable-http3-tests-azurelinux
Open

Disable HTTP/3 tests on AzureLinux 3 VMs due to QUIC OOM#126605
rzikm wants to merge 1 commit intodotnet:mainfrom
rzikm:fix/disable-http3-tests-azurelinux

Conversation

@rzikm
Copy link
Copy Markdown
Member

@rzikm rzikm commented Apr 7, 2026

HTTP/3 tests (TelemetryTest_Http30, and potentially other *_Http3 / *_Http30 classes) consistently fail on azurelinux.3.amd64.open.rt because the underlying MsQuic library fails with QUIC_STATUS_OUT_OF_MEMORY on that queue.

The QUIC tests were already disabled for the same reason in PRs #125665 and #125772 using the IsNotAzureLinux3VM condition on [ConditionalClass]. However, the HTTP/3 test classes use IsHttp3Supported from HttpClientHandlerTestBase as their gate, so they were not covered by the QUIC-side fix.

This PR adds the same IsNotAzureLinux3VM check to IsHttp3Supported, which will skip all HTTP/3 test classes on AzureLinux 3 VMs where QUIC is broken.

Relates to #123216

HTTP/3 tests on azurelinux.3.amd64.open.rt consistently fail because the
underlying MsQuic library fails with QUIC_STATUS_OUT_OF_MEMORY on that queue.
The QUIC tests were already disabled for the same reason in PRs dotnet#125665 and
dotnet#125772 using the IsNotAzureLinux3VM condition.

Apply the same condition to IsHttp3Supported so all HTTP/3 test classes are
also skipped on AzureLinux 3 VMs.

Relates to dotnet#123216

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings April 7, 2026 15:00
@dotnet-policy-service
Copy link
Copy Markdown
Contributor

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

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Disables HTTP/3 functional tests on AzureLinux 3 Helix VMs where MsQuic consistently fails with QUIC_STATUS_OUT_OF_MEMORY, by extending the existing HTTP/3 support gate used by *_Http3 / *_Http30 test classes.

Changes:

  • Updates HttpClientHandlerTestBase.IsHttp3Supported to additionally require IsNotAzureLinux3VM.
  • Introduces an IsNotAzureLinux3VM helper in the HTTP test base (mirroring the existing QUIC test gating approach).

Comment on lines +50 to +51
// https://github.com/dotnet/runtime/issues/123216
public static bool IsNotAzureLinux3VM => !PlatformDetection.IsAzureLinux || PlatformDetection.IsInContainer;
Copy link

Copilot AI Apr 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IsNotAzureLinux3VM is a bit misleading given its implementation: PlatformDetection.IsAzureLinux is defined as IsDistroAndVersionOrHigher("azurelinux", 3) (so this effectively means “not AzureLinux 3+” rather than strictly “not AzureLinux 3”), and the predicate also treats containers as allowed. Consider either (a) renaming this helper to match what it actually checks, or (b) changing the logic to detect AzureLinux version 3 specifically if that’s the intended scope. Also worth considering centralizing this helper in PlatformDetection to avoid duplicating the same predicate across test bases.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants