【发布时间】:2026-02-10 09:10:01
【问题描述】:
https://developers.google.com/appengine/docs/java/datastore/transactions 的 Google App Engine 文档是这样说的:
注意:在极少数情况下,事务完全提交,即使 如果事务返回超时或内部错误异常。为了 因此,最好让事务在任何时候都具有幂等性 可能。
如果事务不是幂等的,从提交异常中恢复的正确方法是什么?
【问题讨论】:
https://developers.google.com/appengine/docs/java/datastore/transactions 的 Google App Engine 文档是这样说的:
注意:在极少数情况下,事务完全提交,即使 如果事务返回超时或内部错误异常。为了 因此,最好让事务在任何时候都具有幂等性 可能。
如果事务不是幂等的,从提交异常中恢复的正确方法是什么?
【问题讨论】:
我认为您所做的就是向最终用户显示一个错误,其中包含一个他们可以用来查看其世界状态的链接。然后最终用户可以决定是否重新提交。例如。如果他们在博客上发表评论并且帖子以某种方式报告错误,他们可以重新加载博客页面并查看他们的评论是否存在;如果他们发现不是,他们可以(希望)从浏览器历史记录中恢复并重新提交。
【讨论】: