【发布时间】:2012-02-12 20:14:58
【问题描述】:
我正在编写一个 red5 应用程序,它实际上位于 tomcat 服务器上,并使用连接到 mysql 服务器的 spring 框架(事实上它是一个 red5 应用程序并不重要,它是一个 java ee 应用程序。)
我使用 spring 框架连接到我的数据库。
我注意到在某些查询中我收到以下错误消息
超过锁定等待超时;尝试重启事务
我已经将服务器上的锁定超时配置为 10 秒,所以它必须是我的服务器中的某些内容。每当发生这种情况时,我都想调试 mysql 服务器。也许运行show processlist 并获取输出或抛出正确的错误消息。
有没有办法将某种钩子连接到我在 spring 框架中使用的 JdbcTemplate 以处理所有锁定超时情况?可能会尝试重试几次,发送消息等等。
所以问题是我不想在我的项目的每个地方检查SQLException 并单独处理它。这是一个大工程,需要很长时间。有没有办法在抛出SQLException 时进行配置?我将能够检查哪种类型并进行处理并允许重试,但要构建一些通用的东西,而不是在每个查询上插入 try catch 和句柄?
【问题讨论】:
-
看看这是否有帮助.. stackoverflow.com/questions/6000336/…
-
谢谢,但我想使用 java 代码来处理它。我不想再增加僵局
标签: java mysql spring deadlock