Skip to main content
Participating Frequently
December 21, 2011
Question

PLEASE HELP - Production ColdFusion server down

  • December 21, 2011
  • 2 replies
  • 3770 views

I've been running CF 8.0.1 on a Windows 2008 server for over 2 years with no problems.  Tonight, IIS 7 locked up for the first time and I had to kill off the process.  Afterwards, I started getting this on all requests for .cfm pages:

The service is unavailable

Server Error

Either the Macromedia application server(s) are unreachable or none of them has a mapping to process this request.

The server *can* still serve up .html files.

I've tried rebooting and using the Web Server Configuration Tool to remove and re-add the connector but neither has fixed the problem.  The last time I ran the tool, I enabled "verbose logging for connector".

I see the following in the jrun_iis6_wildcard111221.log file:

2011-12-21 02:00:40 jrISAPI[4128:2184]  ***HttpExtensionProc for JRun ISAPI Extension: uri is "/index.cfm"

2011-12-21 02:00:40 jrISAPI[4128:2184]  trying to bootstrap from "127.0.0.1:51800"

2011-12-21 02:00:40 jrISAPI[4128:2184]  127.0.0.1:51800 initPool finished

2011-12-21 02:00:40 jrISAPI[4128:2184]  initialized temp proxy for 127.0.0.1:51800

2011-12-21 02:00:40 jrISAPI[4128:2184]  127.0.0.1:51800 jrConnect [376]

2011-12-21 02:00:40 jrISAPI[4128:2184]  sent/avail/result 25/25/25

2011-12-21 02:00:40 jrISAPI[4128:2184]  recv failed[376]: 10054 Connection reset by peer

2011-12-21 02:00:40 jrISAPI[4128:2184]  read/len/total -1/4/0

2011-12-21 02:00:40 jrISAPI[4128:2184]  127.0.0.1:51800 destroying/closing socket [376] error 10054

2011-12-21 02:00:40 jrISAPI[4128:2184]  jrCloseSocket [376]

2011-12-21 02:00:40 jrISAPI[4128:2184]  JRun closed connection. [376] dropped while sending command

2011-12-21 02:00:40 jrISAPI[4128:2184]  127.0.0.1:51800 could not fetch clustered-servers

2011-12-21 02:00:40 jrISAPI[4128:2184]  127.0.0.1:51800 destroyed.

2011-12-21 02:00:40 jrISAPI[4128:2184]  used thread identity to open file C:/ColdFusion8/runtime/lib/wsconfig/1/jrunserver.store

2011-12-21 02:00:40 jrISAPI[4128:2184]  loadServersFromStore(C:/ColdFusion8/runtime/lib/wsconfig/1/jrunserver.store)

2011-12-21 02:00:40 jrISAPI[4128:2184]  Couldn't initialize from remote server, JRun server(s) probably down.

2011-12-21 02:00:40 jrISAPI[4128:2184]  ExecUrl: request received: URL=/index.cfm

2011-12-21 02:00:40 jrISAPI[4128:2184]  ExecUrl Completion: 503, URL=/index.cfm.

I *can* telnet to port 51800 but don't know how to test that any further.

I would be extremely grateful to any suggestions on what I should try next as this is a production server for a fairly large international company.

This topic has been closed for replies.

2 replies

Participating Frequently
December 22, 2011

Quick follow-up:

I *believe* I've figured out the root cause of the issue.  That said, the exact sequence of events and why certain things are apparently connected are both a bit unclear.

This particular server has numerous websites.  One of them was moved earlier in the day (ie, its doc root had been renamed on the file system) but IIS was still looking for the web.config file in the old location.  This particular site also has an ISAPI filter.  At some point (I believe when I was starting and stopping another IIS instance), IIS went looking for the file and got hung.  Many hours later, I finally saw an IIS error dialog indicating the missing file and things started to make sense.  I disabled the relocated IIS instance and a after a subsequent reboot IIS came back up with CF connectors now working.  (I could see in the jrun_iis6_wildcard111221.log file that the "connection reset by peer" messages were no longer happening and that JRun was communicating.)

My current theory is that a misconfigured IIS site with an ISAPI filter can affect other ISAPI filters/extensions on the same server and the CF connectors just happen to be implemeneted via ISAPI.

Community Expert
December 22, 2011

My current theory is that a misconfigured IIS site with an ISAPI filter can affect other ISAPI filters/extensions on the same server and the CF connectors just happen to be implemeneted via ISAPI.

This is a good theory, because one ISAPI module can definitely prevent others from working.

Dave Watts, CTO, Fig Leaf Software

Dave Watts, Eidolon LLC
Owainnorth
Inspiring
December 21, 2011

How are you running CF? Multi-instance? Standalone? Cluster? If it's important, you have two options to get it sorted quickly.

1) Uninstall and reinstall CF

2) Hire in a CF expert to fix it for you.

Is it a VM? Do you have any snapshots? Backups? Have any other changes been made recently? Is the CF service running?

Participating Frequently
December 21, 2011

Thanks for your response....much appreciated!

Its a pretty basic install.  Definitely not clustered.  I'm not sure what multi-instance is so I'm guessing its not that.  Must be standalone.

The CF service *is* running.

No changes have been made other than some IIS configuration changes I was making on a single website (the server has about 25 websites on it).  I was seeing strange behavior on that site so I believe I was disabling/enabling that site's custom ISAPI filter when IIS7 Manager and the IIS7 service both got stuck.

Backups are an option but I'd likely lose a fair amount of data as I don't think a backup has been made since the previous night.

Community Expert
December 21, 2011

No changes have been made other than some IIS configuration changes I was making on a single website (the server has about 25 websites on it).  I was seeing strange behavior on that site so I believe I was disabling/enabling that site's custom ISAPI filter when IIS7 Manager and the IIS7 service both got stuck.

You realize that IIS talks to CF through ISAPI, right? That's most likely your problem right there.

In any case, you DO NOT NEED TO UNINSTALL CF. In the worst case, you can simply uninstall and reinstall the CF ISAPI modules using wsconfig (Web Site Configuration Tool, which should show up in your Start Menu wherever your CF stuff went). If you're running CF 9.0, you need to ensure that the IIS 6 compatibility layer is installed in IIS 7, but if you've upgraded to CF 9.0.1 this is no longer necessary.

Dave Watts, CTO, Fig Leaf Software

Dave Watts, Eidolon LLC