Skip to content

Stryker crashes dotnet runtime with MTP and concurrent testing on MacOS #3812

Description

@richardwerkman

Describe the bug
On MacOS dotnet crashes when concurrency is high during MTP testing with Stryker. On my machine it crashes consistently when running with MTP against Polly.Specs. This seems related to dotnet/runtime#132581

I've used Claude to analyze this and it seems unrelated to the current Stryker implementation. It is a genuine bug in the dotnet runtime that surfaces in this specific usecase.

There are a few workarounds available:

  • Setting the concurrency to 1 seems to stop the issue from happening. But that costs a lot of performance. I've tried with -c 2, -c 4, -c 7 and they all fail at some point, it just takes a while. With -c 20 the issue happens very quick.
  • Set env variable DOTNET_INTERNAL_ThreadSuspendInjection=0 before starting Stryker. This seems to prevent the issue from happening.
  • I have a working workaround in code that wraps Stryker in a second process on MacOS and restarts the process when it crashes. It also sets the DOTNET_INTERNAL_ThreadSuspendInjection variable. It seems to work, but is a weird piece of code to include in stryker...

Logs
There are no useful Stryker logs for this. It is the dotnet runtime that is crashing. The stryker logging just stops at a random point without any exception being thrown. Below I attached a Mac crash report.

dotnet-2026-08-28-114857.txt

Expected behavior
I expect to be able to use concurrency on MacOS.

Desktop (please complete the following information):

  • OS: MacOS 26.6.2
  • Type of project: Core
  • Framework Version: Core 6.0 (runtime 10.0)
  • Stryker Version: latest main

Additional context
Add any other context about the problem here.

Activity

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

    🐛 BugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions