This is a tracking issue describing a block related to the work in #4547.
Source-build builds hang when shutting down the VB/C# compiler build server via dotnet build-server shutdown or dotnet build-server shutdown --vbcscompiler. This hanging only occurs in a containerized job using an Alpine with Node image. The hang occurs regardless of whether the build is internal or public, and it does not repro outside of a containerized azure devops job.
Diagnostics so far:
- Our alpine images meet the requirements specified in the Azure DevOps documentation.
- Running
dotnet exec VBCSCompiler.dll --shutdown succeeds, allowing immediate subsequent calls to dotnet build-server shutdown or dotnet build-server shutdown --vbcscompiler to finish. Note that if the server is started again, the build will hang when attempting to shutdown the server without dotnet exec VBCSCompiler.dll.
- There doesn't appear to be a process count limit on Alpine, as
ulimit -u returns unlimited.
- Replicating the Azure DevOps container setup doesn't reproduce the issue. Note that the setup can't be entirely replicated locally due to internal volumes being configured by the pipeline task.
cc @jaredpar
This is a tracking issue describing a block related to the work in #4547.
Source-build builds hang when shutting down the VB/C# compiler build server via
dotnet build-server shutdownordotnet build-server shutdown --vbcscompiler. This hanging only occurs in a containerized job using an Alpine with Node image. The hang occurs regardless of whether the build is internal or public, and it does not repro outside of a containerized azure devops job.Diagnostics so far:
dotnet exec VBCSCompiler.dll --shutdownsucceeds, allowing immediate subsequent calls todotnet build-server shutdownordotnet build-server shutdown --vbcscompilerto finish. Note that if the server is started again, the build will hang when attempting to shutdown the server withoutdotnet exec VBCSCompiler.dll.ulimit -ureturnsunlimited.cc @jaredpar