Uploaded image for project: 'Commons DBCP'
  1. Commons DBCP
  2. DBCP-424

validateLifetime causes needless warnings about swallowed exceptions to be logged

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 2.0
    • Fix Version/s: 2.1
    • Labels:
      None
    • Environment:

      Java 1.7, jTDS 1.2.8, Ubuntu Linux 12.04

      Description

      the validateLifetime method in PoolableConnectionFactory is causing the following warning to be logged, even though it is not an exceptional case. While it is not impairing functionality, we have to work around the issue.

      2014-07-29 14:15:28.0573 WARN http-8084-52 org.apache.commons.dbcp2.BasicDataSource An internal object pool swallowed an Exception
      java.lang.Exception: The lifetime of the connection [300,008] milliseconds exceeds the maximum permitted value of [300,000] milliseconds
      at org.apache.commons.dbcp2.PoolableConnectionFactory.validateLifetime(PoolableConnectionFactory.java:370)
      at org.apache.commons.dbcp2.PoolableConnectionFactory.passivateObject(PoolableConnectionFactory.java:310)
      at org.apache.commons.pool2.impl.GenericObjectPool.returnObject(GenericObjectPool.java:577)
      at org.apache.commons.dbcp2.PoolableConnection.close(PoolableConnection.java:171)
      at org.apache.commons.dbcp2.DelegatingConnection.closeInternal(DelegatingConnection.java:235)
      at org.apache.commons.dbcp2.DelegatingConnection.close(DelegatingConnection.java:218)
      at org.apache.commons.dbcp2.PoolingDataSource$PoolGuardConnectionWrapper.close(PoolingDataSource.java:229)
      at org.springframework.jdbc.datasource.DataSourceUtils.doCloseConnection(DataSourceUtils.java:341)
      at org.springframework.jdbc.datasource.DataSourceUtils.doReleaseConnection(DataSourceUtils.java:328)
      at org.springframework.jdbc.datasource.DataSourceUtils.releaseConnection(DataSourceUtils.java:294)
      at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:417)
      at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:468)
      at org.springframework.jdbc.core.JdbcTemplate.queryForRowSet(JdbcTemplate.java:523)
      at com.ca.vm.lib.dao.ModelDao.loadJobDetails(ModelDao.java:999)
      at com.ca.vm.lib.dao.ModelDao.extractJobs(ModelDao.java:910)
      at com.ca.vm.lib.dao.ModelDao.extractJob(ModelDao.java:921)
      at com.ca.vm.lib.dao.ModelDao.loadJob(ModelDao.java:744)
      at com.ca.vm.api.jobs.JobsApiLinksLoader$1.load(JobsApiLinksLoader.java:48)
      at com.ca.vm.api.json.ApiLinksExpander.makeApiRequest(ApiLinksExpander.java:130)
      at com.ca.vm.api.json.ApiLinksExpander.expand(ApiLinksExpander.java:114)
      at com.ca.vm.api.json.ApiLinksExpander.rootExpand(ApiLinksExpander.java:65)
      at com.ca.vm.api.json.ApiLinksExpander.toJson(ApiLinksExpander.java:60)
      at com.ca.vm.api.JobsResource.getJobById(JobsResource.java:283)
      at sun.reflect.GeneratedMethodAccessor317.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:601)
      at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
      at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$ResponseOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:205)
      at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)
      at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:302)
      at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
      at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)
      at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
      at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84)
      at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1511)
      at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1442)
      at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1391)
      at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1381)
      at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:416)
      at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:538)
      at com.sun.jersey.spi.container.servlet.ServletContainer.doFilter(ServletContainer.java:910)
      at com.sun.jersey.spi.container.servlet.ServletContainer.doFilter(ServletContainer.java:858)
      at com.sun.jersey.spi.container.servlet.ServletContainer.doFilter(ServletContainer.java:812)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at com.ca.graphite.ws.lib.AbstractGraphiteMetricFilter.doFilter(AbstractGraphiteMetricFilter.java:72)
      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:233)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
      at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
      at java.lang.Thread.run(Thread.java:722)

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              eric.fialkowski Eric Fialkowski
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: