Django原子事务具有
durable
和
savepoint
论点。看见
docs
。
durable=True
确保原子块是最外层的原子块。根据文档:
有时,确保原子块始终是最外层的原子块是有用的,这样可以确保在无错误退出块时提交任何数据库更改。这被称为耐久性,可以通过将耐久性设置为True来实现
PostgreSQL
SAVEPOINT
在当前事务中建立一个新的保存点。听起来只有在嵌套了原子块的情况下才需要这样做。
我有以下问题:
-
如果
耐用=真
然后
保存点
应始终
False
正确的因为如果原子块是最外层的原子块,那么使用保存点是没有意义的。
-
如果
耐用=真
,Django应该设置
savepoint=False
为我们?通读源代码,它似乎不适合我们,但我觉得它应该这样做。