commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Phil Steitz <phil.ste...@gmail.com>
Subject Re: [dbcp] Re: "Connection reset" exceptions
Date Wed, 07 Apr 2010 02:16:46 GMT
Bruno Melloni wrote:
> Update:  Upgrading to the current version of DBCP and Pool made no difference.
> 
> -----Original Message-----
> From: Bruno Melloni
> Sent: Tuesday, April 06, 2010 8:50 AM
> To: Commons Users List
> Subject: RE: [dbcp] Re: "Connection reset" exceptions
> 
> Thanks Phil,
> 
> My apologies on the missing [dbcp] prefix.  This is the first time I use the mailing list and I followed the 'mailing lists' link from the DBCP project without giving it much thought.  I didn't realize that the dbcp mailing list was shared across all of the commons projects.
> 
No problem.  It just makes it easier to scan and search for things
if we follow the convention.  It is a good idea to update the
commons component web pages to tell people that.  Thanks!

> Versions: I am using Java 6, DBCP 1.2.1, Pool 1.3.  Now that I looked at the versions, it seems like an obvious thing to try is to upgrade to the current versions.  I'll start with that immediately.
> 
> More background:
> - The problem seems to happen in a very random way.
> - It happens on a command line application as well as on an a web service (called by cmd line app) running on jBoss.
> - On the command line application it happens using Spring JDBC, on the web service it happens using Spring/JPA/Hibernate.
> - It seems to happen about 10-20 times and then it causes the process to hang.
> - One time it reached the hung point quickly (after processing about 1000 queries) and the next run it took longer (after 8000 queries).
> - The problem never happened for months, then it started (the code changed, but not in any way that should affect this - it is possible that something was changed on the DB servers but I have no access to that information).
> - Although unlikely, I would not rule out network instability.
> 
> - My research seems to point to SQL Server closing idle connections (surprising since the client process is running 20 parallel threads and they are very active).
> - All of the non-dbcp solution suggestions I saw for the "Connection reset" exception also recommended setting an idle test period and timeout.  I don't know if DBCP has (or needs configuring) that capability.  Example:  http://mrather.blogspot.com/2008/09/hibernate-and-connection-pools.html (this example is typical of the recommended solutions I found on Google, and it claims that there is a bug in DBCP - but that might be an obsolete statement).
> 
Thanks for providing the stack trace and complete info.  I see three
different, though possibly related problems in the stack traces.
The first is a connection reset (actually in another post).  Google
the driver error and you can see indications of possible cause.  The
second is TDS protocol error.  Google that one as well.  Finally,
there is the driver reporting that the connection is closed when
hibernate/dbcp are trying to do something with it.  In that  case, a
connection that hibernate and dbcp are using has been closed somehow.

Whether these problems are due to driver bugs, intermittent network
problems, inadvertent connection sharing across threads, or a
problem on the database side, you really should determine what is
causing the physical connections to be closed or reset without
hibernate/dbcp knowing about it. If you have not done so, you should
make sure your apps are loading the latest MS SQL JDBC driver.

DBCP currently does not support periodic testing of connections that
are checked out to clients, which is what would be required to
ensure that once a connection has been validated and checked out
from the pool it remains healthy.  There are configuration settings
that will cause connections waiting to be checked out from the pool
to be periodically tested; but there is no support for checking
connections that are being used by clients. Using a validation query
(as you are) and keeping testOnBorrow = true will make sure that the
connections are good when they are checked out of the pool.  To make
sure they stay good while in use, the best thing to do is to close
them (i.e. return them to the pool) as soon as you can and get new
ones from the pool when you need them.


Phil


> Log (complete) from the command line application
> 
> 13:57:17,637  INFO net.cndc.mb.client.Main:50 - log4j initialized.
> 13:57:21,559  INFO net.cndc.mb.client.Processor:76 - Processing batch for hostname: CEADAVDEV02
> 13:57:22,668  INFO net.cndc.mb.client.Processor:96 - Launched 20 threads for processor: CEADAVDEV02
> 14:10:08,585 ERROR net.cndc.gp2cog.client.Gp2cogCeCustomDaoImpl:64 - Exception thrown retrieving rows to process: CallableStatementCallback; uncategorized SQLException for SQL [{call GP2COG_ReturnResultsSet(?, ?, ?, ?)}]; SQL state [null]; error code [0]; Connection reset; nested exception is com.microsoft.sqlserver.jdbc.SQLServerException: Connection reset
> 15:34:37,834 ERROR net.cndc.gp2cog.client.Gp2cogCeCustomDaoImpl:64 - Exception thrown retrieving rows to process: CallableStatementCallback; uncategorized SQLException for SQL [{call GP2COG_ReturnResultsSet(?, ?, ?, ?)}]; SQL state [null]; error code [0]; Connection reset; nested exception is com.microsoft.sqlserver.jdbc.SQLServerException: Connection reset
> 15:54:53,311 ERROR net.cndc.gp2cog.client.Gp2cogCeCustomDaoImpl:64 - Exception thrown retrieving rows to process: CallableStatementCallback; SQL [{call GP2COG_ReturnResultsSet(?, ?, ?, ?)}]; Connection reset; nested exception is com.microsoft.sqlserver.jdbc.SQLServerException: Connection reset
> 16:54:35,815 ERROR net.cndc.gp2cog.client.Gp2cogCeCustomDaoImpl:64 - Exception thrown retrieving rows to process: CallableStatementCallback; uncategorized SQLException for SQL [{call GP2COG_ReturnResultsSet(?, ?, ?, ?)}]; SQL state [null]; error code [0]; Connection reset; nested exception is com.microsoft.sqlserver.jdbc.SQLServerException: Connection reset
> 17:10:18,934 ERROR net.cndc.gp2cog.client.Gp2cogCeCustomDaoImpl:64 - Exception thrown retrieving rows to process: CallableStatementCallback; uncategorized SQLException for SQL [{call GP2COG_ReturnResultsSet(?, ?, ?, ?)}]; SQL state [null]; error code [0]; Connection reset; nested exception is com.microsoft.sqlserver.jdbc.SQLServerException: Connection reset
> 17:29:05,224 ERROR net.cndc.gp2cog.client.Gp2cogCeCustomDaoImpl:64 - Exception thrown retrieving rows to process: CallableStatementCallback; uncategorized SQLException for SQL [{call GP2COG_ReturnResultsSet(?, ?, ?, ?)}]; SQL state [null]; error code [0]; Connection reset; nested exception is com.microsoft.sqlserver.jdbc.SQLServerException: Connection reset
> 17:56:02,182 ERROR net.cndc.gp2cog.client.Gp2cogCeCustomDaoImpl:64 - Exception thrown retrieving rows to process: CallableStatementCallback; uncategorized SQLException for SQL [{call GP2COG_ReturnResultsSet(?, ?, ?, ?)}]; SQL state [null]; error code [0]; Connection reset; nested exception is com.microsoft.sqlserver.jdbc.SQLServerException: Connection reset
> 20:02:14,446 ERROR net.cndc.gp2cog.client.Gp2cogCeCustomDaoImpl:64 - Exception thrown retrieving rows to process: CallableStatementCallback; SQL [{call GP2COG_ReturnResultsSet(?, ?, ?, ?)}]; Connection reset; nested exception is com.microsoft.sqlserver.jdbc.SQLServerException: Connection reset
> 
> Log (snippet) from the web service:
> 
> 2010-04-05 09:42:20,438 ERROR [STDERR] Apr 5, 2010 9:42:20 AM com.microsoft.sqlserver.jdbc.TDSReader throwInvalidTDS
> SEVERE: ConnectionID:45 got unexpected value in TDS response at offset:778
> 2010-04-05 09:42:20,438 WARN  [org.hibernate.jdbc.AbstractBatcher] exception clearing maxRows/queryTimeout
> com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed.
>         at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170)
>         at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:304)
>         at com.microsoft.sqlserver.jdbc.SQLServerStatement.checkClosed(SQLServerStatement.java:904)
>         at com.microsoft.sqlserver.jdbc.SQLServerStatement.getMaxRows(SQLServerStatement.java:937)
>         at org.apache.commons.dbcp.DelegatingStatement.getMaxRows(DelegatingStatement.java:234)
>         at org.hibernate.jdbc.AbstractBatcher.closeQueryStatement(AbstractBatcher.java:277)
>         at org.hibernate.jdbc.AbstractBatcher.closeQueryStatement(AbstractBatcher.java:213)
>         at org.hibernate.loader.Loader.doQuery(Loader.java:726)
>         at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
>         at org.hibernate.loader.Loader.doList(Loader.java:2220)
>         at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2104)
>         at org.hibernate.loader.Loader.list(Loader.java:2099)
>         at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:378)
>         at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:341)
>         at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
>         at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1121)
>         at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
>         at org.hibernate.ejb.QueryImpl.getSingleResult(QueryImpl.java:81)
>         at net.cndc.mb.service.db.MBProcessorDaoImpl.findByHostname(MBProcessorDaoImpl.java:56)
>         at sun.reflect.GeneratedMethodAccessor249.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
>         at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>         at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>         at $Proxy147.findByHostname(Unknown Source)
>         at net.cndc.mb.service.db.MBProcessorServiceImpl.recordWorkUnitResults(MBProcessorServiceImpl.java:115)
>         at net.cndc.mb.service.ws.MassBatchImpl.recordWorkUnitResults(MassBatchImpl.java:69)
>         at sun.reflect.GeneratedMethodAccessor258.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:166)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:82)
>         at org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:55)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:68)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:57)
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>         at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:95)
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:89)
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:99)
>         at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:368)
>         at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:183)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:163)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost(AbstractCXFServlet.java:141)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
>         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
>         at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
>         at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
>         at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
>         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
>         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>         at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>         at java.lang.Thread.run(Thread.java:619)
> 2010-04-05 09:42:20,438 WARN  [org.hibernate.util.JDBCExceptionReporter] SQL Error: 0, SQLState: 08S01
> 2010-04-05 09:42:20,438 ERROR [org.hibernate.util.JDBCExceptionReporter] The TDS protocol stream is not valid.
> 2010-04-05 09:42:20,438 ERROR [net.cndc.mb.service.db.MBProcessorDaoImpl] findByHostname Exception for hostname=CEADAVDEV02
> javax.persistence.PersistenceException: org.hibernate.exception.JDBCConnectionException: could not execute query
>         at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:637)
>         at org.hibernate.ejb.QueryImpl.getSingleResult(QueryImpl.java:107)
>         at net.cndc.mb.service.db.MBProcessorDaoImpl.findByHostname(MBProcessorDaoImpl.java:56)
>         at sun.reflect.GeneratedMethodAccessor249.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
>         at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>         at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>         at $Proxy147.findByHostname(Unknown Source)
>         at net.cndc.mb.service.db.MBProcessorServiceImpl.recordWorkUnitResults(MBProcessorServiceImpl.java:115)
>         at net.cndc.mb.service.ws.MassBatchImpl.recordWorkUnitResults(MassBatchImpl.java:69)
>         at sun.reflect.GeneratedMethodAccessor258.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:166)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:82)
>         at org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:55)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:68)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:57)
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>         at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:95)
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:89)
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:99)
>         at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:368)
>         at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:183)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:163)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost(AbstractCXFServlet.java:141)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
>         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
>         at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
>         at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
>         at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
>         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
>         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>         at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>         at java.lang.Thread.run(Thread.java:619)
> Caused by: org.hibernate.exception.JDBCConnectionException: could not execute query
>         at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:74)
>         at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
>         at org.hibernate.loader.Loader.doList(Loader.java:2223)
>         at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2104)
>         at org.hibernate.loader.Loader.list(Loader.java:2099)
>         at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:378)
>         at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:341)
>         at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
>         at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1121)
>         at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
>         at org.hibernate.ejb.QueryImpl.getSingleResult(QueryImpl.java:81)
>         ... 53 more
> Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: The TDS protocol stream is not valid.
>         at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:1368)
>         at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:1355)
>         at com.microsoft.sqlserver.jdbc.SQLServerConnection.throwInvalidTDS(SQLServerConnection.java:1344)
>         at com.microsoft.sqlserver.jdbc.TDSReader.throwInvalidTDS(IOBuffer.java:3190)
>         at com.microsoft.sqlserver.jdbc.SQLServerResultSet$FetchBuffer$FetchBufferTokenHandler.onRetValue(SQLServerResultSet.java:4624)
>         at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:66)
>         at com.microsoft.sqlserver.jdbc.SQLServerResultSet$FetchBuffer.nextRow(SQLServerResultSet.java:4696)
>         at com.microsoft.sqlserver.jdbc.SQLServerResultSet.fetchBufferNext(SQLServerResultSet.java:1683)
>         at com.microsoft.sqlserver.jdbc.SQLServerResultSet.next(SQLServerResultSet.java:956)
>         at org.apache.commons.dbcp.DelegatingResultSet.next(DelegatingResultSet.java:168)
>         at org.hibernate.loader.Loader.doQuery(Loader.java:697)
>         at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
>         at org.hibernate.loader.Loader.doList(Loader.java:2220)
>         ... 61 more
> 2010-04-05 09:42:20,438 ERROR [org.hibernate.transaction.JDBCTransaction] Could not toggle autocommit
> com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed.
>         at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170)
>         at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:304)
>         at com.microsoft.sqlserver.jdbc.SQLServerConnection.setAutoCommit(SQLServerConnection.java:1592)
>         at org.apache.commons.dbcp.DelegatingConnection.setAutoCommit(DelegatingConnection.java:268)
>         at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.setAutoCommit(PoolingDataSource.java:293)
>         at org.hibernate.transaction.JDBCTransaction.toggleAutoCommit(JDBCTransaction.java:194)
>         at org.hibernate.transaction.JDBCTransaction.rollbackAndResetAutoCommit(JDBCTransaction.java:186)
>         at org.hibernate.transaction.JDBCTransaction.rollback(JDBCTransaction.java:162)
>         at org.hibernate.ejb.TransactionImpl.commit(TransactionImpl.java:50)
>         at org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:456)
>         at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:732)
>         at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:701)
>         at org.springframework.transaction.interceptor.TransactionAspectSupport.completeTransactionAfterThrowing(TransactionAspectSupport.java:359)
>         at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>         at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>         at $Proxy147.findByHostname(Unknown Source)
>         at net.cndc.mb.service.db.MBProcessorServiceImpl.recordWorkUnitResults(MBProcessorServiceImpl.java:115)
>         at net.cndc.mb.service.ws.MassBatchImpl.recordWorkUnitResults(MassBatchImpl.java:69)
>         at sun.reflect.GeneratedMethodAccessor258.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:166)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:82)
>         at org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:55)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:68)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:57)
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>         at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:95)
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:89)
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:99)
>         at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:368)
>         at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:183)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:163)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost(AbstractCXFServlet.java:141)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
>         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
>         at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
>         at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
>         at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
>         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
>         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>         at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>         at java.lang.Thread.run(Thread.java:619)
> 2010-04-05 09:42:20,438 ERROR [org.hibernate.transaction.JDBCTransaction] JDBC rollback failed
> com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed.
>         at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170)
>         at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:304)
>         at com.microsoft.sqlserver.jdbc.SQLServerConnection.rollback(SQLServerConnection.java:1655)
>         at org.apache.commons.dbcp.DelegatingConnection.rollback(DelegatingConnection.java:265)
>         at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.rollback(PoolingDataSource.java:288)
>         at org.hibernate.transaction.JDBCTransaction.rollbackAndResetAutoCommit(JDBCTransaction.java:183)
>         at org.hibernate.transaction.JDBCTransaction.rollback(JDBCTransaction.java:162)
>         at org.hibernate.ejb.TransactionImpl.commit(TransactionImpl.java:50)
>         at org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:456)
>         at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:732)
>         at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:701)
>         at org.springframework.transaction.interceptor.TransactionAspectSupport.completeTransactionAfterThrowing(TransactionAspectSupport.java:359)
>         at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>         at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>         at $Proxy147.findByHostname(Unknown Source)
>         at net.cndc.mb.service.db.MBProcessorServiceImpl.recordWorkUnitResults(MBProcessorServiceImpl.java:115)
>         at net.cndc.mb.service.ws.MassBatchImpl.recordWorkUnitResults(MassBatchImpl.java:69)
>         at sun.reflect.GeneratedMethodAccessor258.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:166)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:82)
>         at org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:55)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:68)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:57)
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>         at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:95)
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:89)
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:99)
>         at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:368)
>         at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:183)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:163)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost(AbstractCXFServlet.java:141)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
>         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
>         at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
>         at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
>         at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
>         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
>         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>         at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>         at java.lang.Thread.run(Thread.java:619)
> 2010-04-05 09:42:20,438 WARN  [org.hibernate.util.JDBCExceptionReporter] SQL Error: 0, SQLState: null
> 2010-04-05 09:42:20,438 ERROR [org.hibernate.util.JDBCExceptionReporter] Already closed.
> 2010-04-05 09:42:20,438 WARN  [org.hibernate.util.JDBCExceptionReporter] SQL Error: 0, SQLState: null
> 2010-04-05 09:42:20,438 ERROR [org.hibernate.util.JDBCExceptionReporter] Already closed.
> 2010-04-05 09:42:20,438 ERROR [org.springframework.transaction.interceptor.TransactionInterceptor] Application exception overridden by commit exception
> net.cndc.mb.common.MBException: Error retrieving processor with hostname=CEADAVDEV02
>         at net.cndc.mb.service.db.MBProcessorDaoImpl.findByHostname(MBProcessorDaoImpl.java:64)
>         at sun.reflect.GeneratedMethodAccessor249.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
>         at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>         at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>         at $Proxy147.findByHostname(Unknown Source)
>         at net.cndc.mb.service.db.MBProcessorServiceImpl.recordWorkUnitResults(MBProcessorServiceImpl.java:115)
>         at net.cndc.mb.service.ws.MassBatchImpl.recordWorkUnitResults(MassBatchImpl.java:69)
>         at sun.reflect.GeneratedMethodAccessor258.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:166)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:82)
>         at org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:55)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:68)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:57)
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>         at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:95)
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:89)
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:99)
>         at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:368)
>         at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:183)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:163)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost(AbstractCXFServlet.java:141)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
>         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
>         at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
>         at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
>         at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
>         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
>         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>         at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>         at java.lang.Thread.run(Thread.java:619)
> 2010-04-05 09:42:25,454 ERROR [STDERR] Apr 5, 2010 9:42:25 AM com.microsoft.sqlserver.jdbc.TDSReader throwInvalidTDS
> SEVERE: ConnectionID:48 got unexpected value in TDS response at offset:778
> 2010-04-05 09:42:25,454 WARN  [org.hibernate.jdbc.AbstractBatcher] exception clearing maxRows/queryTimeout
> com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed.
>         at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170)
>         at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:304)
>         at com.microsoft.sqlserver.jdbc.SQLServerStatement.checkClosed(SQLServerStatement.java:904)
>         at com.microsoft.sqlserver.jdbc.SQLServerStatement.getMaxRows(SQLServerStatement.java:937)
>         at org.apache.commons.dbcp.DelegatingStatement.getMaxRows(DelegatingStatement.java:234)
>         at org.hibernate.jdbc.AbstractBatcher.closeQueryStatement(AbstractBatcher.java:277)
>         at org.hibernate.jdbc.AbstractBatcher.closeQueryStatement(AbstractBatcher.java:213)
>         at org.hibernate.loader.Loader.doQuery(Loader.java:726)
>         at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
>         at org.hibernate.loader.Loader.doList(Loader.java:2220)
>         at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2104)
>         at org.hibernate.loader.Loader.list(Loader.java:2099)
>         at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:378)
>         at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:341)
>         at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
>         at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1121)
>         at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
>         at org.hibernate.ejb.QueryImpl.getSingleResult(QueryImpl.java:81)
>         at net.cndc.mb.service.db.MBProcessorDaoImpl.findByHostname(MBProcessorDaoImpl.java:56)
>         at sun.reflect.GeneratedMethodAccessor249.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
>         at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>         at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>         at $Proxy147.findByHostname(Unknown Source)
>         at net.cndc.mb.service.db.MBProcessorServiceImpl.recordWorkUnitResults(MBProcessorServiceImpl.java:115)
>         at net.cndc.mb.service.ws.MassBatchImpl.recordWorkUnitResults(MassBatchImpl.java:69)
>         at sun.reflect.GeneratedMethodAccessor258.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:166)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:82)
>         at org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:55)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:68)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:57)
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>         at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:95)
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:89)
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:99)
>         at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:368)
>         at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:183)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:163)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost(AbstractCXFServlet.java:141)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
>         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
>         at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
>         at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
>         at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
>         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
>         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>         at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>         at java.lang.Thread.run(Thread.java:619)
> 2010-04-05 09:42:25,454 WARN  [org.hibernate.util.JDBCExceptionReporter] SQL Error: 0, SQLState: 08S01
> 2010-04-05 09:42:25,454 ERROR [org.hibernate.util.JDBCExceptionReporter] The TDS protocol stream is not valid.
> 2010-04-05 09:42:25,454 ERROR [net.cndc.mb.service.db.MBProcessorDaoImpl] findByHostname Exception for hostname=CEADAVDEV02
> javax.persistence.PersistenceException: org.hibernate.exception.JDBCConnectionException: could not execute query
>         at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:637)
>         at org.hibernate.ejb.QueryImpl.getSingleResult(QueryImpl.java:107)
>         at net.cndc.mb.service.db.MBProcessorDaoImpl.findByHostname(MBProcessorDaoImpl.java:56)
>         at sun.reflect.GeneratedMethodAccessor249.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
>         at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>         at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>         at $Proxy147.findByHostname(Unknown Source)
>         at net.cndc.mb.service.db.MBProcessorServiceImpl.recordWorkUnitResults(MBProcessorServiceImpl.java:115)
>         at net.cndc.mb.service.ws.MassBatchImpl.recordWorkUnitResults(MassBatchImpl.java:69)
>         at sun.reflect.GeneratedMethodAccessor258.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:166)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:82)
>         at org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:55)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:68)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:57)
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>         at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:95)
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:89)
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:99)
>         at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:368)
>         at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:183)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:163)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost(AbstractCXFServlet.java:141)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
>         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
>         at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
>         at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
>         at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
>         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
>         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>         at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>         at java.lang.Thread.run(Thread.java:619)
> Caused by: org.hibernate.exception.JDBCConnectionException: could not execute query
>         at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:74)
>         at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
>         at org.hibernate.loader.Loader.doList(Loader.java:2223)
>         at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2104)
>         at org.hibernate.loader.Loader.list(Loader.java:2099)
>         at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:378)
>         at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:341)
>         at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
>         at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1121)
>         at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
>         at org.hibernate.ejb.QueryImpl.getSingleResult(QueryImpl.java:81)
>         ... 53 more
> Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: The TDS protocol stream is not valid.
>         at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:1368)
>         at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:1355)
>         at com.microsoft.sqlserver.jdbc.SQLServerConnection.throwInvalidTDS(SQLServerConnection.java:1344)
>         at com.microsoft.sqlserver.jdbc.TDSReader.throwInvalidTDS(IOBuffer.java:3190)
>         at com.microsoft.sqlserver.jdbc.SQLServerResultSet$FetchBuffer$FetchBufferTokenHandler.onRetValue(SQLServerResultSet.java:4624)
>         at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:66)
>         at com.microsoft.sqlserver.jdbc.SQLServerResultSet$FetchBuffer.nextRow(SQLServerResultSet.java:4696)
>         at com.microsoft.sqlserver.jdbc.SQLServerResultSet.fetchBufferNext(SQLServerResultSet.java:1683)
>         at com.microsoft.sqlserver.jdbc.SQLServerResultSet.next(SQLServerResultSet.java:956)
>         at org.apache.commons.dbcp.DelegatingResultSet.next(DelegatingResultSet.java:168)
>         at org.hibernate.loader.Loader.doQuery(Loader.java:697)
>         at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
>         at org.hibernate.loader.Loader.doList(Loader.java:2220)
>         ... 61 more
> 2010-04-05 09:42:25,454 ERROR [org.hibernate.transaction.JDBCTransaction] Could not toggle autocommit
> com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed.
>         at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170)
>         at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:304)
>         at com.microsoft.sqlserver.jdbc.SQLServerConnection.setAutoCommit(SQLServerConnection.java:1592)
>         at org.apache.commons.dbcp.DelegatingConnection.setAutoCommit(DelegatingConnection.java:268)
>         at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.setAutoCommit(PoolingDataSource.java:293)
>         at org.hibernate.transaction.JDBCTransaction.toggleAutoCommit(JDBCTransaction.java:194)
>         at org.hibernate.transaction.JDBCTransaction.rollbackAndResetAutoCommit(JDBCTransaction.java:186)
>         at org.hibernate.transaction.JDBCTransaction.rollback(JDBCTransaction.java:162)
>         at org.hibernate.ejb.TransactionImpl.commit(TransactionImpl.java:50)
>         at org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:456)
>         at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:732)
>         at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:701)
>         at org.springframework.transaction.interceptor.TransactionAspectSupport.completeTransactionAfterThrowing(TransactionAspectSupport.java:359)
>         at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>         at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>         at $Proxy147.findByHostname(Unknown Source)
>         at net.cndc.mb.service.db.MBProcessorServiceImpl.recordWorkUnitResults(MBProcessorServiceImpl.java:115)
>         at net.cndc.mb.service.ws.MassBatchImpl.recordWorkUnitResults(MassBatchImpl.java:69)
>         at sun.reflect.GeneratedMethodAccessor258.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:166)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:82)
>         at org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:55)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:68)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:57)
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>         at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:95)
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:89)
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:99)
>         at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:368)
>         at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:183)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:163)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost(AbstractCXFServlet.java:141)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
>         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
>         at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
>         at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
>         at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
>         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
>         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>         at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>         at java.lang.Thread.run(Thread.java:619)
> 2010-04-05 09:42:25,454 ERROR [org.hibernate.transaction.JDBCTransaction] JDBC rollback failed
> com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed.
>         at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170)
>         at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:304)
>         at com.microsoft.sqlserver.jdbc.SQLServerConnection.rollback(SQLServerConnection.java:1655)
>         at org.apache.commons.dbcp.DelegatingConnection.rollback(DelegatingConnection.java:265)
>         at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.rollback(PoolingDataSource.java:288)
>         at org.hibernate.transaction.JDBCTransaction.rollbackAndResetAutoCommit(JDBCTransaction.java:183)
>         at org.hibernate.transaction.JDBCTransaction.rollback(JDBCTransaction.java:162)
>         at org.hibernate.ejb.TransactionImpl.commit(TransactionImpl.java:50)
>         at org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:456)
>         at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:732)
>         at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:701)
>         at org.springframework.transaction.interceptor.TransactionAspectSupport.completeTransactionAfterThrowing(TransactionAspectSupport.java:359)
>         at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
>         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
>         at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>         at $Proxy147.findByHostname(Unknown Source)
>         at net.cndc.mb.service.db.MBProcessorServiceImpl.recordWorkUnitResults(MBProcessorServiceImpl.java:115)
>         at net.cndc.mb.service.ws.MassBatchImpl.recordWorkUnitResults(MassBatchImpl.java:69)
>         at sun.reflect.GeneratedMethodAccessor258.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:166)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:82)
>         at org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:55)
>         at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:68)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:57)
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>         at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
>         at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:95)
>         at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
>         at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:89)
>         at org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:99)
>         at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:368)
>         at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:183)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:163)
>         at org.apache.cxf.transport.servlet.AbstractCXFServlet.doPost(AbstractCXFServlet.java:141)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
>         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
>         at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
>         at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
>         at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
>         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
>         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>         at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>         at java.lang.Thread.run(Thread.java:619)
> 2010-04-05 09:42:25,454 WARN  [org.hibernate.util.JDBCExceptionReporter] SQL Error: 0, SQLState: null
> 2010-04-05 09:42:25,454 ERROR [org.hibernate.util.JDBCExceptionReporter] Already closed.
> 2010-04-05 09:42:25,454 WARN  [org.hibernate.util.JDBCExceptionReporter] SQL Error: 0, SQLState: null
> 2010-04-05 09:42:25,454 ERROR [org.hibernate.util.JDBCExceptionReporter] Already closed.
> 
> -----Original Message-----
> From: Phil Steitz [mailto:phil.steitz@gmail.com]
> Sent: Tuesday, April 06, 2010 5:56 AM
> To: Commons Users List
> Subject: [dbcp] Re: "Connection reset" exceptions
> 
> Bruno Melloni wrote:
>> I started getting these on a long-running command-line application, with Spring, SQL Server and DBCP for the DataSource.   What I found by googling seems to point towards:
>>
>>
>> a)      The database times out on idle connections and resets them.  Then DBCP does not know how to handle it and fails.
>>
>> b)      A network failure causes a failure that triggers the error.
>>
>> The only solutions I found suggest that there is a bug in DBCP and that I should switch to the c3p0 DataSource/connection pool.  But I suspect that there must be a way (perhaps through config settings) to make DBCP not have these issues.  I would welcome any help that I can get.
>>
>> Thank you.
>>
>>
> 
> First, note the [dbcp] prepended to the subject.  Putting the
> component name at the start of the subject is our convention on this
> list.
> 
> Now to your problem. It would be useful to have a little more
> information:
> 
> 1) What versions of commons dbcp and commons pool are you running?
> The latest versions at this time are dbcp 1.3 (for JDK 1.4-1.5) or
> dbcp 1.4 (JDK 1.6) and pool 1.5.4.
> 
> 2) Can you please provide a sample stack trace of the exception that
> you are getting?
> 
> Thanks!
> 
> Phil
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
> For additional commands, e-mail: user-help@commons.apache.org
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
> For additional commands, e-mail: user-help@commons.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
For additional commands, e-mail: user-help@commons.apache.org


Mime
View raw message