【发布时间】:2011-03-11 17:39:58
【问题描述】:
我正在创建和编辑组。在使用该名称创建新组或将现有组名称更改为该名称之前,我需要检查组名称是否已在使用中。
问题是两个并行线程可以同时检查组名,然后每个线程可以继续添加自己的组。重复的名字!
我认为我不能使用内置事务,因为这些组应该位于不同的实体组中,并且名称不是键的一部分。我能做什么?
创建一种在键中使用组名的索引实体是否有意义,以便我可以执行祖先查询以原子方式获取和创建名称?创建索引实体的成功将作为非事务性代码执行的许可。我希望有一个更简单的解决方案,不需要全新类型的实体。
【问题讨论】:
标签: google-app-engine transactions thread-safety google-cloud-datastore