Infrastructure
We have 4 webservers (WEB1-4). We have Shared Configuration turned on on all those webservers to a shared network path (\\fs100\Config\Web - Config).
Problem
From time to time, a random webserver stops getting updates from the Shared Configuration. We can solve it by restarting the whole webserver (but we don't really want to!). After restart it gets updates from Shared Configuration for some time, until it breaks again (can be hours, days, weeks before it breaks).
I'll refer webservers that doesn't get updates from Shared Configuration as a failing server from now on. Those webservers that still get's updates from Shared Configuration will be refered as working servers.
Symptom 1:
When we create a new application pool on a failing server, it won't start up and we get this error:
The object identifier does not represent a valid object. (Exception from HRESULT: 0x800710D8)
The application pool will however be created and started up on the still working webservers.
Symptom 2:
When we release a new version (2.0) of our applications, we changes the Physical Path of the application to the location of that version. A working server will boot up that new version (2.0), no matter if it has been changed on a failing or working server. A failing server will boot up the previous version (1.0).
The Physical Path points to the correct path, I've checked through CLI and inside the IIS Manager. Stopping, Restating or Recycling the website/application pool doesn't matter, it always starts the previous version (1.0). If changing the Physical Path again (2.1), it's still stuck on that previous version (1.0).
Our own conclussions
It feels like the IIS is keeping a local cache of the Shared Configuration. For some (to us unknown) reason, IIS stops updating it's own local cache from the Shared Configuration.
We've had problems before with unsynchronised clocks between servers, we thought that it could be connected, but they are currently running in sync.
Resources we have checked out
IIS7.5 Virtual Directory Wrong Physical Path
Changing physical path on IIS through appcmd isn't activated
UPDATE: Partial Solution
We have discovered that IIS stores configuration files for each application pool in C:\inetpub\temp\appPools
. There we can single out the failing application pool (from Symptom 2) and edit the Physical Path manually.
User contributions licensed under CC BY-SA 3.0