我正在尝试在Tomcat 8.5中使用HikariCP JNDI DataSource Factory但是当它关闭时我收到这些警告:
o.a.c.loader.WebappClassLoaderBase : The web application [ROOT] appears to have started a thread named [HikariPool-1 housekeeper] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source)
java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)
我的Hiraki配置是在JNDI DataSource Factory(Tomcat等)document之后设置的,如下所示:
<Resource name="******" auth="Container"
factory="com.zaxxer.hikari.HikariJNDIFactory"
type="javax.sql.DataSource"
minimumIdle="5"
maximumPoolSize="10"
connectionTimeout="300000"
driverClassName="org.postgresql.Driver"
jdbcUrl="jdbc:postgresql://******"
dataSource.implicitCachingEnabled="true"
dataSource.user="******"
dataSource.password="******" />
我发现了link,但它并没有帮助,因为我在Tomcat中使用Hiraki作为资源。
我正在使用Tomcat 8.5 HikariCP 2.5.1
有任何帮助吗?感谢。
答案 0 :(得分:2)
您需要添加的内容是资源的末尾:
closeMethod="close"/>
答案 1 :(得分:1)
我遇到了完全相同的问题,至少错误信息是相同的。 错误消息显示Hikari-Pool配置存在问题但实际上您的Tomcat无法启动。 一个简单的解决方案是检查应用程序是否存在任何运行时错误。 就我而言,在我的Rest-Controller中,我声明了相同的HTTP-Method,它具有相同的URI端点,但具有不同的方法名称。 因此,它不是编译时错误,但在构建Tomcat期间它失败,导致HikariPool抛出错误消息。
希望它有所帮助。如果这不起作用做评论,也许我可以提供帮助。
答案 2 :(得分:1)
就我而言,我从 org.springframework.boot:spring-boot-devtools
中删除了 gradle.build
,它与 SpringBoot "2.3.7" 配合使用
似乎 SpringBoot 版本“2.2”没有受到影响。
我不知道它会这样做
答案 3 :(得分:0)
在我的情况下,我在字符串类型上使用@Enumerated注释。
@Enumerated(EnumType.STRING)
@Column(nullable = false, name = "transaction_type")
private String transactionType;
我在使用纯字符串时删除了@Enumerated行,并且它起作用了。
答案 4 :(得分:0)
就我而言,出现这种症状的原因是:
一旦我:问题就消失了: