我使用hikaricp作为我的数据库连接池。当我完成我的SQL语句时,我将关闭连接,在连接上调用关闭,我相信您应该将连接代理返回到池。然而,我看到以下警告(不是错误)消息,我不得不怀疑这是否是一个需要解决的问题,因为我没有正确清理我的连接资源。我不是使用资源尝试,而是使用尝试捕获最后(我在最后关闭连接
2014-09-15 13:59:26,083 WARN c.z.h.p.LeakTask [Hikari Housekeeping Timer (pool wmHikariCp)] Connection leak detection triggered, stack trace follows java.lang.Exception
at com.abc.test.DBConnPool.getConnection(DBConnPool.java:71)
at com.abc.test.TestProj.callDB(TestApp.java:30)
at com.abc.test.TestProj.main(TestApp.java:81)
有可能您只是使用连接的时间超过泄漏检测超时。泄漏检测是连接离开池中多长时间的阈值。尝试将阈值增加到更长的超时。
您可以确认是否确实将连接释放回池中吗?您可以使用资源的try(除了增加Brett提到的阈值):
try (Connection conn = DBConnectionPool.getConnection();
PreparedStatement ps = conn.prepareStatement(preparedQuery);) {
和结果集(因为某些驱动程序/数据库可能不会清除连接时的结果集,虽然不确定这是否仍然适用于新驱动程序/数据库,但我不确定您正在使用什么):
try (ResultSet rs = ps.executeQuery();) {
希望能有帮助。
问题内容: 我正在尝试通过使用Express 4.x设置Node.js应用程序。在经历了中间件删除问题之后,我终于使它工作了。 但是,以下代码行中有一些警告消息: 这些警告是: 在文档中,resave和saveUninitialized的默认值为true。 因此,更改代码以读取 摆脱了警告。 因此,要弄清楚问题所在: 如果它们是默认值,为什么我必须传递这些值,为什么我不必传递其他选项? 问题答案:
问题内容: 我有一个带有rowID,经度,纬度,businessName,url,标题的表。可能看起来像: 如何删除所有重复项,但仅保留一个具有URL的副本(第一优先级),或者如果另一个不具有URL的标题(第二优先级),则保留具有标题的副本,然后删除其余重复项? 问题答案: 这是我的循环技术。这可能会因为没有成为主流而被否决-我对此很满意。
我们曾经有一个包含EJB jar和WAR的EAR。我们从EJB向战争发送了一个dto类。一切都很好。 现在我们已经尝试从EAR中提取WAR,并创建了WAR使用的EJB-client(API jar)。这个API jar包括我们从EJB发送到WAR的dto类。在EAR中,API部署在lib目录中。 在WAR中,我们在WEB-INF/lib目录中有相同的API jar。 但现在我们在访问dto类的内部
当我尝试通过在命令提示符下键入“ipython”从Linux shell执行“ipython”时,它会给我以下消息- 处理/home/user\u name/的第1行时出错。local/lib/python3.6/site-packages/matplotlib-2.2.3-py3.6-nspkg。pth: 回溯(最后一次调用):文件“/usr/lib/python3.6/site.py”,第17
同时将warning的值设置为“all”或,没有任何结果。 checkstyle的文档很差。一些想法?
问题内容: 我正在验证器中发出很多警告,并且我想抑制stdout中的所有内容,除非提供给的消息。 即,现在我看到了: 我想看看这个: 编辑2: 覆盖工作: 问题答案: 具有您自己的自定义功能的Monkeypatch 。