运行几个小时后,“服务器场节点”中的一个服务器状态变为“无响应”,并且日志文件中存在多个错误:
环境:
操作系统:Windows Server 2012 R2
MobileFirst Platform:8.0.41.0(8.0.0.20161122_1806)
Web服务器:Tomcat 8.0.41
Java:Oracle Java 8u121
Server.xml配置:
<Context docBase="mfpadmin" path="/mfpadmin">
<Environment name="mfp.admin.push.url" value="http://localhost/imfpush" type="java.lang.String" override="false"/>
<Environment name="mfp.admin.authorization.server.url" value="http://localhost/mfp" type="java.lang.String" override="false"/>
<Environment name="mfp.push.authorization.client.id" value="Push_mfp" type="java.lang.String" override="false"/>
<Environment name="mfp.push.authorization.client.secret" value="*********" type="java.lang.String" override="false"/>
<Environment name="mfp.admin.authorization.client.id" value="Admin_mfp" type="java.lang.String" override="false"/>
<Environment name="mfp.admin.authorization.client.secret" value="*********" type="java.lang.String" override="false"/>
<Environment name="mfp.admin.environmentid" value="mfp" type="java.lang.String" override="false"/>
<Environment name="mfp.topology.platform" value="Tomcat" type="java.lang.String" override="false"/>
<Environment name="mfp.config.service.password" value="*********" type="java.lang.String" override="false"/>
<Environment name="mfp.config.service.user" value="configUser_mfpadmin" type="java.lang.String" override="false"/>
<Environment name="mfp.topology.clustermode" value="Farm" type="java.lang.String" override="false"/>
<Environment name="mfp.admin.serverid" value="MY-SRV1" type="java.lang.String" override="false"/>
<Resource name="jdbc/mfpAdminDS" type="javax.sql.DataSource" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" singleton="true"
driverClassName="oracle.jdbc.OracleDriver" url="jdbc:oracle:thin:@OracleDb:1521:MFPPROD" username="****" password="****" auth="Container" maxTotal="14" maxIdle="10" maxWaitMillis="5000"/>
</Context>
错误日志:
SEVERE [http-apr-80-exec-5] com.ibm.mfp.admin.util.ResponseUtil.errorImpl FWLSE3000E: A server error was detected.
<openjpa-2.4.1-r422266:1730418 fatal general error> org.apache.openjpa.persistence.PersistenceException: IO Error: Socket read timed out {prepstmnt 701323185 SELECT t0.ID, t0.API_VERSION, t0.LATEST_FINISHED_TRANS, t1.ID, t1.APP_SERVER_ID, t1.DESCRIPTION, t2.ID, t2.API_VERSION, t2.LATEST_FINISHED_TRANS, t2.LATEST_TRANS, t2.NAME, t2.SYNC_STATUS, t1.STATUS, t1.TIME_CREATED, t1.TIME_UPDATED, t1.TYPE, t1.USER_NAME, t0.NAME, t0.SYNC_STATUS FROM PROJECT t0, TRANSACTIONS t1, PROJECT t2 WHERE (t0.NAME = ?) AND t0.LATEST_TRANS = t1.ID(+) AND t1.PROJECT_ID = t2.ID(+)} [code=17002, state=08006]
at org.apache.openjpa.jdbc.sql.DBDictionary.narrow(DBDictionary.java:5003)
at org.apache.openjpa.jdbc.sql.DBDictionary.newStoreException(DBDictionary.java:4963)
at org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:133)
at org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:107)
at org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:59)
at org.apache.openjpa.jdbc.kernel.PreparedSQLStoreQuery$PreparedSQLExecutor.executeQuery(PreparedSQLStoreQuery.java:139)
at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:1011)
at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:869)
at org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:800)
at org.apache.openjpa.kernel.DelegatingQuery.execute(DelegatingQuery.java:541)
at org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:274)
at org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl.java:290)
at com.ibm.worklight.admin.jpa.helper.ProjectEntityHelper.getProject(ProjectEntityHelper.java:64)
at com.ibm.worklight.admin.jpa.datastore.JPAStoreManager.getProject(JPAStoreManager.java:440)
at com.ibm.mfp.admin.services.v2.ApplicationService.getAllApplications(ApplicationService.java:258)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.wink.server.internal.handlers.InvokeMethodHandler.handleRequest(InvokeMethodHandler.java:63)
at org.apache.wink.server.handlers.AbstractHandler.handleRequest(AbstractHandler.java:33)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
at org.apache.wink.server.internal.handlers.CreateInvocationParametersHandler.handleRequest(CreateInvocationParametersHandler.java:54)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
at org.apache.wink.server.internal.handlers.FindResourceMethodHandler.handleResourceMethod(FindResourceMethodHandler.java:151)
at org.apache.wink.server.internal.handlers.FindResourceMethodHandler.handleRequest(FindResourceMethodHandler.java:65)
at org.apache.wink.server.internal.handlers.FindResourceMethodHandler.handleSubResourceLocator(FindResourceMethodHandler.java:230)
at org.apache.wink.server.internal.handlers.FindResourceMethodHandler.handleRequest(FindResourceMethodHandler.java:115)
at org.apache.wink.server.internal.handlers.FindResourceMethodHandler.handleSubResourceLocator(FindResourceMethodHandler.java:230)
at org.apache.wink.server.internal.handlers.FindResourceMethodHandler.handleRequest(FindResourceMethodHandler.java:115)
at org.apache.wink.server.internal.handlers.FindResourceMethodHandler.handleSubResourceLocator(FindResourceMethodHandler.java:230)
at org.apache.wink.server.internal.handlers.FindResourceMethodHandler.handleRequest(FindResourceMethodHandler.java:115)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
at org.apache.wink.server.internal.handlers.FindRootResourceHandler.handleRequest(FindRootResourceHandler.java:95)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
at org.apache.wink.server.internal.handlers.HeadMethodHandler.handleRequest(HeadMethodHandler.java:53)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
at org.apache.wink.server.internal.handlers.OptionsMethodHandler.handleRequest(OptionsMethodHandler.java:46)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
at org.apache.wink.server.internal.handlers.SearchResultHandler.handleRequest(SearchResultHandler.java:33)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
at org.apache.wink.server.internal.log.ResourceInvocation.handleRequest(ResourceInvocation.java:92)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
at org.apache.wink.server.internal.log.Requests.handleRequest(Requests.java:76)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
at org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
at org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:67)
at org.apache.wink.server.handlers.AbstractHandlersChain.run(AbstractHandlersChain.java:52)
at org.apache.wink.server.internal.RequestProcessor.handleRequestWithoutFaultBarrier(RequestProcessor.java:207)
at org.apache.wink.server.internal.RequestProcessor.handleRequest(RequestProcessor.java:154)
at org.apache.wink.server.internal.servlet.RestServlet.service(RestServlet.java:133)
at com.ibm.mfp.admin.services.RestServlet.service(RestServlet.java:43)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
at com.ibm.mfp.admin.services.RestFilter.doFilter(RestFilter.java:61)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
at com.ibm.worklight.admin.common.filter.HSTSFilter.doFilter(HSTSFilter.java:110)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:94)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:616)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:620)
at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:291)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:509)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1104)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:684)
at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2508)
at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2497)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Unknown Source)
Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: IO Error: Socket read timed out {prepstmnt 701323185 SELECT t0.ID, t0.API_VERSION, t0.LATEST_FINISHED_TRANS, t1.ID, t1.APP_SERVER_ID, t1.DESCRIPTION, t2.ID, t2.API_VERSION, t2.LATEST_FINISHED_TRANS, t2.LATEST_TRANS, t2.NAME, t2.SYNC_STATUS, t1.STATUS, t1.TIME_CREATED, t1.TIME_UPDATED, t1.TYPE, t1.USER_NAME, t0.NAME, t0.SYNC_STATUS FROM PROJECT t0, TRANSACTIONS t1, PROJECT t2 WHERE (t0.NAME = ?) AND t0.LATEST_TRANS = t1.ID(+) AND t1.PROJECT_ID = t2.ID(+)} [code=17002, state=08006]
at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:218)
at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:202)
at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$700(LoggingConnectionDecorator.java:58)
at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement.executeQuery(LoggingConnectionDecorator.java:1117)
at org.apache.openjpa.lib.jdbc.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:268)
at org.apache.openjpa.jdbc.kernel.JDBCStoreManager$CancelPreparedStatement.executeQuery(JDBCStoreManager.java:1800)
at org.apache.openjpa.lib.jdbc.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:258)
at org.apache.openjpa.jdbc.kernel.PreparedSQLStoreQuery$PreparedSQLExecutor.executeQuery(PreparedSQLStoreQuery.java:118)
... 91 more