1
我最近將實體從名稱空間移動到了另一個名稱空間並添加了父項。從那時起,我注意到出現以下錯誤:爲新實體分配的標識已被使用
BadRequestError: the id allocated for a new entity was already in use, please try again: app: "p~appid"
name_space: "xyz"
path <
Element {
type: "Challenge"
name: "chal"
}
Element {
type: "Answer"
id: 0x14657000000000
}
>
一些研究,我來到了,出現這種情況的原因是身份證生成器生成已經存在的數字ID結束後。由於我將實體移動到另一個路徑,因此使用了不同的ID生成器,並且該生成器不知道現有的ID。
我真的想防止這種情況,因爲這會導致不成功的請求。我發現了許多舊的db
API的解決方案,這些解決方案涉及分配具有麻煩的特定ID,以便生成器知道這些ID存在。但我似乎無法爲ndb模型分配一個特定的ID。
我試圖使用重試來重試放置模型,但這也似乎沒有幫助。
有什麼辦法解決這個問題嗎?