[ http://wso2.org/jira/browse/WSAS-695?page=comments#action_14714 ] Charitha Kankanamge commented on WSAS-695: ------------------------------------------
Sumedha, These are not concurrent requests. As I mentioned, my AB command did not include concurrency. So it defaults to 1. No concurrency. regards Charitha > Data services: SQL exception: Connection is closed error occurs when sending > ~200 requests to a data service which has a query configured with stored proc > ---------------------------------------------------------------------------------------------------------------------------------------------------------- > > Key: WSAS-695 > URL: http://wso2.org/jira/browse/WSAS-695 > Project: WSO2 WSAS > Issue Type: Bug > Components: data-services > Environment: winxp ,jdk15, MySQL5, WSAS2.2-qabuild6 > Reporter: Charitha Kankanamge > Assigned To: sumedha rubasinghe > Priority: Critical > Attachments: blogds.dbs > > > I'm getting a connection closed - SQL exception when sending multiple > requests to a data service in the default system configuration (MySQL+WinXP > default configuration). > The following simple data service request has been sent using Apachebench. > ab -p D:\testing-resources\ds-request-sp.xml -n 200 -k -H "SOAPAction: > urn:operation1" -T "text/xml; charset=UTF-8" > "http://192.168.1.2:9762/services/blogds" > Request: > ------------ > <?xml version='1.0' encoding='UTF-8'?> > <soapenv:Envelope > xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> > <s:Body> > <p:operation1 xmlns:p="http://ws.wso2.org/dataservice"> > <empid>1</empid> > </p:operation1> > </s:Body> > </soapenv:Envelope> > Following exception can be seen in WSAS console when ~200 messages are > transmitted to the server. > ERROR [2008-01-15 21:19:55,406] Connection is closed. > ERROR [2008-01-15 21:19:55,406] Error occured > org.apache.axis2.AxisFault: Exception occurred while trying to commit. > at > org.wso2.ws.dataservice.DBUtils.getStoredProcedureResult(DBUtils.java:433) > at org.wso2.ws.dataservice.DBUtils.getRDBMSResult(DBUtils.java:175) > at org.wso2.ws.dataservice.DBUtils.processSQLQuery(DBUtils.java:108) > at org.wso2.ws.dataservice.DBUtils.invoke(DBUtils.java:658) > at > org.wso2.ws.dataservice.DBMessageReceiver.invokeBusinessLogic(DBMessageReceiver.java:41) > at > org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(AbstractInOutSyncMessageReceiver.java:42) > at > org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:96) > at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:148) > at > org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275) > at > org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:121) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.wso2.adminui.AdminUIServletFilter.doFilter(AdminUIServletFilter.java:142) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) > at > org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:667) > at > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) > at > org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) > at java.lang.Thread.run(Thread.java:595) > Caused by: java.sql.SQLException: Connection is closed. > at > org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.checkOpen(PoolngDataSource.java:175) > at > org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.commit(PoolingDataSource.java:199) > at > org.wso2.ws.dataservice.DBUtils.getStoredProcedureResult(DBUtils.java:428) > ... 28 more > ERROR [2008-01-15 21:19:55,421] Error occured while connecting to database > com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: Data source > rejected establishment of connection, message from server: "Too many > connections" > at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:981) > at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:957) > at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1079) > at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2032) > at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:729) > at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:298) > at > com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:283) > at java.sql.DriverManager.getConnection(DriverManager.java:525) > at java.sql.DriverManager.getConnection(DriverManager.java:171) > at > org.apache.commons.dbcp.DriverManagerConnectionFactory.createConnection(DriverManagerConn > ectionFactory.java:65) > at > org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.ja > va:294) > at > org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:840) > at > org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:96) > at org.wso2.ws.dataservice.DBUtils.createConnection(DBUtils.java:1137) > at > org.wso2.ws.dataservice.DBUtils.checkDBConnectionStatus(DBUtils.java:241) > at > org.wso2.ws.dataservice.DBUtils.getStoredProcedureResult(DBUtils.java:268) > at org.wso2.ws.dataservice.DBUtils.getRDBMSResult(DBUtils.java:175) > at org.wso2.ws.dataservice.DBUtils.processSQLQuery(DBUtils.java:108) > at org.wso2.ws.dataservice.DBUtils.invoke(DBUtils.java:658) > at > org.wso2.ws.dataservice.DBMessageReceiver.invokeBusinessLogic(DBMessageReceiver.java:41) > at > org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(AbstractI > nOutSyncMessageReceiver.java:42) > at > org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:9 > 6) > at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:148) > at > org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUt > ils.java:275) > at > org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:121) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.j > ava:252) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.wso2.adminui.AdminUIServletFilter.doFilter(AdminUIServletFilter.java:142) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.j > ava:202) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) > at > org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Htt > p11BaseProtocol.java:667) > at > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) > at > org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.ja > va:80) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) > at java.lang.Thread.run(Thread.java:595) > Data service configuration is attached here with. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://wso2.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira _______________________________________________ Wsas-java-dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/wsas-java-dev
