Skip to content

MSBuild Server fallback mechanism doesn't work when Mutex throws exception #7993

@MichalPavlik

Description

@MichalPavlik

The MSBuildClientApp.TryLaunchServer method returns false in case server node couldn't be started (and build is then done without server). However, there was reported issue, when mutex logic failed with unhandled IOException.

Unhandled exception: System.IO.IOException: Connection timed out : 'Global\msbuild-server-launch-BSVTwDRbqiZ8pAK9bysU7lvA2UC4yhR_+Bc8sTbm8Jw'
         at System.Threading.Mutex.CreateMutexCore(Boolean initiallyOwned, String name, Boolean& createdNew)
         at Microsoft.Build.Experimental.MSBuildClient.TryLaunchServer()
         at Microsoft.Build.Experimental.MSBuildClient.Execute(CancellationToken cancellationToken)
         at Microsoft.Build.CommandLine.MSBuildClientApp.Execute(String[] commandLine, String msbuildLocation, CancellationToken cancellationToken)
         at Microsoft.Build.CommandLine.MSBuildApp.Main(String[] args)
         at Microsoft.DotNet.Cli.Utils.MSBuildForwardingAppWithoutLogging.ExecuteInProc(String[] arguments)

Hotfix should be easy - insert mutex logic to existing try/catch block. We should also find out why is it time-outing.

dotnet/runtime#75391
dotnet/runtime#75867

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions