I’m not running into any specific issues, but I want to understand what it does and when to use it.
The Running Umbraco Azure web apps’ docs specifies that the Global > MainDomLock setting should be set to FileSystemMainDomLock.
However, you can also set that setting to SqlMainDomLock. I’m just wondering why this isn’t a good option for Azure Web Apps (file based stuff in web apps always seem a bit…unreliable for some reason?). But also generally: when would you use SqlMainDomLock anyway?
Here’s the documentation about why this feature exists:
Here’s a good example of what can go wrong with the SqlMainDomLock:
When not running on a Windows machine, acquiring the MainDom ultimately requires a backchannel and there’s no bulletproof way of doing that. Umbraco needs to have filesystem access to run at all so it’s a safer bet to use by default than SQL - which entails TCP call to different infra (even if that’s technically how the filesystem Azure Web Apps work under the hood).
Essentially FileSystemMainDomLock is just a simpler and more robust way of doing what SqlMainDomLock does and AFAIK SqlMainDomLock is really just there for legacy reasons as they enable the exact same shared filesystem scenario.