严重:getRealPathFromConn出错

时间:2013-01-13 05:19:05

标签: iis coldfusion coldfusion-10

目前我正在使用我们的应用程序调试看似随机的错误。我将尽力提供尽可能详细的信息。基本上一段时间后,我们服务器上的应用程序的一个应用程序池就会停止。我必须启动它,或者有时重新启动Coldfusion,或者更糟糕的是让机器重新运行。

服务器日志表明由于IIS中的Rapid Fail Succession事件,池已停止。 (该应用程序在很短的时间内提供X个错误,因此IIS停止了应用程序)

通过ColdFusion错误日志,我在IIS错误的时候就会收到这个,它会停止我的游泳池。

  

SEVERE:getRealPathFromConn出错       java.net.SocketException:由peer重置连接:套接字写入错误       at java.net.SocketOutputStream.socketWrite0(Native Method)       在java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)       在java.net.SocketOutputStream.write(SocketOutputStream.java:124)       在org.apache.coyote.ajp.AjpProcessor.getRealPathFromServer(AjpProcessor.java:391)......依此类推

如果你真的需要完整的痕迹,我可以提供它,但它很长。我不确定getRealPathFromConn是关于什么的。我试过谷歌搜索,但还没有得出结论。在跟踪中,它们确实导致各种应用程序中的不同文件,但是所讨论的行似乎没有任何共同之处。

任何关于可能是什么原因或我应该在下一步看哪里的想法都会有所帮助。

编辑:我忘了说,我“相信”这是星期一开始的。在星期一之前发生变化的唯一真实情况如下:

我们有一个应用结构:

root/app1/application.cfc
root/app2/application.cfc
root/app3/application.cfc
root/app3/website1
root/app3/website2
root/app3/website3

我更改了结构,因此两个网站都有自己的application.cfc,因为我们正在慢慢推出网站工作方式的变化。我现在正在对其中两个进行测试。自从我进行了更改后,apppool一直在为app1崩溃应用程序池。不是任何网站,但我觉得它可能是相关的。

更新将Coldfusion更新到最新版本。 (10,0,7,283649)系统运行了大约一个星期,今天早上坠毁了。

当时的Coldfusion-error.log:

Jan 25, 2013 8:09:11 AM org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in     production environments was not found on the java.library.path:     C:\\ColdFusion10\\cfusion\lib;C:\\ColdFusion10\\cfusion\jintegra\bin;C:\\ColdFusion10\\cfus ion\jintegra\bin\international;C:\\ColdFusion10\\cfusion\lib\oosdk\classes\win
Jan 25, 2013 8:09:12 AM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["ajp-bio-8012"]
Jan 25, 2013 8:09:12 AM org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
Jan 25, 2013 8:09:12 AM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.23
Jan 25, 2013 8:09:21 AM org.apache.catalina.core.ApplicationContext log
INFO: ColdFusionStartUpServlet: ColdFusion: Starting application services
Jan 25, 2013 8:09:21 AM org.apache.catalina.core.ApplicationContext log
INFO: ColdFusionStartUpServlet: ColdFusion: VM version = 20.4-b02
Jan 25, 2013 8:09:29 AM org.apache.catalina.core.ApplicationContext log
INFO: CFMxmlServlet: Macromedia Flex Build: 87315.134646
Jan 25, 2013 8:09:35 AM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-bio-8012"]
Jan 25, 2013 8:09:35 AM com.adobe.coldfusion.launcher.Launcher run
INFO: Server startup in 25362 ms
Jan 25, 2013 8:10:04 AM org.apache.coyote.ajp.AjpProcessor getRealPathFromServer
SEVERE: Error in getRealPathFromConn
java.net.SocketException: Connection reset
    at java.net.SocketInputStream.read(SocketInputStream.java:168)
at org.apache.coyote.ajp.AjpProcessor.read(AjpProcessor.java:319)
at org.apache.coyote.ajp.AjpProcessor.readMessage(AjpProcessor.java:445)
at org.apache.coyote.ajp.AjpProcessor.readString(AjpProcessor.java:425)
at org.apache.coyote.ajp.AjpProcessor.getRealPathFromServer(AjpProcessor.java:407)
at org.apache.coyote.ajp.AbstractAjpProcessor.getRealPath(AbstractAjpProcessor.java:1154)
at org.apache.naming.resources.FileDirContext.doGetRealPath(FileDirContext.java:198)
at org.apache.naming.resources.BaseDirContext.getRealPath(BaseDirContext.java:412)
at org.apache.catalina.core.StandardContext.getRealPath(StandardContext.java:4475)
at org.apache.catalina.core.ApplicationContext.getRealPath(ApplicationContext.java:414)
at org.apache.catalina.core.ApplicationContextFacade.getRealPath(ApplicationContextFacade.java:335)
at coldfusion.runtime.ServletContextWrapper.doGetRealPath(ServletContextWrapper.java:179)
at coldfusion.runtime.ServletContextWrapper._doGetRealPath(ServletContextWrapper.java:116)
at coldfusion.runtime.ServletContextWrapper.getRealPath(ServletContextWrapper.java:98)
at coldfusion.runtime.TemplateProxyFactory.getFullName(TemplateProxyFactory.java:1092)
at coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:202)
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.ApplicationFilter.invoke(ApplicationFilter.java:226)
at coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:48)
at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40)
at coldfusion.filter.PathFilter.invoke(PathFilter.java:112)
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:46)
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:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
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:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:928)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:414)
at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:204)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:539)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:298)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)

GetRealPathFromConn异常一次接一个地大约20次左右。 在事件查看器中,我当然在IIS关闭池之前有5个警告:

A process serving application pool 'domain.com' terminated unexpectedly. The process id was '3732'. The process exit code was '0xff'.
A process serving application pool 'domain.com' suffered a fatal communication error with the Windows Process Activation Service. The process id was '3052'. The data field contains the error number.
A process serving application pool 'domain.com' terminated unexpectedly. The process id was '7972'. The process exit code was '0xff'.
A process serving application pool 'domain.com' suffered a fatal communication error with the Windows Process Activation Service. The process id was '4736'. The data field contains the error number.
A process serving application pool 'domain.com' terminated unexpectedly. The process id was '8016'. The process exit code was '0xff'.
Application pool 'domain.com' is being automatically disabled due to a series of failures in the process(es) serving that application pool.

1 个答案:

答案 0 :(得分:0)

所以,这个问题与修复的CF bug“相关”。但是我们仍然遇到问题,但日志中不再出现此错误。

我们认为我们遇到的问题是处理Coldfusion使用的IIS / Tomcat连接器。我将关闭它,因为它已修复,但相关问题仍然存在。

我不知道如何将其迁移到我的ServerFault问题:https://serverfault.com/questions/487643/tomcat-cf10-iis7-5-connector-tuning-help-503-errors