【发布时间】:2010-10-24 09:07:30
【问题描述】:
我正在 Google App Engine 上插入一组记录。我将它们批量插入以避免截止日期异常。
当有大量记录(例如 1k)时,我总是会收到意外消息:
实体组的事务冲突 用钥匙
datastore_types.Key.from_path(u'GroupModel', u'root',_app=u'streamtomail')。 正在重试...
这种情况总是会发生。
在本地环境中,它可以正常工作。
如果我使用的是顺序进程而同时没有人使用系统,怎么可能发生事务冲突?
这是我用于批处理的代码:
def deferred_worker():
if next_chunk():
process_chunk()
deferred.defer(deferred_worker)
在 *process_chunk()* 我在数据库中做了 50 次插入
【问题讨论】:
-
如何批量插入 1000 个实体?有 500 个实体限制 (code.google.com/appengine/docs/python/datastore/…)。发布一些代码,让我们知道您是否正在使用延迟或任务做任何事情。
标签: python google-app-engine google-cloud-datastore