gpt4 book ai didi

python - 带有ndb的Google AppEngine中的Memcache set_multi()错误

转载 作者:行者123 更新时间:2023-11-28 18:36:59 25 4
gpt4 key购买 nike

我们的 Python Google AppEngine 应用程序中遇到了一些陈旧的数据存储区数据。我检查了日志并在应该更新相应数据的请求中看到了以下警告:

Memcache set_multi() error: [':part', ':full']

日志条目是在 ndb.put() 之后生成的。没有引发异常,只有这个静默日志输出。但是,模型未写入数据存储区。这种情况反复发生了4次。

准确地说,我不能 100% 确定日志是在我的模型的 put() 期间还是之后生成的,而 GAE 正在为该特定请求保存 appstats。此外,这个日志说我们的内存缓存已满,我不太清楚这是个问题(缓存应该不时变满,对吧?)。

然而,在生成此日志的所有情况下,put() 都没有将数据写入数据存储区,我无法确定发生这种情况的原因。如果 ndb.put() 失败,我预计会引发某种错误/异常(我的代码处理这些),但警告是无声的。

有什么建议吗?

最佳答案

您可以在 NDB Context class 中关闭内存缓存.这个 SO 答案显示了如何启用/禁用内存缓存: ndb Models are not saved in memcache when using MapReduce

此代码禁用所有缓存:

ndb_ctx = ndb.get_context()
ndb_ctx.set_cache_policy(lambda key: False)
ndb_ctx.set_memcache_policy(lambda key: False)

关于python - 带有ndb的Google AppEngine中的Memcache set_multi()错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31473235/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com