runtime: CLR crashing when running RemoteExecutor tests locally on Debug builds

Using the latest commit (007cbcff31127d0829ef674ee140ccdbf11b2645) on windows-x64, running:

.\build.cmd clr+libs -rc release
dotnet test src/libraries/System.Text.Json/tests/System.Text.Json.SourceGeneration.Tests/System.Text.Json.SourceGeneration.Roslyn4.4.Tests.csproj -f net8.0

Will fail with the following stacktrace:

The active test run was aborted. Reason: Test host process crashed : Fatal error. Internal CLR error. (0x80131506)
   at System.Runtime.Serialization.SerializationGuard.<ThrowIfDeserializationInProgress>g__ThrowIfDeserializationInProgress|0_0(System.Runtime.Serialization.SerializationInfo, System.String, Int32 ByRef)
   at System.Runtime.Serialization.SerializationGuard.ThrowIfDeserializationInProgress(System.String, Int32 ByRef)
   at System.Diagnostics.Process.Start()
   at System.Diagnostics.Process.Start(System.Diagnostics.ProcessStartInfo)
   at Microsoft.DotNet.RemoteExecutor.RemoteExecutor.Invoke(System.Reflection.MethodInfo, System.String[], Microsoft.DotNet.RemoteExecutor.RemoteInvokeOptions, Boolean)
   at Microsoft.DotNet.RemoteExecutor.RemoteExecutor.Invoke(System.Action, Microsoft.DotNet.RemoteExecutor.RemoteInvokeOptions)
   at System.Text.Json.SourceGeneration.Tests.JsonSerializerContextTests.JsonSerializerContext_GeneratedDefault_IsSingleton()
   at System.RuntimeMethodHandle.InvokeMethod(System.Object, Void**, System.Signature, Boolean)
   at System.Reflection.MethodBaseInvoker.InterpretedInvoke_Method(System.Object, IntPtr*)
   at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(System.Object, System.Reflection.BindingFlags)
   at System.Reflection.RuntimeMethodInfo.Invoke(System.Object, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object[], System.Globalization.CultureInfo)
   at System.Reflection.MethodBase.Invoke(System.Object, System.Object[])
   at Xunit.Sdk.TestInvoker`1[[System.__Canon, System.Private.CoreLib, Version=8.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].CallTestMethod(System.Object)

Which seems to be originating from this call in Process.Start:

https://github.com/dotnet/runtime/blob/af651f48d07c87c94e1225859e63e919719b687b/src/libraries/System.Diagnostics.Process/src/System/Diagnostics/Process.cs#L1280

This test has started failing on my local machine in the last few days, but strangely I don’t see it impacting CI. Thought I’d file an issue in case others are having the same problem.

About this issue

  • Original URL
  • State: closed
  • Created a year ago
  • Comments: 20 (20 by maintainers)

Most upvoted comments

Similar crash is happening now in dotnet/performance for (SDK) scenarios. Here or here is an example log.

It’s not reproing in https://github.com/dotnet/runtime/commit/ef900fa9561ee160f8cbfb4ee312a2e5e018b531, this probably started later. I’ll start a bisect but it while take a while…