appengine延迟任务出现问题,执行抛出未知

2024-04-29 03:10:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我在appengine python中有一个任务延迟,它是一个简单的调用,包含所有任务信息字符串,字符串列表。它适用于任何任务。你知道吗

               deferred.defer(fetch_service, 
                              _queue = "queue_name",
                              _countdown = task_counter * 4,
                              **task_info  )

我观察到一个奇怪的行为,当我访问不同URL或不同模块中的一些端点或UI时,这个延迟调用开始失败。每一个不同的电话都会引发相同的问题。你知道吗

File "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/ext/deferred/deferred.py", line 145, in run
    raise PermanentTaskFailure(e)
PermanentTaskFailure: None.fetch_service forbidden in unpickling

寻求任何帮助,或其他谁面临同样的问题。你知道吗


Tags: 字符串namein信息列表taskqueueservice
2条回答

这个问题特定于Google提供的GAE python scaffold。有一个白名单的方法,允许被腌制。你知道吗

如果您将您的fetch_service方法添加到base/api_fixers.py列表中的_PICKLE_CLASS_WHITELIST,它将起作用。你知道吗

一个任务失败了,而且永远不会成功的PermanentTaskFailure异常indicates。你知道吗

这通常意味着当GAE infra尝试调度任务时会遇到一些无效的情况。你知道吗

错误消息中的None.fetch_service字符串指向无效引用:None没有fetch_service属性。你知道吗

这可能表示任务是在没有访问fetch_service对象的模块中执行的。我将检查显示错误的模块中的导入。你知道吗

相关问题 更多 >