DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://issues.apache.org/bugzilla/show_bug.cgi?id=30523>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://issues.apache.org/bugzilla/show_bug.cgi?id=30523 hands out connections though broken at back end Summary: hands out connections though broken at back end Product: Commons Version: 1.0 Alpha Platform: Other OS/Version: Linux Status: UNCONFIRMED Severity: Normal Priority: Other Component: Dbcp AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] The setup: Hibernate Session is fetched from a Hibernate SessionFactory, created from a Hibernate Configuration which uses JNDI/DBCP setup by Tomcat. The entry is found below. The problem: After tomcat has completed starting up, all is well. No problems, but if I restart the PostgreSQL database (as in /etc/init.d/postgres restart), the Connections handed out by DBCP fails to execute queries. Actual results: The pool becomes unusable. Expected results: The pool detects the problem and reinitiates all connections to the database. Stacktrace: (heavily reduced) javax.servlet.ServletException: Couldn't load todo items from database. at se.csbnet.nvg.worksupport.actions.ViewTodoList.service(ViewTodoList.java:49) [...] at net.w_sys.mwa.filters.HibernateFilter.doFilter(HibernateFilter.java:142) [...] at org.apache.ajp.tomcat4.Ajp13Processor.process(Ajp13Processor.java:457) at org.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:576) at java.lang.Thread.run(Thread.java:534) Could not execute query net.sf.hibernate.JDBCException: Could not execute query at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1539) at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1513) at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1505) at se.csbnet.nvg.worksupport.actions.ViewTodoList.service(ViewTodoList.java:37) [...] at net.w_sys.mwa.filters.HibernateFilter.doFilter(HibernateFilter.java:142) [...] at org.apache.ajp.tomcat4.Ajp13Processor.process(Ajp13Processor.java:457) at org.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:576) at java.lang.Thread.run(Thread.java:534) Caused by: org.postgresql.util.PSQLException: An IO erro occured while sending to the backend - Exception: java.net.SocketException: Broken pipe Stack Trace: java.net.SocketException: Broken pipe at java.net.SocketOutputStream.socketWrite0(Native Method) at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92) at java.net.SocketOutputStream.write(SocketOutputStream.java:136) at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:66) at java.io.BufferedOutputStream.write(BufferedOutputStream.java:79) at org.postgresql.core.PGStream.SendChar(PGStream.java:66) at org.postgresql.core.QueryExecutor.sendQueryV3(QueryExecutor.java:320) [...] at org.postgresql.jdbc1.AbstractJdbc1Statement.executeQuery(AbstractJdbc1Statement.java:233) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:205) at net.sf.hibernate.impl.BatcherImpl.getResultSet(BatcherImpl.java:87) [...] at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1505) at se.csbnet.nvg.worksupport.actions.ViewTodoList.service(ViewTodoList.java:37) [...] at net.w_sys.mwa.filters.HibernateFilter.doFilter(HibernateFilter.java:142) [...] at java.lang.Thread.run(Thread.java:534) End of Stack Trace at org.postgresql.core.QueryExecutor.sendQueryV3(QueryExecutor.java:341) [...] at org.postgresql.jdbc1.AbstractJdbc1Statement.executeQuery(AbstractJdbc1Statement.java:233) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:205) at net.sf.hibernate.impl.BatcherImpl.getResultSet(BatcherImpl.java:87) [...] at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1536) ... 50 more An IO erro occured while sending to the backend - Exception: java.net.SocketException: Broken pipe Stack Trace: java.net.SocketException: Broken pipe at java.net.SocketOutputStream.socketWrite0(Native Method) at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92) at java.net.SocketOutputStream.write(SocketOutputStream.java:136) at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:66) at java.io.BufferedOutputStream.write(BufferedOutputStream.java:79) at org.postgresql.core.PGStream.SendChar(PGStream.java:66) [...] at org.postgresql.jdbc1.AbstractJdbc1Statement.executeQuery(AbstractJdbc1Statement.java:233) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:205) at net.sf.hibernate.impl.BatcherImpl.getResultSet(BatcherImpl.java:87) [...] at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1505) at se.csbnet.nvg.worksupport.actions.ViewTodoList.service(ViewTodoList.java:37) [...] at net.w_sys.mwa.filters.HibernateFilter.doFilter(HibernateFilter.java:142) [...] at org.apache.ajp.tomcat4.Ajp13Processor.process(Ajp13Processor.java:457) at org.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:576) at java.lang.Thread.run(Thread.java:534) End of Stack Trace org.postgresql.util.PSQLException: An IO erro occured while sending to the backend - Exception: java.net.SocketException: Broken pipe Stack Trace: java.net.SocketException: Broken pipe at java.net.SocketOutputStream.socketWrite0(Native Method) at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92) at java.net.SocketOutputStream.write(SocketOutputStream.java:136) at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:66) at java.io.BufferedOutputStream.write(BufferedOutputStream.java:79) at org.postgresql.core.PGStream.SendChar(PGStream.java:66) at org.postgresql.core.QueryExecutor.sendQueryV3(QueryExecutor.java:320) [...] at org.postgresql.jdbc1.AbstractJdbc1Statement.executeQuery(AbstractJdbc1Statement.java:233) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:205) at net.sf.hibernate.impl.BatcherImpl.getResultSet(BatcherImpl.java:87) [...] at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1505) at se.csbnet.nvg.worksupport.actions.ViewTodoList.service(ViewTodoList.java:37) [...] at net.w_sys.mwa.filters.HibernateFilter.doFilter(HibernateFilter.java:142) [...] at org.apache.ajp.tomcat4.Ajp13Processor.process(Ajp13Processor.java:457) at org.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:576) at java.lang.Thread.run(Thread.java:534) End of Stack Trace at org.postgresql.core.QueryExecutor.sendQueryV3(QueryExecutor.java:341) [...] at org.postgresql.jdbc1.AbstractJdbc1Statement.executeQuery(AbstractJdbc1Statement.java:233) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:205) at net.sf.hibernate.impl.BatcherImpl.getResultSet(BatcherImpl.java:87) [...] at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1505) at se.csbnet.nvg.worksupport.actions.ViewTodoList.service(ViewTodoList.java:37) [...] at net.w_sys.mwa.filters.HibernateFilter.doFilter(HibernateFilter.java:142) [...] at org.apache.ajp.tomcat4.Ajp13Processor.process(Ajp13Processor.java:457) at org.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:576) at java.lang.Thread.run(Thread.java:534) The entry in Tomcat's server.xml looks like this: <Context path="/nvg" docBase="/some/where/" reloadable="false"> <Resource name="jdbc/nvg" scope="Shareable" type="javax.sql.DataSource" /> <ResourceParams name="jdbc/nvg"> <parameter><name>factory</name><value>org.apache.commons.dbcp.BasicDataSourceFactory</value></parameter> <!-- JDBC params --> <parameter><name>url</name><value>jdbc:postgresql://localhost/nvg</value></parameter> <parameter><name>driverClassName</name><value>org.postgresql.Driver</value></parameter> <parameter><name>username</name><value>username</value></parameter> <parameter><name>password</name><value>password</value></parameter> <!-- DBCP params --> <parameter><name>maxWait</name><value>600</value></parameter> <parameter><name>maxIdle</name><value>4</value></parameter> <parameter><name>maxActive</name><value>8</value></parameter> </ResourceParams> </Context> Using commons-dbcp-1.2.1.jar Postgres Version: 7.4.3-1 Postgres JDBC-driver: pg74.214.jdbc3.jar --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
