【发布时间】:2020-08-16 03:37:39
【问题描述】:
我正在将 GAE Python 2.7 Standard 与 Datastore 结合使用。
问题是 Datastore 过于频繁地引发事务冲突。
我写了一个简单的测试代码。 (我知道这种代码不存在。它只是一个测试代码。)
我只是在事务中多次更新一个实体。
我认为不会发生任何冲突,因为我只是在更新同一个计划实体。
但是查看日志记录,“事务冲突。重试...”发生了好几次。
Datastore 导致事务冲突的原因是什么?
from google.appengine.ext import db
# get any entity
schedule = Schedule.get('entity_key')
def _txn(schedule):
schedule.save()
schedule.save()
schedule.save()
schedule.save()
xg_on = db.create_transaction_options(xg=True)
for i in range(0, 100):
logging.info(i)
db.run_in_transaction_options(xg_on,
_txn,
schedule)
【问题讨论】:
标签: python-2.7 google-app-engine google-cloud-platform google-cloud-datastore