Spring boot Spring Boot:在长时间运行的存储过程上检测到明显的连接泄漏
有一种方法可以调用存储过程。根据输入,该过程可以长时间运行。过程完成后,会有一个update语句。在调用过程的方法中检测到HikariCP连接泄漏,并且过程有时会失败。请说明为HikariCP(目前使用默认属性)更改的任何特定属性,或为解决此问题而在代码中进行的任何更改Spring boot Spring Boot:在长时间运行的存储过程上检测到明显的连接泄漏,spring-boot,oracle11g,hikaricp,Spring Boot,Oracle11g,Hikaricp,有一种方法可以调用存储过程。根据输入,该过程可以长时间运行。过程完成后,会有一个update语句。在调用过程的方法中检测到HikariCP连接泄漏,并且过程有时会失败。请说明为HikariCP(目前使用默认属性)更改的任何特定属性,或为解决此问题而在代码中进行的任何更改 public void procedure (String[] names){ try(Connection connection = getJdbcTemplate().getDataSource().get connecti
public void procedure (String[] names){
try(Connection connection = getJdbcTemplate().getDataSource().get connection()){
Oracle connection oracleConnection = connection.unwrap(OracleConnection.class);
AbstractSqlTypeValue names = new OracleArrayType(oracle connection,names);
.... //execute procedure
....// update status
}catch block
}
2020-08-20 14:01:24.880警告14366---[l-1 house keeper]com.zaxxer.hikari.pool.ProxyLeakTask:线程上的oracle.jdbc.driver.t4C连接触发连接泄漏检测,堆栈跟踪如下
java.lang.Exception:检测到明显的连接泄漏
在com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:128)~[HikariCP-2.7.9.jar:na]
在service.Procedure.execute(Procedure.java:58)~[classes/:na]
在service.Procedure.Procedure(Procedure.java:46)~[classes/:na]
在service.Procedure$$FastClassBySpringCGLIB$$f.invoke()~[classes/:na]
在org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)~[spring-core-5.0.10.RELEASE.jar:5.0.10.RELEASE]
在org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:746)~[spring-aop-5.0.10.RELEASE.jar:5.0.10.RELEASE]
在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:163)~[spring-aop-5.0.10.RELEASE.jar:5.0.10.RELEASE]
在org.springframework.transaction.interceptor.TransactionSpectSupport.invokeWithinTransaction(TransactionSpectSupport.java:294)~[spring-tx-5.0.10.RELEASE.jar:5.0.10.RELEASE]
在org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:98)~[spring-tx-5.0.10.RELEASE.jar:5.0.10.RELEASE]
在org.springframework.aop.framework.ReflectiveMethodInvocation.procedue(ReflectiveMethodInvocation.java:185)~[spring-aop-5.0.10.RELEASE.jar:5.0.10.RELEASE]
在org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:688)~[spring-aop-5.0.10.RELEASE.jar:5.0.10.RELEASE]
在service.ProcedureService$$EnhancerBySpringCGLIB$$8.Procedure()~[classes/:na]
在java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(本机方法)~[na:na]
在java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)~[na:na]
在java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)~[na:na]
在java.base/java.lang.reflect.Method.invoke(Method.java:566)~[na:na]