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

dotnet process silently crashes when debugger is attached #444

Open
jwilliamsonveeam opened this issue Sep 4, 2024 · 13 comments
Open

dotnet process silently crashes when debugger is attached #444

jwilliamsonveeam opened this issue Sep 4, 2024 · 13 comments
Labels
Needs more info Apply this label for the bugs where a some new information is needed from the customer.

Comments

@jwilliamsonveeam
Copy link

jwilliamsonveeam commented Sep 4, 2024

We have a certain part of our code where the dotnet console process always crashes when the debugger is attached in a docker-compose project. The code executes correctly when started without a debugger, on native linux, and native windows.

System Info
image

Dotnet info
C:\repos> dotnet --info

.NET SDK:
 Version:           8.0.401
 Commit:            811edcc344
 Workload version:  8.0.400-manifests.e85ccad0
 MSBuild version:   17.11.4+37eb419ad

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.22631
 OS Platform: Windows
 RID:         win-x64
 Base Path:   C:\Program Files\dotnet\sdk\8.0.401\

.NET workloads installed:
Configured to use loose manifests when installing new manifests.
 [aspire]
   Installation Source: VS 17.10.35201.131, VS 17.11.35125.118
   Manifest Version:    8.1.0/8.0.100
   Manifest Path:       C:\Program Files\dotnet\sdk-manifests\8.0.100\microsoft.net.sdk.aspire\8.1.0\WorkloadManifest.json
   Install Type:        FileBased


Host:
  Version:      8.0.8
  Architecture: x64
  Commit:       08338fcaa5

.NET SDKs installed:
  6.0.425 [C:\Program Files\dotnet\sdk]
  8.0.304 [C:\Program Files\dotnet\sdk]
  8.0.400-preview.0.24324.5 [C:\Program Files\dotnet\sdk]
  8.0.401 [C:\Program Files\dotnet\sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 6.0.33 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 7.0.20 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 8.0.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 8.0.8 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.33 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 7.0.20 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 8.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 8.0.8 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.WindowsDesktop.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 6.0.33 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 7.0.20 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 8.0.5 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 8.0.8 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

Other architectures found:
  x86   [C:\Program Files (x86)\dotnet]
    registered at [HKLM\SOFTWARE\dotnet\Setup\InstalledVersions\x86\InstallLocation]

Environment variables:
  Not set

global.json file:
  Not found

Using Rancher Desktop, but also saw the same issue on other machines running Docker Desktop:
Docker version 24.0.7, build afdd53b

Image: mcr.microsoft.com/dotnet/aspnet:8.0

Output from when service starts until dotnet exits:

Microsoft.Hosting.Lifetime: Information: Content root path: /app
Service started
Loaded '/usr/share/dotnet/shared/Microsoft.NETCore.App/8.0.8/Microsoft.CSharp.dll'. Symbols loaded.
Loaded '/usr/share/dotnet/shared/Microsoft.NETCore.App/8.0.8/System.Xml.XmlSerializer.dll'. Symbols loaded.
Loaded '/src/x64/Debug/net8.0/Microsoft.IO.RecyclableMemoryStream.dll'. 
Loaded 'Microsoft.GeneratedCode'. 
Loaded 'Microsoft.GeneratedCode'. 
The thread '[Thread Destroyed]' (40064) has exited with code 0 (0x0).
The thread '[Thread Destroyed]' (40728) has exited with code 0 (0x0).
Loaded '/usr/share/dotnet/shared/Microsoft.NETCore.App/8.0.8/System.Xml.XmlSerializer.dll'. Symbols loaded.
The program 'dotnet' has exited with code 0 (0x0).
The thread '.NET TP Worker' (325) has exited with code 0 (0x0).
The thread '.NET TP Worker' (339) has exited with code 0 (0x0).
The thread '.NET TP Worker' (345) has exited with code 0 (0x0).
The thread '.NET TP Wait' (338) has exited with code 0 (0x0).
The thread '.NET TP Wait' (350) has exited with code 0 (0x0).

There is nothing in my application's logs indicating any exception. The code always crashes in the same place unless I start removing objects. There is plenty of other code that runs before it crashes and it's always in one spot. Unfortunately it's proprietary code so I can't paste it here. I'm looking for other ways to dig into what might be going wrong.

I have the app set to generate crash dumps on sig term and this is what I get:

clrstack

OS Thread Id: 0x1 (0)
        Child SP               IP Call Site
00007FFEA2616A30 00007f17f3e36b57 [HelperMethodFrame_1OBJ: 00007ffea2616a30] System.Threading.Monitor.ObjWait(Int32, System.Object)
00007FFEA2616B60 00007F177485728E System.Threading.Monitor.Wait(System.Object, Int32) [/_/src/coreclr/System.Private.CoreLib/src/System/Threading/Monitor.CoreCLR.cs @ 156]
00007FFEA2616B70 00007F1774861F62 System.Threading.ManualResetEventSlim.Wait(Int32, System.Threading.CancellationToken) [/_/src/libraries/System.Private.CoreLib/src/System/Threading/ManualResetEventSlim.cs @ 561]
00007FFEA2616C00 00007F1774877CA1 System.Threading.Tasks.Task.SpinThenBlockingWait(Int32, System.Threading.CancellationToken) [/_/src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/Task.cs @ 3072]
00007FFEA2616C70 00007F1774877A68 System.Threading.Tasks.Task.InternalWaitCore(Int32, System.Threading.CancellationToken) [/_/src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/Task.cs @ 3007]
00007FFEA2616CC0 00007F17748C5A78 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task, System.Threading.Tasks.ConfigureAwaitOptions) [/_/src/libraries/System.Private.CoreLib/src/System/Runtime/CompilerServices/TaskAwaiter.cs @ 104]
00007FFEA2616CE0 00007F17749CD018 System.Runtime.CompilerServices.TaskAwaiter`1[[System.Int32, System.Private.CoreLib]].GetResult() [/_/src/libraries/System.Private.CoreLib/src/System/Runtime/CompilerServices/TaskAwaiter.cs @ 335]
00007FFEA2616CF0 00007F1775411957 DistrolessHelper.Program.<Main>(System.String[])

I turned on MS_VS_DOCKER_TOOLS_LOGGING_ENABLED=1 but the logs only contain messages about hot reload writing and reading to the pipe.

@NCarlsonMSFT
Copy link
Member

Does this code fail when running outside of a container (Debugging or otherwise)?
Does this code fail running in the single container experience or the WSL debugging experience
Can you get logs from the debugger using the steps here?
When running on Linux, what distro are you using?

@NCarlsonMSFT NCarlsonMSFT added the Needs more info Apply this label for the bugs where a some new information is needed from the customer. label Sep 4, 2024
@jwilliamsonveeam
Copy link
Author

Hi @NCarlsonMSFT !
This is the info for the container I'm using with VS docker-compose integration:
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
VERSION_CODENAME=bookworm
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

If I run the same code in a Linux container started outside of visual studio and then attach a debugger the process still crashes just with my process' actual name instead of dotnet. I also used the command: DebugAdapterHost.Logging /On /OutputWindow /Verbosity:debug, which is what I assume is what you meant by getting the debugger logs, and saw a lot of handled exceptions before the process exits:
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.BadImageFormatException' in System.Reflection.Metadata.dll
Exception thrown: 'System.IO.EndOfStreamException' in MyProgram.Communication.dll
Exception thrown: 'System.IO.EndOfStreamException' in System.Private.CoreLib.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Loaded '/usr/share/dotnet/shared/Microsoft.NETCore.App/8.0.8/System.Net.Quic.dll'. Symbols loaded.
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'Npgsql.PostgresException' in Npgsql.dll
Exception thrown: 'Npgsql.PostgresException' in Npgsql.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in Npgsql.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in Npgsql.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'NATS.Client.JetStream.NATSJetStreamException' in NATS.Client.dll
Exception thrown: 'NATS.Client.JetStream.NATSJetStreamException' in NATS.Client.dll
Exception thrown: 'Npgsql.PostgresException' in Npgsql.dll
Exception thrown: 'Npgsql.PostgresException' in Npgsql.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in Npgsql.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in Npgsql.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in Npgsql.dll
Exception thrown: 'Npgsql.PostgresException' in Npgsql.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in Npgsql.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'Npgsql.PostgresException' in Npgsql.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in Npgsql.dll
Exception thrown: 'Npgsql.PostgresException' in Npgsql.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in Npgsql.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in Npgsql.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'Npgsql.PostgresException' in System.Private.CoreLib.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
The thread 963 has exited with code 0 (0x0).
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.IO.IOException' in System.Net.Sockets.dll
Exception thrown: 'System.IO.IOException' in System.Private.CoreLib.dll
Exception thrown: 'System.IO.IOException' in System.Net.Security.dll
Exception thrown: 'System.IO.IOException' in System.Private.CoreLib.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'NATS.Client.JetStream.NATSJetStreamException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.NotSupportedException' in System.Net.Http.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'System.Net.Sockets.SocketException' in System.Net.Sockets.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll
The program '[731] MyProgram.SubComponent' has exited with code 0 (0x0).

But when I run the same code in the same standalone container without the debugger attached everything works as expected. I wonder if all these exceptions, could be causing some problem with the debugger? Do you still want me to try it with WSL debugging?

@jwilliamsonveeam
Copy link
Author

Microsoft Visual Studio Professional 2022
Version 17.10.6
VisualStudio.17.Release/17.10.6+35201.131
Microsoft .NET Framework
Version 4.8.09032

Installed Version: Professional

Visual C++ 2022 00476-80000-00000-AA511
Microsoft Visual C++ 2022

ADL Tools Service Provider 1.0
This package contains services used by Data Lake tools

ASA Service Provider 1.0

ASP.NET and Web Tools 17.10.344.38934
ASP.NET and Web Tools

Azure App Service Tools v3.0.0 17.10.344.38934
Azure App Service Tools v3.0.0

Azure Data Lake Tools for Visual Studio 2.6.5000.0
Microsoft Azure Data Lake Tools for Visual Studio

Azure Functions and Web Jobs Tools 17.10.344.38934
Azure Functions and Web Jobs Tools

Azure Stream Analytics Tools for Visual Studio 2.6.5000.0
Microsoft Azure Stream Analytics Tools for Visual Studio

C# Tools 4.10.0-3.24372.12+1c559959e2b25fea517c6f89d0c363698421865d
C# components used in the IDE. Depending on your project type and settings, a different version of the compiler may be used.

Common Azure Tools 1.10
Provides common services for use by Azure Mobile Services and Microsoft Azure Tools.

GitHub Copilot 0.2.894.62884
GitHub Copilot is an AI pair programmer that helps you write code faster and with less work.

Microsoft Azure Hive Query Language Service 2.6.5000.0
Language service for Hive query

Microsoft Azure Stream Analytics Language Service 2.6.5000.0
Language service for Azure Stream Analytics

Microsoft Azure Tools for Visual Studio 2.9
Support for Azure Cloud Services projects

Microsoft JVM Debugger 1.0
Provides support for connecting the Visual Studio debugger to JDWP compatible Java Virtual Machines

Node.js Tools 1.5.60329.1 Commit Hash:15fce86a17f9f33e5bd7ca7ccb9b216aff149252
Adds support for developing and debugging Node.js apps in Visual Studio

NpgsqlVSPackage Extension 1.0
NpgsqlVSPackage Visual Studio Extension Detailed Info

NuGet Package Manager 6.10.2
NuGet Package Manager in Visual Studio. For more information about NuGet, visit https://docs.nuget.org/

Razor (ASP.NET Core) 17.10.3.2427201+4f57d1de251e654812adde201c0265a8ca7ca31d
Provides languages services for ASP.NET Core Razor.

SQL Server Data Tools 17.10.178.1
Microsoft SQL Server Data Tools

Switch Startup Project 4.2.76
Provides a toolbar dropdown box to switch between startup projects.

Test Adapter for Boost.Test 1.0
Enables Visual Studio's testing tools with unit tests written for Boost.Test. The use terms and Third Party Notices are available in the extension installation directory.

Test Adapter for Google Test 1.0
Enables Visual Studio's testing tools with unit tests written for Google Test. The use terms and Third Party Notices are available in the extension installation directory.

ToolWindowHostedEditor 1.0
Hosting json editor into a tool window

TypeScript Tools 17.0.30327.2001
TypeScript Tools for Microsoft Visual Studio

Visual Basic Tools 4.10.0-3.24372.12+1c559959e2b25fea517c6f89d0c363698421865d
Visual Basic components used in the IDE. Depending on your project type and settings, a different version of the compiler may be used.

Visual F# Tools 17.10.0-beta.24228.1+dd749058c91585e9b5dae62b0f8df892429ee28f
Microsoft Visual F# Tools

Visual Studio IntelliCode 2.2
AI-assisted development for Visual Studio.

WiX Toolset Visual Studio Extension 1.0.0.22
WiX Toolset Visual Studio Extension version 1.0.0.22
Copyright (c) .NET Foundation and contributors. All rights reserved.

@WardenGnaw
Copy link
Member

I also used the command: DebugAdapterHost.Logging /On /OutputWindow /Verbosity:debug, which is what I assume is what you meant by getting the debugger logs

The logs should appear in the Debug Adapter Host Logs Pane.
You can find the selection by clicking on the dropdown.
image

If you can get us those logs, that will help us pinpoint the error you are experiencing.

@jwilliamsonveeam
Copy link
Author

Thanks @WardenGnaw

Here are the logs right as it is exiting:

11:14:31:693	 1> [DebugAdapter] <--   E (output): {"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/MetaDataMemoryUsage","data":{"VS.Diagnostics.Debugger.TotalBytes":43174576.0,"VS.Diagnostics.Debugger.AdditionalModuleCount":0,"VS.Diagnostics.Debugger.vsdbg.TargetCLRVersion":"8.0.824.36612","VS.Diagnostics.Debugger.TotalModuleCount":255,"VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Version":"17.11.10506.2 commit:bf05b28f55d97d1bcb78f61365a1efbfdf0eb128"}},"seq":1349}
11:14:31:694	 1> [DebugAdapter] <--   E (output): {"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/StackProvider/AsyncCallstacks","data":{"VS.Diagnostics.Debugger.StackProvider.NumBreaksWithWaitingOnAsyncOperationFrames":0,"VS.Diagnostics.Debugger.StackProvider.NumBreaksWithAsyncFrames":2,"VS.Diagnostics.Debugger.StackProvider.NumBreaksWithAsyncUserFrames":2,"VS.Diagnostics.Debugger.vsdbg.TargetCLRVersion":"8.0.824.36612","VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Version":"17.11.10506.2 commit:bf05b28f55d97d1bcb78f61365a1efbfdf0eb128"}},"seq":1350}
11:14:31:694	 1> [DebugAdapter] <--   E (output): {"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/vsdbg/ProcessExit","data":{"VS.Diagnostics.Debugger.vsdbg.TargetCLRVersion":"8.0.824.36612","VS.Diagnostics.Debugger.vsdbg.AdapterId":"coreclr","VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Version":"17.11.10506.2 commit:bf05b28f55d97d1bcb78f61365a1efbfdf0eb128"}},"seq":1351}
11:14:31:694	 1> [DebugAdapter] <--   E (exited): {"type":"event","event":"exited","body":{"exitCode":0},"seq":1352}
11:14:31:695	 1> State: Running => Exiting
11:14:31:695	 1> [DebugAdapter] <--   E (terminated): {"type":"event","event":"terminated","body":{},"seq":1353}
11:14:31:697	 1> [DebugAdapter] --> C (disconnect-40): {"type":"request","command":"disconnect","arguments":{},"seq":40}
11:14:31:699	 1> [DebugAdapter] <--   E (output): {"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/vsdbg/DebugCompleted","data":{"VS.Diagnostics.Debugger.vsdbg.DebugCompleted.BreakCounter":2,"VS.Diagnostics.Debugger.vsdbg.TargetCLRVersion":"8.0.824.36612","VS.Diagnostics.Debugger.vsdbg.AdapterId":"coreclr","VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Version":"17.11.10506.2 commit:bf05b28f55d97d1bcb78f61365a1efbfdf0eb128"}},"seq":1354}
11:14:31:699	 1> [DebugAdapter] <--   R (disconnect-40) [4 ms]: {"type":"response","request_seq":40,"success":true,"command":"disconnect","seq":1355}
11:14:31:699	 1> State: Exiting => Exited
11:14:31:700	 1> Sending VS event: IDebugProgramDestroyEvent2 (e147e9e3-6440-4073-a7b7-a65592c714b5)
11:14:31:705	 1> [DebugAdapter] --> C (removeBreakpoint-41): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":14},"seq":41}
11:14:31:705	 1> [DebugAdapter] --> C (removeBreakpoint-42): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":15},"seq":42}
11:14:31:707	 1> [DebugAdapter] --> C (removeBreakpoint-43): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":10},"seq":43}
11:14:31:707	 1> [DebugAdapter] --> C (removeBreakpoint-44): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":11},"seq":44}
11:14:31:707	 1> [DebugAdapter] --> C (removeBreakpoint-45): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":12},"seq":45}
11:14:31:707	 1> [DebugAdapter] --> C (removeBreakpoint-46): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":13},"seq":46}
11:14:31:707	 1> [DebugAdapter] --> C (removeBreakpoint-47): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":16},"seq":47}
11:14:31:707	 1> [DebugAdapter] --> C (removeBreakpoint-48): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":1},"seq":48}
11:14:31:708	 1> [DebugAdapter] --> C (removeBreakpoint-49): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":2},"seq":49}
11:14:31:708	 1> [DebugAdapter] --> C (removeBreakpoint-50): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":3},"seq":50}
11:14:31:708	 1> [DebugAdapter] --> C (removeBreakpoint-51): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":4},"seq":51}
11:14:31:708	 1> [DebugAdapter] --> C (removeBreakpoint-52): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":6},"seq":52}
11:14:31:996	 1> [DebugAdapter] --> C (removeBreakpoint-53): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":7},"seq":53}
11:14:31:996	 1> [DebugAdapter] --> C (removeBreakpoint-54): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":8},"seq":54}
11:14:31:996	 1> [DebugAdapter] --> C (removeBreakpoint-55): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":9},"seq":55}
11:14:31:996	 1> [DebugAdapter] --> C (removeBreakpoint-56): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":5},"seq":56}
11:14:31:996	 1> Cancelling outstanding request(s) with ID(s): 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56
11:14:31:996	 1> Debug adapter process exited.

I can go further back if you think it's hepful.

@jwilliamsonveeam
Copy link
Author

It's maybe worth mentioning that this code can be successfully debugged on running on windows without a container.

@WardenGnaw
Copy link
Member

Could you provide more lines above the exit event? I'm looking for what command or event (that's not a telemetry one) that is causing the process to exit

@jwilliamsonveeam
Copy link
Author

264","source":{"name":"ExecutionContext.cs","path":"//src/libraries/System.Private.CoreLib/src/System/Threading/ExecutionContext.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"5098771c4515b115fc5e694d8e79c3523cebd8fda4a73efa7dfa67220105a1c9"}],"vsSourceLinkInfo":{"url":"https://raw.githubusercontent.com/dotnet/runtime/08338fcaa5c9b9a8190abb99222fed12aaba956c/src/libraries/System.Private.CoreLib/src/System/Threading/ExecutionContext.cs","relativeFilePath":"src/libraries/System.Private.CoreLib/src/System/Threading/ExecutionContext.cs"}},"line":264,"column":17,"endLine":264,"endColumn":40,"instructionPointerReference":"0x00007F0F42FDE553","moduleId":1000},{"id":1030,"name":"System.Private.CoreLib.dll!System.Runtime.CompilerServices.AsyncTaskMethodBuilder<MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RepositoryConfig>.AsyncStateMachineBox<MyProgram.Subcomponent.Bar.Engine.Controllers.BarRepositoryDatabaseContext.d__4>.MoveNext(System.Threading.Thread threadPoolThread) Line 385","source":{"name":"AsyncTaskMethodBuilderT.cs","path":"//src/libraries/System.Private.CoreLib/src/System/Runtime/CompilerServices/AsyncTaskMethodBuilderT.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"e358d67bcd5815a50083706ec88d0b8489a9872915d46156ba24277cd21bd662"}],"vsSourceLinkInfo":{"url":"https://raw.githubusercontent.com/dotnet/runtime/08338fcaa5c9b9a8190abb99222fed12aaba956c/src/libraries/System.Private.CoreLib/src/System/Runtime/CompilerServices/AsyncTaskMethodBuilderT.cs","relativeFilePath":"src/libraries/System.Private.CoreLib/src/System/Runtime/CompilerServices/AsyncTaskMethodBuilderT.cs"}},"line":385,"column":13,"endLine":385,"endColumn":14,"instructionPointerReference":"0x00007F0F42FC1227","moduleId":1000},{"id":1031,"name":"System.Private.CoreLib.dll!System.Threading.ThreadPoolWorkQueue.Dispatch() Line 989","source":{"name":"ThreadPoolWorkQueue.cs","path":"//src/libraries/System.Private.CoreLib/src/System/Threading/ThreadPoolWorkQueue.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"c2320ecffb7fed91e30517804e4bb8bc2f708aec8c6b19e8402c3235be48124e"}],"vsSourceLinkInfo":{"url":"https://raw.githubusercontent.com/dotnet/runtime/08338fcaa5c9b9a8190abb99222fed12aaba956c/src/libraries/System.Private.CoreLib/src/System/Threading/ThreadPoolWorkQueue.cs","relativeFilePath":"src/libraries/System.Private.CoreLib/src/System/Threading/ThreadPoolWorkQueue.cs"}},"line":989,"column":21,"endLine":989,"endColumn":63,"instructionPointerReference":"0x00007F0F42B65DB2","moduleId":1000},{"id":1032,"name":"System.Private.CoreLib.dll!System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart() Line 102","source":{"name":"PortableThreadPool.WorkerThread.NonBrowser.cs","path":"//src/libraries/System.Private.CoreLib/src/System/Threading/PortableThreadPool.WorkerThread.NonBrowser.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"703b1990b34da9aa45d508433913144bfa7f548c5581d8bcf93b4cad2f41adbd"}],"vsSourceLinkInfo":{"url":"https://raw.githubusercontent.com/dotnet/runtime/08338fcaa5c9b9a8190abb99222fed12aaba956c/src/libraries/System.Private.CoreLib/src/System/Threading/PortableThreadPool.WorkerThread.NonBrowser.cs","relativeFilePath":"src/libraries/System.Private.CoreLib/src/System/Threading/PortableThreadPool.WorkerThread.NonBrowser.cs"}},"line":102,"column":25,"endLine":102,"endColumn":72,"instructionPointerReference":"0x00007F0F372B20EB","moduleId":1000},{"id":1033,"name":"[Native to Managed Transition]","line":0,"column":0,"presentationHint":"label"},{"id":1034,"name":"[Async Call Stack]","line":0,"column":0,"presentationHint":"label"},{"id":1035,"name":"[Async] MyProgram.Subcomponent.Bar.dll!MyProgram.Subcomponent.Bar.Engine.Controllers.BarRepositoryController.CreateRepositoryAsync(MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RepositoryConfig config, MyProgram.Subcomponent.Interfaces.DataContracts.Repository.CreateBackupRepositoryOptions options, System.Threading.CancellationToken cancellationToken) Line 82","source":{"name":"BarRepositoryController.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Bar\Engine\Controllers\BarRepositoryController.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"77fcf19553c223ba46736b730dc8660e17b4586eeb898e3bcd3bad172cf88886"}]},"line":82,"column":13,"endLine":83,"endColumn":63,"instructionPointerReference":"0x00007F0F4373898B","moduleId":1001}],"totalFrames":36},"seq":1153}
15:51:18:808 4> [DebugAdapter] --> C (stackTrace-35): {"type":"request","command":"stackTrace","arguments":{"threadId":686,"startFrame":0,"levels":1,"format":{"module":false,"includeAll":true}},"seq":35}
15:51:18:808 4> [DebugAdapter] <-- R (stackTrace-35) [1 ms]: {"type":"response","request_seq":35,"success":true,"command":"stackTrace","body":{"stackFrames":[{"id":1000,"name":"MyProgram.Subcomponent.Repository.ObjectStorage.FooepositoryFactory.CreateCore","source":{"name":"FooepositoryFactory.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.ObjectStorage\FooepositoryFactory.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"6893de8a8356a4e0d1c522949bd654527ccdbabf04b04ec027a8e1275655323c"}]},"line":73,"column":13,"endLine":78,"endColumn":51,"instructionPointerReference":"0x00007F0F444BC4AE","moduleId":1067}]},"seq":1154}
15:51:18:808 4> [DebugAdapter] --> C (stackTrace-36): {"type":"request","command":"stackTrace","arguments":{"threadId":686,"startFrame":0,"levels":1,"format":{"module":false,"includeAll":true,"hex":true}},"seq":36}
15:51:18:808 4> [DebugAdapter] <-- R (stackTrace-36) [1 ms]: {"type":"response","request_seq":36,"success":true,"command":"stackTrace","body":{"stackFrames":[{"id":1000,"name":"MyProgram.Subcomponent.Repository.ObjectStorage.FooepositoryFactory.CreateCore","source":{"name":"FooepositoryFactory.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.ObjectStorage\FooepositoryFactory.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"6893de8a8356a4e0d1c522949bd654527ccdbabf04b04ec027a8e1275655323c"}]},"line":73,"column":13,"endLine":78,"endColumn":51,"instructionPointerReference":"0x00007F0F444BC4AE","moduleId":1067}]},"seq":1155}
15:51:18:921 2> [DebugAdapter] --> C (vsCustomMessage-46): {"type":"request","command":"vsCustomMessage","arguments":{"message":{"sourceId":"{cefcfc81-d24b-4965-b409-c9bdb022cd05}","messageCode":3}},"seq":46}
15:51:19:557 4> State: Paused => Resuming
15:51:19:558 4> [DebugAdapter] --> C (continue-37): {"type":"request","command":"continue","arguments":{"threadId":686},"seq":37}
15:51:19:560 4> [DebugAdapter] <-- E (continued): {"type":"event","event":"continued","body":{"threadId":686,"allThreadsContinued":true},"seq":1156}
15:51:19:560 4> [DebugAdapter] <-- R (continue-37) [3 ms]: {"type":"response","request_seq":37,"success":true,"command":"continue","body":{"allThreadsContinued":true},"seq":1157}
15:51:19:560 4> State: Resuming => Running
15:51:19:563 4> [DebugAdapter] <-- E (output): {"type":"event","event":"output","body":{"category":"exception","output":"Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll\n"},"seq":1158}
15:51:19:563 4> Sending VS event: IDebugMessageEvent2 (3bdb28cf-dbd2-4d24-af03-01072b67eb9e)
15:51:19:697 4> [DebugAdapter] <-- E (output): {"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/MetaDataMemoryUsage","data":{"VS.Diagnostics.Debugger.TotalBytes":43327740.0,"VS.Diagnostics.Debugger.AdditionalModuleCount":0,"VS.Diagnostics.Debugger.vsdbg.TargetCLRVersion":"8.0.824.36612","VS.Diagnostics.Debugger.TotalModuleCount":259,"VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Version":"17.11.10506.2 commit:bf05b28f55d97d1bcb78f61365a1efbfdf0eb128"}},"seq":1159}
15:51:19:699 4> [DebugAdapter] <-- E (output): {"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/StackProvider/AsyncCallstacks","data":{"VS.Diagnostics.Debugger.StackProvider.NumBreaksWithWaitingOnAsyncOperationFrames":0,"VS.Diagnostics.Debugger.StackProvider.NumBreaksWithAsyncFrames":2,"VS.Diagnostics.Debugger.StackProvider.NumBreaksWithAsyncUserFrames":2,"VS.Diagnostics.Debugger.vsdbg.TargetCLRVersion":"8.0.824.36612","VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Version":"17.11.10506.2 commit:bf05b28f55d97d1bcb78f61365a1efbfdf0eb128"}},"seq":1160}
15:51:19:699 4> [DebugAdapter] <-- E (output): {"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/vsdbg/ProcessExit","data":{"VS.Diagnostics.Debugger.vsdbg.TargetCLRVersion":"8.0.824.36612","VS.Diagnostics.Debugger.vsdbg.AdapterId":"coreclr","VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Version":"17.11.10506.2 commit:bf05b28f55d97d1bcb78f61365a1efbfdf0eb128"}},"seq":1161}
15:51:19:699 4> [DebugAdapter] <-- E (exited): {"type":"event","event":"exited","body":{"exitCode":0},"seq":1162}
15:51:19:714 4> State: Running => Exiting
15:51:19:715 4> [DebugAdapter] <-- E (terminated): {"type":"event","event":"terminated","body":{},"seq":1163}
15:51:19:715 4> [DebugAdapter] --> C (disconnect-38): {"type":"request","command":"disconnect","arguments":{},"seq":38}
15:51:19:721 4> [DebugAdapter] <-- E (output): {"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/vsdbg/DebugCompleted","data":{"VS.Diagnostics.Debugger.vsdbg.DebugCompleted.BreakCounter":2,"VS.Diagnostics.Debugger.vsdbg.TargetCLRVersion":"8.0.824.36612","VS.Diagnostics.Debugger.vsdbg.AdapterId":"coreclr","VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Version":"17.11.10506.2 commit:bf05b28f55d97d1bcb78f61365a1efbfdf0eb128"}},"seq":1164}
15:51:19:721 4> [DebugAdapter] <-- R (disconnect-38) [4 ms]: {"type":"response","request_seq":38,"success":true,"command":"disconnect","seq":1165}
15:51:19:722 4> State: Exiting => Exited
15:51:19:722 4> Sending VS event: IDebugProgramDestroyEvent2 (e147e9e3-6440-4073-a7b7-a65592c714b5)
15:51:19:722 4> [DebugAdapter] --> C (removeBreakpoint-39): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":14},"seq":39}
15:51:19:722 4> [DebugAdapter] --> C (removeBreakpoint-40): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":15},"seq":40}
15:51:19:722 4> [DebugAdapter] --> C (removeBreakpoint-41): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":10},"seq":41}
15:51:19:722 4> [DebugAdapter] --> C (removeBreakpoint-42): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":11},"seq":42}
15:51:19:722 4> [DebugAdapter] --> C (removeBreakpoint-43): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":12},"seq":43}
15:51:19:722 4> [DebugAdapter] --> C (removeBreakpoint-44): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":13},"seq":44}
15:51:19:722 4> [DebugAdapter] --> C (removeBreakpoint-45): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":16},"seq":45}
15:51:19:722 4> [DebugAdapter] --> C (removeBreakpoint-46): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":1},"seq":46}
15:51:19:722 4> [DebugAdapter] --> C (removeBreakpoint-47): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":2},"seq":47}
15:51:19:723 4> [DebugAdapter] --> C (removeBreakpoint-48): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":3},"seq":48}
15:51:19:723 4> [DebugAdapter] --> C (removeBreakpoint-49): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":4},"seq":49}
15:51:19:723 4> [DebugAdapter] --> C (removeBreakpoint-50): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":6},"seq":50}
15:51:19:723 4> [DebugAdapter] --> C (removeBreakpoint-51): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":7},"seq":51}
15:51:19:723 4> [DebugAdapter] --> C (removeBreakpoint-52): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":8},"seq":52}
15:51:19:723 4> [DebugAdapter] --> C (removeBreakpoint-53): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":9},"seq":53}
15:51:19:723 4> [DebugAdapter] --> C (removeBreakpoint-54): {"type":"request","command":"removeBreakpoint","arguments":{"type":"source","id":5},"seq":54}
15:51:19:823 4> Cancelling outstanding request(s) with ID(s): 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54
15:51:19:824 4> Debug adapter process exited.
15:51:19:923 2> WARNING: Request 'vsCustomMessage-46' has not received a response within 1000 ms!

@jwilliamsonveeam
Copy link
Author

I hit the char limit so here is some more before that. @WardenGnaw
15:51:18:717 4> State: Running => Pausing
15:51:18:718 4> [DebugAdapter] --> C (threads-33): {"type":"request","command":"threads","arguments":{},"seq":33}
15:51:18:720 4> [DebugAdapter] <-- R (threads-33) [2 ms]: {"type":"response","request_seq":33,"success":true,"command":"threads","body":{"threads":[{"id":630,"name":""},{"id":668,"name":".NET TP Gate"},{"id":670,"name":".NET Sockets"},{"id":679,"name":"Log archiving"},{"id":681,"name":".NET File Watcher"},{"id":682,"name":"Console logger queue processing thread"},{"id":684,"name":".NET Timer"},{"id":686,"name":".NET TP Worker"},{"id":698,"name":"SchedulingThread"},{"id":683,"name":""},{"id":702,"name":".NET Long Running Task"},{"id":704,"name":"Reader-vbo_proxy_client"},{"id":705,"name":"Flusher-vbo_proxy_client"},{"id":706,"name":"SchedulingThread"},{"id":707,"name":"BarToBarEventQueueThread"},{"id":708,"name":"ObjectStorageLockUpdaterThread"},{"id":709,"name":"SchedulingThread"},{"id":710,"name":"SchedulingThread"},{"id":711,"name":"SchedulingThread"},{"id":712,"name":"FreeSpaceMonitorThread"},{"id":713,"name":"HeartbeatThread"},{"id":714,"name":"StatusThread"},{"id":715,"name":".NET Long Running Task"},{"id":716,"name":"VCFThreadPoolWorker#1"},{"id":717,"name":"VCFThreadPoolWorker#2"},{"id":718,"name":"VCFThreadPoolWorker#3"},{"id":719,"name":"VCFThreadPoolWorker#4"},{"id":720,"name":"VCFThreadPoolWorker#5"},{"id":721,"name":"VCFThreadPoolWorker#6"},{"id":722,"name":"VCFThreadPoolWorker#7"},{"id":723,"name":"VCFThreadPoolWorker#8"},{"id":724,"name":"VCFThreadPoolWorker#9"},{"id":725,"name":"VCFThreadPoolWorker#10"},{"id":726,"name":"VCFThreadPoolWorker#11"},{"id":727,"name":"VCFThreadPoolWorker#12"},{"id":728,"name":"VCFThreadPoolWorker#13"},{"id":729,"name":"VCFThreadPoolWorker#14"},{"id":730,"name":"VCFThreadPoolWorker#15"},{"id":731,"name":"VCFThreadPoolWorker#16"},{"id":732,"name":"VCFThreadPoolWorker#17"},{"id":733,"name":"VCFThreadPoolWorker#18"},{"id":734,"name":"VCFThreadPoolWorker#19"},{"id":735,"name":"VCFThreadPoolWorker#20"},{"id":736,"name":"VCFThreadPoolWorker#21"},{"id":737,"name":"VCFThreadPoolWorker#22"},{"id":738,"name":"VCFThreadPoolWorker#23"},{"id":739,"name":"VCFThreadPoolWorker#24"},{"id":740,"name":"VCFThreadPoolWorker#25"},{"id":741,"name":"VCFThreadPoolWorker#26"},{"id":742,"name":"VCFThreadPoolWorker#27"},{"id":743,"name":"VCFThreadPoolWorker#28"},{"id":744,"name":"VCFThreadPoolWorker#29"},{"id":745,"name":"VCFThreadPoolWorker#30"},{"id":746,"name":"VCFThreadPoolWorker#31"},{"id":747,"name":"VCFThreadPoolWorker#32"},{"id":748,"name":"RepositoryRescannerThread"},{"id":749,"name":".NET Long Running Task"},{"id":750,"name":".NET Long Running Task"},{"id":751,"name":".NET Long Running Task"},{"id":753,"name":".NET Long Running Task"},{"id":754,"name":".NET Long Running Task"},{"id":755,"name":".NET Long Running Task"},{"id":756,"name":".NET Long Running Task"},{"id":757,"name":".NET Long Running Task"},{"id":758,"name":".NET Long Running Task"},{"id":759,"name":".NET Long Running Task"},{"id":760,"name":"SchedulingThread"},{"id":761,"name":".NET Long Running Task"},{"id":763,"name":".NET Long Running Task"},{"id":766,"name":".NET Long Running Task"},{"id":767,"name":".NET Long Running Task"},{"id":768,"name":".NET Long Running Task"},{"id":769,"name":".NET Long Running Task"},{"id":770,"name":".NET Long Running Task"},{"id":771,"name":".NET Long Running Task"},{"id":772,"name":".NET Long Running Task"},{"id":773,"name":".NET Long Running Task"},{"id":775,"name":".NET TP Worker"},{"id":779,"name":".NET TP Worker"},{"id":781,"name":"SchedulingThread"},{"id":782,"name":"SchedulingThread"},{"id":659,"name":""},{"id":784,"name":"SchedulingThread"},{"id":790,"name":".NET TP Worker"},{"id":791,"name":"SchedulingThread"},{"id":792,"name":".NET TP Worker"},{"id":793,"name":".NET TP Worker"},{"id":794,"name":".NET TP Worker"},{"id":795,"name":".NET TP Worker"}]},"seq":1152}
15:51:18:720 4> Sending VS event: IDebugBreakpointEvent2 (501c1e21-c557-48b8-ba30-a1eab0bc4a74)
15:51:18:807 4> State: Pausing => Paused
15:51:18:808 2> [DebugAdapter] --> C (pause-45): {"type":"request","command":"pause","arguments":{"threadId":0},"seq":45}
15:51:18:808 2> [DebugAdapter] <-- E (output): {"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/vsdbg/Pause","data":{"VS.Diagnostics.Debugger.vsdbg.TargetCLRVersion":"8.0.824.36612","VS.Diagnostics.Debugger.vsdbg.AdapterId":"coreclr","VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.vsdbg.Pause.Duration":0,"VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Version":"17.11.10506.2 commit:bf05b28f55d97d1bcb78f61365a1efbfdf0eb128"}},"seq":1689}
15:51:18:808 2> [DebugAdapter] <-- R (pause-45) [1 ms]: {"type":"response","request_seq":45,"success":true,"command":"pause","seq":1690}
15:51:18:808 4> [DebugAdapter] --> C (stackTrace-34): {"type":"request","command":"stackTrace","arguments":{"threadId":686,"startFrame":0,"levels":1000,"format":{"parameters":true,"parameterTypes":true,"parameterNames":true,"line":true,"module":true,"includeAll":true}},"seq":34}
15:51:18:808 4> [DebugAdapter] <-- R (stackTrace-34) [16 ms]: {"type":"response","request_seq":34,"success":true,"command":"stackTrace","body":{"stackFrames":[{"id":1000,"name":"MyProgram.Subcomponent.Repository.ObjectStorage.dll!MyProgram.Subcomponent.Repository.ObjectStorage.FooepositoryFactory.CreateCore(MyProgram.Subcomponent.Repository.ObjectStorage.Explore.IObjectStorageRepositoryLock objectStorageRepositoryLock, double consumptionUpdatePeriod, MyProgram.Subcomponent.Repository.ObjectStorage.Archive.Storage.KeyDataEntityStorage.KeyDataEntityStorageLockPool keyDataEntityStorageLockPool) Line 73","source":{"name":"FooepositoryFactory.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.ObjectStorage\FooepositoryFactory.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"6893de8a8356a4e0d1c522949bd654527ccdbabf04b04ec027a8e1275655323c"}]},"line":73,"column":13,"endLine":78,"endColumn":51,"instructionPointerReference":"0x00007F0F444BC4AE","moduleId":1067},{"id":1001,"name":"MyProgram.Subcomponent.Repository.Bar.dll!MyProgram.Subcomponent.Repository.Bar.Fooepository.ArchiveDependenciesBuilder.CreateRepositoryCore(MyProgram.Subcomponent.Repository.ObjectStorage.Explore.IObjectStorageRepositoryLock objectStorageRepositoryLock, double consumptionUpdatePeriod) Line 47","source":{"name":"ArchiveDependenciesBuilder.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.Bar\Fooepository\ArchiveDependenciesBuilder.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"fdcd3e8c5a4411e3f9b92d80902f23c5845d5e46bb210734a442acf223a2ccb0"}]},"line":47,"column":9,"endLine":50,"endColumn":28,"instructionPointerReference":"0x00007F0F444BB9FB","moduleId":1068},{"id":1002,"name":"MyProgram.Subcomponent.Repository.Bar.dll!MyProgram.Subcomponent.Repository.Bar.Fooepository.FooepositoryCoreContextFactory.CreateRepositoryCore(MyProgram.Subcomponent.Repository.Repositories.IRepositoryContextScope repositoryContextScope, MyProgram.Subcomponent.Repository.Bar.Lock.IConsistencyRepositoryLock repositoryLock) Line 36","source":{"name":"FooepositoryCoreContextFactory.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.Bar\Fooepository\FooepositoryCoreContextFactory.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"f9cfa42064d8276e72157448929c4c8c8b151e4b8e7f4a01e1b9015fd83cc722"}]},"line":36,"column":9,"endLine":36,"endColumn":98,"instructionPointerReference":"0x00007F0F444B7EFF","moduleId":1068},{"id":1003,"name":"MyProgram.Subcomponent.Repository.Bar.dll!MyProgram.Subcomponent.Repository.Bar.CloudRepositoryCoreContextFactory<MyProgram.Subcomponent.Repository.ObjectStorage.Archive.IFooepositoryCore>.CreateCommonInternal(Microsoft.Extensions.DependencyInjection.AsyncServiceScope scope, System.Func<MyProgram.Subcomponent.Repository.Bar.Lock.IObjectStorageLockFactory, MyProgram.Subcomponent.Repository.ObjectStorage.IRepositoryOutdatedVerifier, MyProgram.Subcomponent.Repository.Bar.Lock.IConsistencyRepositoryLock> createLock, System.Action<MyProgram.Subcomponent.Repository.Bar.ObjectStorageRepositoryConfigUpdater> updateConfigAction) Line 72","source":{"name":"CloudRepositoryCoreContextFactory.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.Bar\CloudRepositoryCoreContextFactory.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"caebd936a096540548a75d4864060c2ea99554bf79bf58588123c0f55e5aa699"}]},"line":72,"column":9,"endLine":72,"endColumn":108,"instructionPointerReference":"0x00007F0F43748755","moduleId":1068},{"id":1004,"name":"MyProgram.Subcomponent.Repository.Bar.dll!MyProgram.Subcomponent.Repository.Bar.CloudRepositoryCoreContextFactory<MyProgram.Subcomponent.Repository.ObjectStorage.Archive.IFooepositoryCore>.CreateCommon.AnonymousMethod__0(Microsoft.Extensions.DependencyInjection.AsyncServiceScope scope) Line 53","source":{"name":"CloudRepositoryCoreContextFactory.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.Bar\CloudRepositoryCoreContextFactory.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"caebd936a096540548a75d4864060c2ea99554bf79bf58588123c0f55e5aa699"}]},"line":53,"column":22,"endLine":53,"endColumn":81,"instructionPointerReference":"0x00007F0F43748467","moduleId":1068},{"id":1005,"name":"MyProgram.Subcomponent.Repository.Bar.dll!MyProgram.Subcomponent.Repository.Bar.RepositoryScopeExecutor.Execute<MyProgram.Subcomponent.Repository.Bar.CreateRepositoryCoreContextResult<MyProgram.Subcomponent.Repository.ObjectStorage.Archive.IFooepositoryCore>>(System.IServiceProvider serviceProvider, MyProgram.Subcomponent.Repository.Repositories.IRepositoryConfigProvider repositoryConfigProvider, MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RepositoryType repositoryContextType, System.Func<Microsoft.Extensions.DependencyInjection.AsyncServiceScope, MyProgram.Subcomponent.Repository.Bar.CreateRepositoryCoreContextResult<MyProgram.Subcomponent.Repository.ObjectStorage.Archive.IFooepositoryCore>> execute) Line 26","source":{"name":"RepositoryScopeExecutor.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.Bar\RepositoryScopeExecutor.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"7b2759907cd6655d569b0c28d9ca425902b16e309625f2907b47991484bf5cc3"}]},"line":26,"column":13,"endLine":26,"endColumn":35,"instructionPointerReference":"0x00007F0F4374816C","moduleId":1068},{"id":1006,"name":"MyProgram.Subcomponent.Repository.Bar.dll!MyProgram.Subcomponent.Repository.Bar.CloudRepositoryCoreContextFactory<MyProgram.Subcomponent.Repository.ObjectStorage.Archive.IFooepositoryCore>.CreateCommon(MyProgram.Subcomponent.Repository.Repositories.IRepositoryConfigProvider repositoryConfigProvider, System.Func<MyProgram.Subcomponent.Repository.Bar.Lock.IObjectStorageLockFactory, MyProgram.Subcomponent.Repository.ObjectStorage.IRepositoryOutdatedVerifier, MyProgram.Subcomponent.Repository.Bar.Lock.IConsistencyRepositoryLock> createLock, System.Action<MyProgram.Subcomponent.Repository.Bar.ObjectStorageRepositoryConfigUpdater> updateConfigAction) Line 51","source":{"name":"CloudRepositoryCoreContextFactory.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.Bar\CloudRepositoryCoreContextFactory.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"caebd936a096540548a75d4864060c2ea99554bf79bf58588123c0f55e5aa699"}]},"line":51,"column":9,"endLine":53,"endColumn":83,"instructionPointerReference":"0x00007F0F4374801D","moduleId":1068},{"id":1007,"name":"MyProgram.Subcomponent.Repository.Bar.dll!MyProgram.Subcomponent.Repository.Bar.CloudRepositoryCoreContextFactory<MyProgram.Subcomponent.Repository.ObjectStorage.Archive.IFooepositoryCore>.CreateRepositoryCore(MyProgram.Subcomponent.Repository.Repositories.IRepositoryConfigProvider repositoryConfigProvider, MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RetentionType? retentionType, MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RetentionPeriodType? retentionPeriodType, int? period, bool overrideOwnership) Line 33","source":{"name":"CloudRepositoryCoreContextFactory.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.Bar\CloudRepositoryCoreContextFactory.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"caebd936a096540548a75d4864060c2ea99554bf79bf58588123c0f55e5aa699"}]},"line":33,"column":9,"endLine":34,"endColumn":100,"instructionPointerReference":"0x00007F0F43747DA5","moduleId":1068},{"id":1008,"name":"MyProgram.Subcomponent.Repository.Bar.dll!MyProgram.Subcomponent.Repository.Bar.HybridRepositoryContextFactory.CreateRepositoryContext.AnonymousMethod__1() Line 53","source":{"name":"HybridRepositoryContextFactory.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.Bar\HybridRepositoryContextFactory.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"82a1eca55d84dce3fafb4b35dc90b48c7a077536d7be051c3859a4886cb115da"}]},"line":53,"column":19,"endLine":58,"endColumn":35,"instructionPointerReference":"0x00007F0F43F58C41","moduleId":1068},{"id":1009,"name":"MyProgram.Subcomponent.Repository.Bar.dll!MyProgram.Subcomponent.Repository.Bar.HybridRepositoryContextFactory.CreateRepositoryContext(MyProgram.Subcomponent.Repository.Repositories.IRepositoryConfigProvider repositoryConfigProvider, System.Func<MyProgram.Subcomponent.Repository.Bar.CreateRepositoryCoreContextResult<MyProgram.Subcomponent.Repository.ObjectStorage.IObjectStorageRepositoryCore>> createBackupDependencies, System.Func<MyProgram.Subcomponent.Repository.Bar.CreateRepositoryCoreContextResult<MyProgram.Subcomponent.Repository.ObjectStorage.Archive.IFooepositoryCore>> createCopyDependencies) Line 75","source":{"name":"HybridRepositoryContextFactory.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.Bar\HybridRepositoryContextFactory.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"82a1eca55d84dce3fafb4b35dc90b48c7a077536d7be051c3859a4886cb115da"}]},"line":75,"column":9,"endLine":75,"endColumn":70,"instructionPointerReference":"0x00007F0F437475D4","moduleId":1068},{"id":1010,"name":"MyProgram.Subcomponent.Repository.Bar.dll!MyProgram.Subcomponent.Repository.Bar.HybridRepositoryContextFactory.CreateRepositoryContext(MyProgram.Subcomponent.Repository.Repositories.IRepositoryConfigProvider repositoryConfigProvider, MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RetentionType? retentionType, MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RetentionPeriodType? retentionPeriodType, int? period, bool overrideOwnership) Line 46","source":{"name":"HybridRepositoryContextFactory.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.Bar\HybridRepositoryContextFactory.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"82a1eca55d84dce3fafb4b35dc90b48c7a077536d7be051c3859a4886cb115da"}]},"line":46,"column":9,"endLine":58,"endColumn":37,"instructionPointerReference":"0x00007F0F4374743A","moduleId":1068},{"id":1011,"name":"MyProgram.Subcomponent.Repository.Bar.dll!MyProgram.Subcomponent.Repository.Bar.RepositoryContextFactory.CreateRepositoryContext(MyProgram.Subcomponent.Repository.Repositories.IRepositoryConfigProvider repositoryConfigProvider, MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RetentionType? retentionType, MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RetentionPeriodType? retentionPeriodType, int? period, bool overrideOwnership) Line 37","source":{"name":"RepositoryContextFactory.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.Bar\RepositoryContextFactory.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"bf4b93bfb338c2785c3a769ebda3c13fadf3a35af1d47f34eddd07e624915109"}]},"line":37,"column":9,"endLine":38,"endColumn":127,"instructionPointerReference":"0x00007F0F437470EB","moduleId":1068},{"id":1012,"name":"MyProgram.Subcomponent.Repository.Bar.dll!MyProgram.Subcomponent.Repository.Bar.RepositoryContextBuilder.CreateRepositoryContext.AnonymousMethod__0(MyProgram.Subcomponent.Repository.Bar.IRepositoryContextFactory factory) Line 40","source":{"name":"RepositoryContextBuilder.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.Bar\RepositoryContextBuilder.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"c0767a384e5f85678c7e7414eb80155eb513f97f634113c74e2b47e0271d04a4"}]},"line":40,"column":24,"endLine":40,"endColumn":144,"instructionPointerReference":"0x00007F0F43747040","moduleId":1068},{"id":1013,"name":"MyProgram.Subcomponent.Repository.Bar.dll!MyProgram.Subcomponent.Repository.Bar.RepositoryContextBuilder.CreateAndInitialize.__CreateAndInitializeWithExceptionHandling|0(out MyProgram.Subcomponent.Repository.Bar.IRepositoryContextDisposable context) Line 65","source":{"name":"RepositoryContextBuilder.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.Bar\RepositoryContextBuilder.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"c0767a384e5f85678c7e7414eb80155eb513f97f634113c74e2b47e0271d04a4"}]},"line":65,"column":17,"endLine":65,"endColumn":61,"instructionPointerReference":"0x00007F0F43746EE3","moduleId":1068},{"id":1014,"name":"MyProgram.Core.v12.2.0.dll!MyProgram.Core.Memory.Disposable.Create<System.__Canon>(MyProgram.Core.Memory.Disposable.CreateAction<System.__Canon> createInstance)","line":0,"column":0,"instructionPointerReference":"0x00007F0F43180AA3","moduleId":1019},{"id":1015,"name":"MyProgram.Subcomponent.Repository.Bar.dll!MyProgram.Subcomponent.Repository.Bar.RepositoryContextBuilder.CreateAndInitialize(System.Func<MyProgram.Subcomponent.Repository.Bar.IRepositoryContextFactory, MyProgram.Subcomponent.Repository.Bar.IRepositoryContextDisposable> create, System.Threading.CancellationToken cancellationToken) Line 59","source":{"name":"RepositoryContextBuilder.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.Bar\RepositoryContextBuilder.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"c0767a384e5f85678c7e7414eb80155eb513f97f634113c74e2b47e0271d04a4"}]},"line":59,"column":9,"endLine":59,"endColumn":106,"instructionPointerReference":"0x00007F0F43746DF0","moduleId":1068},{"id":1016,"name":"MyProgram.Subcomponent.Repository.Bar.dll!MyProgram.Subcomponent.Repository.Bar.RepositoryContextBuilder.CreateRepositoryContext(MyProgram.Subcomponent.Repository.Repositories.IRepositoryConfigProvider repositoryConfigProvider, MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RetentionType? retentionType, MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RetentionPeriodType? retentionPeriodType, int? period, bool overrideOwnership, System.Threading.CancellationToken cancellationToken) Line 39","source":{"name":"RepositoryContextBuilder.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Repository.Bar\RepositoryContextBuilder.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"c0767a384e5f85678c7e7414eb80155eb513f97f634113c74e2b47e0271d04a4"}]},"line":39,"column":9,"endLine":41,"endColumn":32,"instructionPointerReference":"0x00007F0F43746C95","moduleId":1068},{"id":1017,"name":"MyProgram.Subcomponent.Bar.dll!MyProgram.Subcomponent.Bar.Repository.RepositoryHolder.CreateNewRepository.AnonymousMethod__0() Line 137","source":{"name":"RepositoryHolder.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Bar\Repository\RepositoryHolder.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"6713da4c56c427dd9ff6c8a604cc330a91178c937d0e8fba4bb2a73a6cece33d"}]},"line":137,"column":27,"endLine":143,"endColumn":43,"instructionPointerReference":"0x00007F0F43746B8A","moduleId":1001},{"id":1018,"name":"MyProgram.Subcomponent.Bar.dll!MyProgram.Subcomponent.Bar.Repository.RepositoryPoolExtension.Add(MyProgram.Subcomponent.Bar.Repository.IRepositoryPool repositoryPool, System.Guid repositoryId, System.Func<MyProgram.Subcomponent.Repository.Bar.IRepositoryContextDisposable> createContext) Line 23","source":{"name":"RepositoryPoolExtension.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Bar\Repository\RepositoryPoolExtension.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"8f340e0ef27cf659c95fb17571a4ceb7b686f442d345155ed7a5fcffdf0bd159"}]},"line":23,"column":9,"endLine":23,"endColumn":66,"instructionPointerReference":"0x00007F0F43746A30","moduleId":1001},{"id":1019,"name":"MyProgram.Subcomponent.Bar.dll!MyProgram.Subcomponent.Bar.Repository.RepositoryHolder.CreateNewRepository(MyProgram.Subcomponent.Bar.Repository.RepositoryConfigProvider repositoryConfigProvider, MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RetentionType? retentionType, MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RetentionPeriodType? retentionPeriodType, int? period, bool overrideOwnership, System.Threading.CancellationToken cancellationToken) Line 136","source":{"name":"RepositoryHolder.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Bar\Repository\RepositoryHolder.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"6713da4c56c427dd9ff6c8a604cc330a91178c937d0e8fba4bb2a73a6cece33d"}]},"line":136,"column":17,"endLine":143,"endColumn":45,"instructionPointerReference":"0x00007F0F437466D6","moduleId":1001},{"id":1020,"name":"MyProgram.Subcomponent.Bar.dll!MyProgram.Subcomponent.Bar.Repository.RepositoryLazyList.CreateNewRepository(MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RepositoryConfig repositoryConfig, MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RetentionType? retentionType, MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RetentionPeriodType? retentionPeriodType, int? period, bool overrideOwnership, System.Threading.CancellationToken cancellationToken) Line 302","source":{"name":"RepositoryLazyList.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Bar\Repository\RepositoryLazyList.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"1ed2db16c47e0bb50773f2a3f3db7e726931366b7d30ca803a322b919a75bc4b"}]},"line":302,"column":13,"endLine":302,"endColumn":159,"instructionPointerReference":"0x00007F0F4373BEA0","moduleId":1001},{"id":1021,"name":"MyProgram.Subcomponent.Bar.dll!MyProgram.Subcomponent.Bar.Engine.Controllers.RepositoryOperationController.CreateRepositoryAsync(MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RepositoryConfig config, MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RetentionType? retentionType, MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RetentionPeriodType? retentionPeriodType, int? period, bool overrideOwnership, System.Threading.CancellationToken cancellationToken) Line 139","source":{"name":"RepositoryOperationController.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Bar\Engine\Controllers\RepositoryOperationController.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"19041c643f270d32f89384c4c9ffe0b0fb74b3b54a5407f162ecc788d4ff0b67"}]},"line":139,"column":13,"endLine":139,"endColumn":139,"instructionPointerReference":"0x00007F0F43739C93","moduleId":1001},{"id":1022,"name":"[Resuming Async Method]","line":0,"column":0,"presentationHint":"label"},{"id":1023,"name":"System.Private.CoreLib.dll!System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state) Line 179","source":{"name":"ExecutionContext.cs","path":"//src/libraries/System.Private.CoreLib/src/System/Threading/ExecutionContext.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"5098771c4515b115fc5e694d8e79c3523cebd8fda4a73efa7dfa67220105a1c9"}],"vsSourceLinkInfo":{"url":"https://raw.githubusercontent.com/dotnet/runtime/08338fcaa5c9b9a8190abb99222fed12aaba956c/src/libraries/System.Private.CoreLib/src/System/Threading/ExecutionContext.cs","relativeFilePath":"src/libraries/System.Private.CoreLib/src/System/Threading/ExecutionContext.cs"}},"line":179,"column":17,"endLine":179,"endColumn":40,"instructionPointerReference":"0x00007F0F42BCC524","moduleId":1000},{"id":1024,"name":"System.Private.CoreLib.dll!System.Runtime.CompilerServices.AsyncTaskMethodBuilder<MyProgram.Subcomponent.Bar.Integration.DataContracts.Repository.CreatedRepositoryInfo>.AsyncStateMachineBox<MyProgram.Subcomponent.Bar.Engine.Controllers.RepositoryOperationController.d__19>.MoveNext(System.Threading.Thread threadPoolThread) Line 376","source":{"name":"AsyncTaskMethodBuilderT.cs","path":"//src/libraries/System.Private.CoreLib/src/System/Runtime/CompilerServices/AsyncTaskMethodBuilderT.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"e358d67bcd5815a50083706ec88d0b8489a9872915d46156ba24277cd21bd662"}],"vsSourceLinkInfo":{"url":"https://raw.githubusercontent.com/dotnet/runtime/08338fcaa5c9b9a8190abb99222fed12aaba956c/src/libraries/System.Private.CoreLib/src/System/Runtime/CompilerServices/AsyncTaskMethodBuilderT.cs","relativeFilePath":"src/libraries/System.Private.CoreLib/src/System/Runtime/CompilerServices/AsyncTaskMethodBuilderT.cs"}},"line":376,"column":17,"endLine":376,"endColumn":33,"instructionPointerReference":"0x00007F0F42FC110C","moduleId":1000},{"id":1025,"name":"System.Private.CoreLib.dll!System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction(System.Runtime.CompilerServices.IAsyncStateMachineBox box, bool allowInlining) Line 795","source":{"name":"TaskContinuation.cs","path":"//src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/TaskContinuation.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"20f4825c4341fc5ca8bed5d846e4a6668c9b10eba3160705d50d548fa8519db8"}],"vsSourceLinkInfo":{"url":"https://raw.githubusercontent.com/dotnet/runtime/08338fcaa5c9b9a8190abb99222fed12aaba956c/src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/TaskContinuation.cs","relativeFilePath":"src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/TaskContinuation.cs"}},"line":795,"column":17,"endLine":795,"endColumn":32,"instructionPointerReference":"0x00007F0F42BD8136","moduleId":1000},{"id":1026,"name":"System.Private.CoreLib.dll!System.Threading.Tasks.Task.RunContinuations(object continuationObject) Line 3456","source":{"name":"Task.cs","path":"//src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/Task.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"35f3a54f5acb408a3e219b2de039f1a3095507b7e4515f11238c0ba07b60c0ce"}],"vsSourceLinkInfo":{"url":"https://raw.githubusercontent.com/dotnet/runtime/08338fcaa5c9b9a8190abb99222fed12aaba956c/src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/Task.cs","relativeFilePath":"src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/Task.cs"}},"line":3456,"column":21,"endLine":3456,"endColumn":104,"instructionPointerReference":"0x00007F0F42BCBFAE","moduleId":1000},{"id":1027,"name":"System.Private.CoreLib.dll!System.Runtime.CompilerServices.AsyncTaskMethodBuilder<MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RepositoryConfig>.SetResult(MyProgram.Subcomponent.Interfaces.DataContracts.Repository.RepositoryConfig result) Line 474","source":{"name":"AsyncTaskMethodBuilderT.cs","path":"/_/src/libraries/System.Private.CoreLib/src/System/Runtime/CompilerServices/AsyncTaskMethodBuilderT.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"e358d67bcd5815a50083706ec88d0b8489a9872915d46156ba24277cd21bd662"}],"vsSourceLinkInfo":{"url":"https://raw.githubusercontent.com/dotnet/runtime/08338fcaa5c9b9a8190abb99222fed12aaba956c/src/libraries/System.Private.CoreLib/src/System/Runtime/CompilerServices/AsyncTaskMethodBuilderT.cs","relativeFilePath":"src/libraries/System.Private.CoreLib/src/System/Runtime/CompilerServices/AsyncTaskMethodBuilderT.cs"}},"line":474,"column":17,"endLine":474,"endColumn":55,"instructionPointerReference":"0x00007F0F42BDC58A","moduleId":1000},{"id":1028,"name":"[Completed] MyProgram.Subcomponent.Bar.dll!MyProgram.Subcomponent.Bar.Engine.Controllers.BarRepositoryDatabaseContext.FindRepositoryConfigAsync(System.Guid id, System.Threading.CancellationToken cancellationToken, MyProgram.Subcomponent.Bar.Database.Interfaces.RepositoryFilter filter) Line 46","source":{"name":"BarRepositoryDatabaseContext.cs","path":"C:\repos\Explorers\Melon\MyProgram.Subcomponent.Bar\Engine\Controllers\BarRepositoryDatabaseContext.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"736bc852478f9a8fa27bc051c24595337db248269b35308d070c2b646de9aff7"}]},"line":46,"column":5,"endLine":46,"endColumn":6,"instructionPointerReference":"0x00007F0F4373A3B1","moduleId":1001},{"id":1029,"name":"System.Private.CoreLib.dll!System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(System.Threading.Thread threadPoolThread, System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state) Line

@WardenGnaw
Copy link
Member

From the logs it seems like a "Exception thrown: 'NATS.Client.NATSTimeoutException' in NATS.Client.dll is causing the process to exit.

However, it may be something within the debugger or runtime is causing the process to exit.

To continue further we will need you to capture a dump of the crash to see if something is happening in the runtime.
To capture a crashdump, can you add a Environment Variable DOTNET_DbgEnableMiniDump to 1?
You add the environment variable:

  1. If you right click on your project and select properties
  2. Go to Debug -> General -> Debug Profile UI
    image
  3. Add DOTNET_DbgEnableMiniDump: 1 to the environment variables of the profile that is used for the docker scenario.
    image
  4. Run your program and you should see logs saying:
Unhandled exception. System.Exception: Exception of type 'System.Exception' was thrown.
   at PROGRAM PATH #
[createdump] Gathering state for process PID dotnet
[createdump] Crashing thread 012c signal 6 (0006)
[createdump] Writing minidump with heap to file /tmp/coredump.PID 
[createdump] Written 118829056 bytes (29011 pages) to core file
[createdump] Target process is alive
[createdump] Dump successfully written in 175ms
  1. Upload /tmp/coredump.PID

To keep your crash dump confidential, can you create an issue at https://developercommunity.visualstudio.com/VisualStudio

Feel free to paste the link to the bug here so I can assign it to myself and we can continue the discussion there.

more information about the environment variable can be found at https://learn.microsoft.com/en-us/dotnet/core/diagnostics/collect-dumps-crash.

@jwilliamsonveeam
Copy link
Author

jwilliamsonveeam commented Sep 6, 2024

@WardenGnaw @NCarlsonMSFT Just discovered the debugger also cashes when SSH'ed into a normal redhat VM, but the process I'm debugging continues to run. DockerTools is probably the wrong area for this.
I put more info in the visualstudio.com report.

@jwilliamsonveeam
Copy link
Author

jwilliamsonveeam commented Sep 27, 2024

Demo example.
This code write out "SUCCEED!" with no debugger attached and this fails to execute with it attached. If you check the process with the strace utility you can see with the debugger there is a SIGTRAP and there is no SIGTRAP if you don't attach a debugger. You can see the sigtrap is coming from libc.6.so from the timer call back here on line 54 https://codebrowser.dev/glibc/glibc/sysdeps/unix/sysv/linux/timer_routines.c.html

Program.cs

using System.Diagnostics;
using System.Resources;
using System.Runtime.InteropServices;

namespace TimerCallBackDemo;

public class Program
{
[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate void HandleTimerEvent(IntPtr sigval);
public static void Main(string[] args)
{
Thread.Sleep(30000);
HandleTimerEvent callback = HandleTimer;
int SIGEV_THREAD = 2;
IntPtr _timerId = IntPtr.Zero;
var configuration = new NativeMethods.sigevent
{
sigev_notify = SIGEV_THREAD,
sigev_value = new NativeMethods.sigval
{
sigval_ptr = _timerId
},
sigev_notify_function = Marshal.GetFunctionPointerForDelegate(callback),
};
var r1 = NativeMethods.timer_create(NativeMethods.clockid_t.CLOCK_REALTIME, configuration, out _timerId);

    var newValue = new NativeMethods.itimerspec
    {
        it_value = new NativeMethods.timespec
        {
            tv_sec = 1,
            tv_nsec = 1
        }
    };
    
    var result = NativeMethods.timer_settime(_timerId, (int)NativeMethods.timer_flags.TIMER_ABSTIME, newValue, IntPtr.Zero);  
    Thread.Sleep(3000);
    Console.WriteLine("SUCCESS!");
}

public static void HandleTimer(IntPtr sigval)
{
    Console.WriteLine("In minimal delegate");
    //_handle.Set();
}

}

NativeMethods.cs
using System;
using System.Runtime.InteropServices;

namespace TimerCallBackDemo;

public static class NativeMethods
{
[DllImport("librt.so.1", SetLastError = true, CallingConvention = CallingConvention.StdCall)]
public static extern int timer_create(clockid_t clockId, sigevent callback, out IntPtr timerId);

[DllImport("librt.so.1",  SetLastError = true, CallingConvention = CallingConvention.StdCall)]
public static extern int timer_settime(IntPtr timerId, int flags, itimerspec newValue, IntPtr oldValue);

[DllImport("librt.so.1",  SetLastError = true, CallingConvention = CallingConvention.StdCall)]
public static extern int timer_delete(Int64 timerId);

// Native structures, disable struct warnings
#pragma warning disable CS0649 // Not used fields
#pragma warning disable CS8981 // The type name only contains lower-cased ascii characters. Such names may become reserved for the language.
#pragma warning disable CA1815 // Override equals and operator equals on value types

[StructLayout(LayoutKind.Sequential)]
public struct timespec
{
    public long tv_sec;
    public long tv_nsec;
}

[StructLayout(LayoutKind.Sequential)]
public class itimerspec
{
    public timespec it_interval;
    public timespec it_value;
}

[StructLayout(LayoutKind.Sequential)]
public class sigevent
{
    public sigval sigev_value;
    public int sigev_signo;
    public int sigev_notify;
    public IntPtr sigev_notify_function;// Pointer to: delegate void sigev_notify_function(sigval arg);
    public IntPtr sigev_notify_attributes;
}

[StructLayout(LayoutKind.Explicit)]
public struct sigval // Union
{
    [FieldOffset(0)]
    public int sival_int;
    [FieldOffset(0)]
    public IntPtr sigval_ptr;
}

[Flags]
public enum timer_flags
{
    TIMER_RELATIVETIME = 0,
    TIMER_ABSTIME  = 1
}

public enum clockid_t : long
{
    CLOCK_REALTIME = 0, // A settable system-wide real-time clock
    CLOCK_BOOTTIME = 7, // Monotonic clock that measure time while system is suspended
    CLOCK_REALTIME_ALARM = 8, // like CLOCK_REALTIME, but will wake the system if it is suspended. Same as `resume` option for Windows timer
    CLOCK_BOOTTIME_ALARM = 9 // like CLOCK_BOOTTIME, but will wake the system if it is suspended. Same as `resume` option for Windows timer
}

#pragma warning restore CA1815
#pragma warning restore CS8981
#pragma warning restore CS0649

[DllImport("libc", SetLastError = true, CallingConvention = CallingConvention.StdCall, CharSet = CharSet.Unicode)]
public static extern int getresuid(ref int readUserId, ref int effectiveUserId, ref int setUsedId);

[DllImport("libc", SetLastError = true, CallingConvention = CallingConvention.StdCall, CharSet = CharSet.Unicode)]
public static extern IntPtr getpwuid(int uid);

}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Needs more info Apply this label for the bugs where a some new information is needed from the customer.
Projects
None yet
Development

No branches or pull requests

3 participants