【发布时间】:2016-12-20 12:03:32
【问题描述】:
将bonecp 数据源与jooq 和spring boot 一起使用并部署在weblogic 服务器上时出现以下错误。
以下是我的设置:
bonecp.idleConnectionTestPeriodInMinutes=1
bonecp.idleMaxAgeInMinutes=4
bonecp.maxConnectionsPerPartition=1
bonecp.minConnectionsPerPartition=1
bonecp.poolAvailabilityThreshold=5
bonecp.partitionCount=1
bonecp.acquireIncrement=1
错误是:
for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "712" seconds working on the request "Workmanager: default, Version: 0, Scheduled=true, Started=true, Started time: 712707 ms", which is more than the configured time (StuckThreadMaxTime) of "600" seconds in "server-failure-trigger".
Stack trace:
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467)
com.jolbox.bonecp.DefaultConnectionStrategy.getConnectionInternal(DefaultConnectionStrategy.java:82)
com.jolbox.bonecp.AbstractConnectionStrategy.getConnection(AbstractConnectionStrategy.java:90)
com.jolbox.bonecp.BoneCP.getConnection(BoneCP.java:553)
com.jolbox.bonecp.BoneCPDataSource.getConnection(BoneCPDataSource.java:131)
org.springframework.jdbc.datasource.LazyConnectionDataSourceProxy$LazyConnectionInvocationHandler.getTargetConnection(LazyConnectionDataSourceProxy.java:403)
org.springframework.jdbc.datasource.LazyConnectionDataSourceProxy$LazyConnectionInvocationHandler.invoke(LazyConnectionDataSourceProxy.java:376)
com.sun.proxy.$Proxy139.prepareStatement(Unknown Source)
sun.reflect.GeneratedMethodAccessor65.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:498)
【问题讨论】:
-
嗯,这似乎与 jOOQ 无关,错误发生在涉及 jOOQ 之前...您能否提供有关您的设置以及您如何使用/配置您的设置的更多信息WLS 部署中的连接池?
-
我的步骤如下:jooq + spring boot 部署在带有 jdk 1.8 的 weblogic 12 服务器中......这似乎是连接不可用的问题......用于调试我如何检查当前计数数据源池中可用的连接数..我无权从数据库端检查...我可以检查的唯一方法是在代码中
-
对不起,我不知道。我没有看到您的代码...到目前为止您提供的信息还不够...
标签: java sql spring-boot weblogic jooq