Skip to content

Core tests never finish on SDK 11.0.100: a 20 MB results message from ParserResilienceTests stalls vstest.console #535

Closed

Description

@CaffeinatedCoder

Problem

On SDK 11.0.100, dotnet test over test/CodoMetis.ValueRanges.Tests does not end. Every test passes in the test host within seconds; then vstest.console runs at 100% CPU and prints nothing. The other five unit and convention projects pass.

Found on 2026-11-11 while moving main to the GA SDK (#532).

Measured (macOS arm64, the same built assembly each time)

Runner MSTest Result
SDK 11.0.100 4.5.2 stopped by hand after 10 minutes, no summary line
SDK 11.0.100 4.5.1 no summary line after 120 s
SDK 11.0.100-rc.2.26504.105 (rollForward: disable) 4.5.2 Passed: 1399, 8 s

So it is the runner in the GA SDK, not the MSTest update and not the 11.0.0 runtime.

With --diag: the test host sends 51 TestExecution.StatsChange messages and the runner logs 49 as handled. Its last line is NotifyDataAvailable for the 50th, and it never logs again. That message is 20 MB. It holds the results of ParserResilienceTests' DynamicData rows, whose second argument is the hostile text itself: a million characters per row, repeated in the test case's display name and properties.

Why it matters now

global.json on main says rollForward: latestFeature, so a machine or a CI job that installs the newest 11.0.1xx SDK gets this runner today, whatever version the file names.

Change

The rows of ParserResilienceTests carry only the name, and each test builds its text from it. No megabyte string is a test argument any more.

release/10.x builds with SDK 10 and is not affected today. It will be when its build moves to the .NET 11 SDK (#534), so this change is cherry-picked there first.

Not done here: a minimal reproduction for microsoft/vstest. One test with a single DynamicData row of a few megabytes should show it.

Done when

dotnet test test/CodoMetis.ValueRanges.Tests ends on SDK 11.0.100 with every test passed, and the largest message in a --diag log is small.

Activity

  1. added this to the 11.0.0 milestone on Nov 11, 2026
  2. added
    testsAdds or changes tests only (oracles, harnesses); no library code
    area/releaseVersioning, changelogs, release wiring
    package/coreAffects CodoMetis.ValueRanges
    on Nov 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/releaseVersioning, changelogs, release wiringpackage/coreAffects CodoMetis.ValueRangestestsAdds or changes tests only (oracles, harnesses); no library code

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions