OctopusDeploy / Issues

| Public | Bug reports and known issues for Octopus Deploy and all related tools
https://octopus.com
162 stars 20 forks source link

Can we remove `FullIsolation` for package acquisition #7020

Closed droyad closed 2 years ago

droyad commented 3 years ago

There's a process wide mutex around package acquisition as well as a FullIsolation ScriptIsolation mutex. The ScriptIsolation one exists for clustered scenarios. Having it means all other script's can't run blocking the acquisition as well as other deployments, particularly on workers.

Could we make it named ClusterWideMutex only instead?

Or, likely even better, perhaps push it all the way down to the target/worker and use a named system mutex?

Historical Context: We do this so that we don't clash on the target machine with multiple deployments acquiring the same package. Pre-workers this blocking wasn't a big problem as simultaneous deployments were relatively rare.

droyad commented 3 years ago

https://github.com/OctopusDeploy/OctopusDeploy/blob/master/source/Octopus.Server/Orchestration/ServerTasks/Deploy/Steps/Acquire/AcquireMachinePackageTask.cs#L99

tothegills commented 3 years ago

A customer running into aggressive mutexes on SSH targets: https://octopusdeploy.slack.com/archives/CNHBHV2BX/p1631304355207500

tothegills commented 2 years ago

Leaving this for now. Let's wait for feedback on how our own dynamic workers perform with the recent changes to tool extraction mutexes and then consider the next steps.