无法回滚JPA事务;javax.persistence.PersistenceException: 回滚时出现意外错误"异常?

10
什么事件会导致“org.springframework.transaction.TransactionSystemException - Could not roll back JPA transaction; nested exception is javax.persistence.PersistenceException: unexpected error when rollbacking”异常?

1
你应该尽可能提供更多有关你正在尝试做什么、你在哪个点上遇到了错误等方面的信息。也许完整的堆栈跟踪和一些代码/配置文件也会有所帮助...... - Tim B
2个回答

10

我在使用Spring和JPA时遇到了相同的错误。 问题出在连接MySQL数据库超时时的断开连接。晚上我没有使用应用程序,在早上发现同样的错误。当您处于非活动状态时,Spring不会执行任何操作并且会超时。 为了防止这种情况发生,您可以将下面的代码添加到application.properties文件中:

spring.datasource.connection-test-query="SELECT 1"
spring.datasource.test-while-idle=true
spring.datasource.test-on-borrow=true

现在它工作得很好。 此外,Virtustilus博客提供的额外信息可能会很有用。


0
如果事务是XA-Transaction(分布式),则其中一个参与者可能已拒绝回滚。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接