Google 应用引擎:Golang datastore.GetAll() 不工作
Google app engine: Golang datastore.GetAll() not working
cron 作业每周一次在我的一个应用程序引擎项目中调用以下函数:
func cleanMealsFromDatabase(context appengine.Context) error {
query := datastore.NewQuery("Essen").Limit(1000).KeysOnly()
keys, err := query.GetAll(context, nil)
if err != nil {
return err
}
return datastore.DeleteMulti(context, keys)
}
我正在尝试批量删除一堆数据存储实体。该函数被正确调用,但是
query.GetAll(context, nil)
似乎总是return一个错误。我做错了什么吗?
好的,我现在知道出了什么问题了。当我终于弄清楚如何在 App Engine 中记录错误时,它说:
API error 1 (datastore_v3: BAD_REQUEST): cannot write more than 500 entities in a single call
所以我所要做的就是将 Limit 参数从 1000 更改为 500 像这样:
query := datastore.NewQuery("Essen").Limit(500).KeysOnly()
现在一切正常。
cron 作业每周一次在我的一个应用程序引擎项目中调用以下函数:
func cleanMealsFromDatabase(context appengine.Context) error {
query := datastore.NewQuery("Essen").Limit(1000).KeysOnly()
keys, err := query.GetAll(context, nil)
if err != nil {
return err
}
return datastore.DeleteMulti(context, keys)
}
我正在尝试批量删除一堆数据存储实体。该函数被正确调用,但是
query.GetAll(context, nil)
似乎总是return一个错误。我做错了什么吗?
好的,我现在知道出了什么问题了。当我终于弄清楚如何在 App Engine 中记录错误时,它说:
API error 1 (datastore_v3: BAD_REQUEST): cannot write more than 500 entities in a single call
所以我所要做的就是将 Limit 参数从 1000 更改为 500 像这样:
query := datastore.NewQuery("Essen").Limit(500).KeysOnly()
现在一切正常。