【发布时间】:2018-02-24 00:21:05
【问题描述】:
运行一项非常工作(使用数据库查找索引数万个文档),我收到此错误: java.sql.SQLException: ORA-02399: 超出最大连接时间,您正在注销
repository.findOne 调用发生错误。
进程在tomcat下运行。
我需要做的(我认为)是重新登录 Oracle 并获得新的连接。然而,JPA 相当有效地隐藏了所有这些细节。 (和春天更远)。我该如何进行?
【问题讨论】:
-
你是如何连接的?是否配置了数据源?
-
是的。我是。我后来发现 Oracle 系统管理员对连接施加了 4 小时的时间限制,因为他遇到了僵尸连接问题。他现在已将其更改为 4 天。
-
仍然意味着您每 4 天就会遇到一个问题,除非您将数据源配置为重新连接。您需要添加设置,以便连接过时并在此之前被丢弃,以避免您的应用出现奇怪的问题。
-
会话在 30 分钟不活动后超时。我的应用程序不是 oracle 陈旧连接的来源。但是,我感兴趣的是如何强制重新连接?使用spring,我的数据库交互是:a/设置数据源; b/ 查询存储库。 Spring auto-magic 正在管理连接。
标签: spring-data spring-data-jpa eclipselink