Druid数据库连接池问题,ERROR c.alibaba.druid.poo l.DruidDataSource - abandon connection

14:07:41.550 [Druid-ConnectionPool-Destroy-1326667259] ERROR c.alibaba.druid.poo
l.DruidDataSource - abandon connection, owner thread: localhost-startStop-1, con
nected time nano: 1622727633715467, open stackTrace
        at java.lang.Thread.getStackTrace(Thread.java:1559)
        at com.alibaba.druid.pool.DruidDataSource.getConnectionDirect(DruidDataS
ource.java:1014)
        at com.alibaba.druid.filter.FilterChainImpl.dataSource_connect(FilterCha
inImpl.java:4544)
        at com.alibaba.druid.filter.logging.LogFilter.dataSource_getConnection(L
ogFilter.java:827)
        at com.alibaba.druid.filter.FilterChainImpl.dataSource_connect(FilterCha
inImpl.java:4540)
        at com.alibaba.druid.filter.stat.StatFilter.dataSource_getConnection(Sta
tFilter.java:662)
        at com.alibaba.druid.filter.FilterChainImpl.dataSource_connect(FilterCha
inImpl.java:4540)
        at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.
java:938)
        at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.
java:930)
        at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.
java:102)
        at com.github.pagehelper.PageHelper.getUrl(PageHelper.java:283)
        at com.github.pagehelper.PageHelper.getSqlUtil(PageHelper.java:309)
        at com.github.pagehelper.PageHelper.initSqlUtil(PageHelper.java:265)
        at com.github.pagehelper.PageHelper.intercept(PageHelper.java:252)
        at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:61)
        at com.sun.proxy.$Proxy28.query(Unknown Source)
        at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(Defau
ltSqlSession.java:148)
        at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(Defau
ltSqlSession.java:141)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(Sq
lSessionTemplate.java:434)
        at com.sun.proxy.$Proxy22.selectList(Unknown Source)
        at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.j
ava:231)
        at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.ja
va:137)
        at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:75)
        at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:53)
        at com.sun.proxy.$Proxy25.getJobList(Unknown Source)
        at com.neusoft.sr.framework.schedule.service.impl.ScheduleJobServiceImpl
.initScheduleJob(ScheduleJobServiceImpl.java:39)
        at com.neusoft.sr.framework.schedule.evnent.ScheduleJobInit.init(Schedul
eJobInit.java:22)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.springframework.beans.factory.annotation.InitDestroyAnnotationBea
nPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.ja
va:349)
        at org.springframework.beans.factory.annotation.InitDestroyAnnotationBea
nPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPost
Processor.java:300)
        at org.springframework.beans.factory.annotation.InitDestroyAnnotationBea
nPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProc
essor.java:133)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanF
actory.java:407)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.initializeBean(AbstractAutowireCapableBeanFactory.java:1545)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.doCreateBean(AbstractAutowireCapableBeanFactory.java:539)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.createBean(AbstractAutowireCapableBeanFactory.java:475)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getOb
ject(AbstractBeanFactory.java:304)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr
y.getSingleton(DefaultSingletonBeanRegistry.java:228)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBe
an(AbstractBeanFactory.java:300)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean
(AbstractBeanFactory.java:195)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.
preInstantiateSingletons(DefaultListableBeanFactory.java:703)
        at org.springframework.context.support.AbstractApplicationContext.finish
BeanFactoryInitialization(AbstractApplicationContext.java:760)
        at org.springframework.context.support.AbstractApplicationContext.refres
h(AbstractApplicationContext.java:482)
        at org.springframework.web.context.ContextLoader.configureAndRefreshWebA
pplicationContext(ContextLoader.java:403)
        at org.springframework.web.context.ContextLoader.initWebApplicationConte
xt(ContextLoader.java:306)
        at org.springframework.web.context.ContextLoaderListener.contextInitiali
zed(ContextLoaderListener.java:106)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContex
t.java:5157)
        at org.apache.catalina.core.StandardContext.startInternal(StandardContex
t.java:5680)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase
.java:1018)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:99
4)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652)

        at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.jav
a:1296)
        at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig
.java:2039)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:51
1)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.
java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor
.java:624)
        at java.lang.Thread.run(Thread.java:748)

解决办法:将removeAbandonedTimeoutMillis这个时间配置调大

配置    默认值    说明
removeAbandoned    false    是否强制关闭连接时长大于removeAbandonedTimeoutMillis的连接
removeAbandonedTimeoutMillis    300 * 1000    一个连接从被连接到被关闭之间的最大生命周期
logAbandoned    false    强制关闭连接时是否记录日志
 

<!--配置成三十分钟-->

applicationContext-druid.xml

<property name="removeAbandonedTimeout" value="1800" />

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值