gpt4 book ai didi

mysql - 玩! 2.0 - BoneCP 返回关闭的连接

转载 作者:可可西里 更新时间:2023-11-01 07:45:22 26 4
gpt4 key购买 nike

我有一个有趣的问题,但我无法解决。我正在使用玩! 2.0.4 并使用集成的 BoneCP 连接池获取数据库连接。但是,出于某种原因,BoneCP 不断返回关闭的连接。

Database Server: Amazon RDS MySQL 5, default timeout settings (which should be 8 hours...)

我的 Play 数据源配置如下所示:

db.default.driver=com.mysql.jdbc.Driver
db.default.url="jdbc:mysql://{server}/{schema}?autoReconnect=true&useUnicode=yes&characterEncoding=UTF-8"
db.default.partitionCount=4
db.default.idleConnectionTestPeriod=2 minutes

我假设将 idleConnectionTestPeriod 设置为 2 分钟肯定会阻止 BoneCP 返回关闭的连接,但事实并非如此。

每隔一段时间,我就会在我的日志中得到以下堆栈跟踪:

    Exception in thread "pool-6-thread-25" java.sql.SQLException: Connection is closed!
at com.jolbox.bonecp.ConnectionHandle.checkClosed(ConnectionHandle.java:350)
at com.jolbox.bonecp.ConnectionHandle.setReadOnly(ConnectionHandle.java:1089)
at play.api.db.BoneCPApi$$anon$1.onCheckOut(DB.scala:328)
at com.jolbox.bonecp.BoneCP.getConnection(BoneCP.java:514)
at com.jolbox.bonecp.BoneCPDataSource.getConnection(BoneCPDataSource.java:114)
at play.api.db.DBApi$class.getConnection(DB.scala:64)
at play.api.db.BoneCPApi.getConnection(DB.scala:273)
at play.api.db.DB$$anonfun$getConnection$1.apply(DB.scala:129)
at play.api.db.DB$$anonfun$getConnection$1.apply(DB.scala:129)
at scala.Option.map(Option.scala:133)
at play.api.db.DB$.getConnection(DB.scala:129)
at play.api.db.DB.getConnection(DB.scala)
at play.db.DB.getConnection(DB.java:50)
at play.db.DB.getConnection(DB.java:43)
at play.db.DB.getConnection(DB.java:29)
at com.edatasource.inboxtracker.tasks.TrackSiteEventActionTask.run(TrackSiteEventActionTask.java:23)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)

有人知道我该如何解决这个问题吗?目前,我不得不将 DB.getConnection() 包装在 try/catch 中,只捕获 BoneCP 抛出的异常并重试,直到我检索到有效连接。看来这应该是不必要的。

感谢您的帮助。

最佳答案

请尝试使用 0.8.0-beta1。有一个与此相关的错误。

关于mysql - 玩! 2.0 - BoneCP 返回关闭的连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13161452/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com