1

TransientErrorappengine のキューにタスクを追加すると、ときどき (1 日あたり最大 100 件)エラーが発生します。これらを処理したり、それらを回避するためにより防御的にコーディングしたりするためにできることはありますか?

受け取ったエラーの例を以下に示します。

  File "/python27_runtime/python27_lib/versions/1/google/appengine/ext/deferred/deferred.py", line 268, in defer
    return task.add(queue, transactional=transactional)
  File "/python27_runtime/python27_lib/versions/1/google/appengine/api/taskqueue/taskqueue.py", line 1132, in add
    return self.add_async(queue_name, transactional).get_result()
  File "/python27_runtime/python27_lib/versions/1/google/appengine/api/apiproxy_stub_map.py", line 604, in get_result
    return self.__get_result_hook(self)
  File "/python27_runtime/python27_lib/versions/1/google/appengine/api/taskqueue/taskqueue.py", line 1927, in ResultHook
    raise _TranslateError(e.application_error, e.error_detail)
TransientError
4

1 に答える 1

3

TransientError は、サーバー側のエラー (BigTable が過負荷で応答しないなど) を示します。できることは、バックオフで再試行することだけです。

于 2013-04-18T18:13:25.097 に答える