• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
1

CF11 is crashing ( application pool suffered a fatal communication error with the Windows Process Activation Service)

Community Beginner ,
Jun 04, 2014 Jun 04, 2014

Copy link to clipboard

Copied

I have a cluster of 2 IIS web servers on Windows Server 2008 R2. They had been running on CF10 for over a year (if not two) with no problems. I upgraded one server to CF11 and now that server is crashing while the CF10 servers is still running fine.

In the Windows event log I'm seeing 4 instances of this error:

"A process serving application pool '******' suffered a fatal communication error with the Windows Process Activation Service. The process id was '4652'. The data field contains the error number."

Then finally:

"Application pool '******' is being automatically disabled due to a series of failures in the process(es) serving that application pool.".

Looking at the application pool in the IIS admin it is stopped. Restarting will resolve but it will eventually crash.

What could be the issue?

-Phil

Views

7.2K

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 1 Correct answer

Community Beginner , Jun 25, 2014 Jun 25, 2014

I didn't disable logging but it has in fact stopped logging since around 8:30am PST, so that is strange.

I didn't get the exact errors mentioned in the original post (yet) but I am facing the issue in that some requests are taking very long. I have Failed Request Tracing enabled and it showing requests for simple static files like .css files taking 10+ seconds.

-Phil

Votes

Translate

Translate
Community Beginner ,
Jun 04, 2014 Jun 04, 2014

Copy link to clipboard

Copied

I'm seeing in the CF logs leading up to the crash:

Jun 04, 2014 11:11:31 AM org.apache.coyote.ajp.AjpProcessor getRealPathFromServer

SEVERE: Error in getRealPathFromConn

java.net.SocketException: Connection reset by peer: socket write error

  at java.net.SocketOutputStream.socketWrite0(Native Method)

  at java.net.SocketOutputStream.socketWrite(Unknown Source)

  at java.net.SocketOutputStream.write(Unknown Source)

  at org.apache.coyote.ajp.AjpProcessor.getRealPathFromServer(AjpProcessor.java:402)

  at org.apache.coyote.ajp.AbstractAjpProcessor.getRealPath(AbstractAjpProcessor.java:1276)

  at org.apache.naming.resources.FileDirContext.doGetRealPath(FileDirContext.java:202)

  at org.apache.naming.resources.BaseDirContext.getRealPath(BaseDirContext.java:424)

  at org.apache.catalina.core.StandardContext.getRealPath(StandardContext.java:4660)

  at org.apache.catalina.core.ApplicationContext.getRealPath(ApplicationContext.java:432)

  at org.apache.catalina.core.ApplicationContextFacade.getRealPath(ApplicationContextFacade.java:333)

  at coldfusion.runtime.ServletContextWrapper.doGetRealPath(ServletContextWrapper.java:184)

  at coldfusion.runtime.ServletContextWrapper._doGetRealPath(ServletContextWrapper.java:116)

  at coldfusion.runtime.ServletContextWrapper.getRealPath(ServletContextWrapper.java:98)

  at coldfusion.filter.FusionContext.getRealPath(FusionContext.java:999)

  at coldfusion.filter.FusionContext.getRealPath(FusionContext.java:937)

  at coldfusion.runtime.RuntimeServiceImpl.resolveTemplatePath(RuntimeServiceImpl.java:866)

  at coldfusion.tagext.lang.IncludeTag.setTemplate(IncludeTag.java:420)

  at cfApplication2ecfc1835967654.runPage(C:\Data\http\domain\apps\Application.cfc:3)

  at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:246)

  at coldfusion.filter.SilentFilter.invoke(SilentFilter.java:47)

  at coldfusion.runtime.TemplateProxyFactory.resolveComponentHelper(TemplateProxyFactory.java:538)

  at coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:248)

  at coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:159)

  at coldfusion.runtime.TemplateProxyFactory.resolveFile(TemplateProxyFactory.java:120)

  at coldfusion.cfc.CFCProxy.<init>(CFCProxy.java:138)

  at coldfusion.cfc.CFCProxy.<init>(CFCProxy.java:84)

  at coldfusion.runtime.AppEventInvoker.<init>(AppEventInvoker.java:64)

  at coldfusion.filter.PathFilter.resolveApplicationScope(PathFilter.java:195)

  at coldfusion.filter.PathFilter.invoke(PathFilter.java:124)

  at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:94)

  at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28)

  at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38)

  at coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:58)

  at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38)

  at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22)

  at coldfusion.filter.CachingFilter.invoke(CachingFilter.java:62)

  at coldfusion.CfmServlet.service(CfmServlet.java:219)

  at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89)

  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)

  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

  at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42)

  at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)

  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

  at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)

  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

  at java.lang.reflect.Method.invoke(Unknown Source)

  at com.intergral.fusionreactor.j2ee.filterchain.WrappedFilterChain.doFilter(WrappedFilterChain.java:97)

  at com.intergral.fusionreactor.j2ee.filter.FusionReactorRequestHandler.doNext(FusionReactorRequestHandler.java:472)

  at com.intergral.fusionreactor.j2ee.filter.FusionReactorRequestHandler.doHttpServletRequest(FusionReactorRequestHandler.java:312)

  at com.intergral.fusionreactor.j2ee.filter.FusionReactorRequestHandler.doFusionRequest(FusionReactorRequestHandler.java:192)

  at com.intergral.fusionreactor.j2ee.filter.FusionReactorRequestHandler.handle(FusionReactorRequestHandler.java:507)

  at com.intergral.fusionreactor.j2ee.filter.FusionReactorCoreFilter.doFilter(FusionReactorCoreFilter.java:36)

  at sun.reflect.GeneratedMethodAccessor117.invoke(Unknown Source)

  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

  at java.lang.reflect.Method.invoke(Unknown Source)

  at com.intergral.fusionreactor.j2ee.filterchain.WrappedFilterChain.doFilter(WrappedFilterChain.java:79)

  at sun.reflect.GeneratedMethodAccessor116.invoke(Unknown Source)

  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

  at java.lang.reflect.Method.invoke(Unknown Source)

  at com.intergral.fusionreactor.agent.filter.FusionReactorStaticFilter.doFilter(FusionReactorStaticFilter.java:53)

  at com.intergral.fusionreactor.agent.pointcuts.NewFilterChainPointCut$1.invoke(NewFilterChainPointCut.java:41)

  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java)

  at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)

  at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)

  at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)

  at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)

  at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)

  at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)

  at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:422)

  at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:198)

  at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)

  at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:313)

  at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

  at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

  at java.lang.Thread.run(Unknown Source)

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Jun 24, 2014 Jun 24, 2014

Copy link to clipboard

Copied

I see the same entries in the Event log and the same end result. This is a single server. Win2008r2 with CF11.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Jun 24, 2014 Jun 24, 2014

Copy link to clipboard

Copied

I've engaged a consultant from http://www.cfconsultant.com/ to help me troubleshoot this. We've looked at everything haven't found any code or configuration that would seem to relate and have yet to find the root cause. This is happening with very little load on the server.


My next step is to do a full uninstall-reinstall of IIS and CF11 and see if that resolves. If it doesn't, my next move is to bail on CF11 and go back to CF10. Unless someone from Adobe might have some suggestions as to how to resolve/troubleshoot.

-Phil

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Jun 25, 2014 Jun 25, 2014

Copy link to clipboard

Copied

give a try to test a new webiste. Create a new website in IIS, configure it with CF 11.This new website will have it's own application pool. Place all of the .cfm of your original website in this new website.

Use Apache JMeter to use load/stress testing on this new website

So, in this way you can test without the cluster setup. If everything works fine then test the behavior in a cluster environment.

Apache JMeter steps

Download jmeter from the link mentioned below

https://jmeter.apache.org/download_jmeter.cgi

NOTE : click on apache-jmeter-2.11.zip under binaries

Test plan -> Right click --> Add - Thread group

Right click on Thread group --> Add - Sampler- HTTP Request

Right click HTTP Request --> Add- Listener - View Results in Table

Click on HTTP Request  and enter the server name like localhost or ip address, then port number of your site like 80

Enter the path as : http://localhost:81/hello.cfm

Click on Thread Group in left panel. Increase the number of threads as 40 or something like that. Enter the loop count like 5000 or so

Now click on the green start icon at top and click on view results in table

If you are successful in finding the root cause, you will be able to fix it in a quick succession.

HTH

Thanks

VJ

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Jun 25, 2014 Jun 25, 2014

Copy link to clipboard

Copied

I have already tried creating a new website in IIS. I have taken the server out of the cluster so I can isolate it and test it alone. Out of the cluster, the only load the server sees is requests from our monitoring system. So like a couple of page requests a minute, very little. Under that "load" I'm seeing the error so there's no need to use JMeter.

My guess, I think it's related to a bug in the connector

Bug 54117 – access violation exception in isapi_redirect.dll

This was adressed but I think CF11 ships with the old connector.

Thanks,

Phil

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Jun 25, 2014 Jun 25, 2014

Copy link to clipboard

Copied

Recreate the connector for this new website and this time enable the verbose log

Capture.JPG

Every request to the website will be monitored and the log will be inside isapi_redirect.log (C:\ColdFusion11\config\wsconfig\1)

Share the logs

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Jun 25, 2014 Jun 25, 2014

Copy link to clipboard

Copied

I enabled logging. Here's the log file

Dropbox - isapi_redirect.zip

(Though I noticed it stopped logging even though I didn't disable logging. Does it stop logging after the log file gets to a certain size?)

Do you see anything that indicates the root cause?

-Phil

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Jun 25, 2014 Jun 25, 2014

Copy link to clipboard

Copied

You need to disable the verbose. Change the log level to info from debug in isapi_redirect.properties (C:\ColdFusion11\config\wsconfig\1)

Did you face the issue after enabling verbose?

Have you added Application under your website? If yes, is that Application running with it's own App pool or the websit's App pool?

Also, share the Edit Application Pool settings screenshot

1.JPG

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Jun 25, 2014 Jun 25, 2014

Copy link to clipboard

Copied

I didn't disable logging but it has in fact stopped logging since around 8:30am PST, so that is strange.

I didn't get the exact errors mentioned in the original post (yet) but I am facing the issue in that some requests are taking very long. I have Failed Request Tracing enabled and it showing requests for simple static files like .css files taking 10+ seconds.

-Phil

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Jun 27, 2014 Jun 27, 2014

Copy link to clipboard

Copied

LATEST

I've spent a lot of time trying to figure out why this server is so unstable.

I uninstalled CF11 and re-installed CF10 and now it seems back to normal. Just a guess, but I think there's an issue in the connector perhaps related to Bug 54117 – access violation exception in isapi_redirect.dll

-Phil

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Resources
Documentation