【发布时间】:2014-09-11 16:59:54
【问题描述】:
我正在使用 Hibernate Search 索引 MySQL 表,这需要一些时间。之后抛出异常:
Communications link failure 成功接收到的最后一个数据包 服务器在 239 757 毫秒前。
发送的最后一个数据包 成功到服务器是 30 毫秒前。
无法提交 commit() 期间休眠事务通信链接失败。 交易解析未知。
索引是在使用 @Transactional(readOnly = true) 注释的方法中完成的。
MySQL 服务器在 my.cnf 指令中有:wait_timeout = 60。
如何指示 Spring/Hibernate 不关闭活动事务? 我使用 HikariCP 作为数据源。
谢谢。
【问题讨论】:
-
你能真正发布完整的堆栈跟踪吗?此外,您似乎正在处理数据库设置/通信错误。与 Hibernate Search 没有太大关系。你看过这个帖子 - stackoverflow.com/questions/6865538/… 吗?您的连接设置如何?
-
谢谢你的链接,我以前没见过。我已将 wait_timeout 更改为 3 小时,错误消失了。但我不喜欢这个解决方案,所以我会从你的链接中尝试一些提示。谢谢。
标签: hibernate spring-mvc spring-transactions hibernate-search