一尘不染

UnexpectedRollbackException-完整的方案分析

hibernate

我对这种异常的了解仅来自Spring的文档以及一些论坛的帖子,其中饱受摧残的开发人员粘贴了巨大的堆栈跟踪信息,但没有回复。

从Spring的文档中:

尝试提交事务导致意外回滚时抛出

我想一劳永逸

  1. 究竟是什么原因造成的?

    • 回滚发生在哪里?在App Server代码中还是在数据库中?
    • 是由于特定的基础异常(例如来自java.sql。*的异常)引起的吗?
    • 它与hibernate有关吗?它与Spring Transaction Manager(在我的情况下不是JTA)有关吗?
    • 如何避免呢? 有什么最佳实践可以避免吗?
  2. 如何调试呢? 它似乎很难复制,是否有经过验证的故障排除方法?


阅读 204

收藏
2020-06-20

共1个答案

一尘不染

向后滚动一点(或增加它的缓冲区大小),您将看到究竟是什么引起了异常。

如果碰巧不存在,请检查的getMostSpecificCause()getRootCause()方法UnexpectedRollbackException-它们可能有用。

2020-06-20