Uncategorized

Three errors, one cause: me!

A few days ago I was working on a repro I got from a customer as I very often do, and for some reason after a while my IIS started to behave oddly, pages where not served, the application pool was stuck doing “something” and whenever I tried to open the IIS Manager I got the error “There was an error when trying to connect. Do you want to retype your credentials and try again? Cannot create a file when that file already exists”:

Failed to connect
Failed to connect

Needless to say that being IIS on my local machine and I have not made any changes to the security/ACLs/DCOM etc… there should be no need to retype my credentials; and by the way, even retyping them did not help.

By the way, if I tried to remotely connect to another machine of mine, I got the message “The type initializer for ‘Microsoft.Web.Management.Remoting.HttpChannel’ threw an exception”:

Type initializer throw an exception
Type initializer throw an exception

My next step has been to try to restart the World Wide Web Publishing Service: it was (oddly?) stopped, but again I got an error “Windows could not start the World Wide Web Publishing Service service on Local Computer. Error 1068: The dependency service or group failed to start”:

The dependency service or group failed to start
The dependency service or group failed to start

The W3SVC service has a dependency on WAS (Windows Process Activation Service), I tried to start it manually and got “Windows could not start the Windows Process Activation Service service on Local Computer. Error 183: Cannot create a file when that file already exists.”:

Could not start the WAS service
Could not start the WAS service

That is the same message I got from IIS Manager, so I thought to have a look at the event log to find out more: I was wrong! I got “MMC could not create the snap-in. The snap-in might not have been installed correctly”:

MMS coult not create the snap-in
MMS coult not create the snap-in

I quickly found out that virtually every MMC snap-in was broken on my machine (“Server Manager” “Certificates”, “Local Users and Groups”, just name one) but why?!?  ?

Well… on Windows 2008, MMC is based on .NET as of course is IIS and when the problem first appeared I was tampering my machine.config file to try different ThreadPool settings… ?

The golden rule in computing reads “Always back-up sensitive data!”… after restoring my clean machine.config all the problems above went away! ?

For curiosity I had a deeper look at it and found the following lines:

<system.web>

        <processModel autoConfig="true"/>

        <processModel autoConfig="false" minWorkerThreads="100" 
            minIoThreads="100" maxWorkerThreads="404" maxIoThreads="404"/>

        <httpRuntime minFreeThreads="152" minLocalRequestFreeThreads="152"/>

[...]

Easy to spot it now, eh? For my repro I had set autoConfig=”false” but then I decided to set it to “true”, for some reason I added a new <processModel> element with its own autoConfig=”true” and forgot to remove the “old” <processModel>… At least I learnt something new from my foolishness! ?

Note: there might be other reasons if you get the errors above, but always keep a clean backup of your configuration files at hand, just in case…

Carlo

Quote of the day:

We are continually faced with a series of great opportunities brilliantly disguised as insoluble problems. – John W. Gardner

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.