2009-07-08 12 views
33

TombstonedTaskError ne anlama geliyor? bir cron-işinden, kuyruğuna bir görev eklemeye çalışırken O kaldırdı ediliyor:App Engine'in Görev Sırasından TombstonedTaskError nedir?

Traceback (most recent call last): 
    File "/base/python_lib/versions/1/google/appengine/ext/webapp/__init__.py", line 501, in __call__ 
    handler.get(*groups) 
    File "/base/data/home/apps/.../tasks.py", line 132, in get 
    ).add(queue_name = 'userfeedcheck') 
    File "/base/python_lib/versions/1/google/appengine/api/labs/taskqueue/taskqueue.py", line 495, in add 
    return Queue(queue_name).add(self) 
    File "/base/python_lib/versions/1/google/appengine/api/labs/taskqueue/taskqueue.py", line 563, in add 
    self.__TranslateError(e) 
    File "/base/python_lib/versions/1/google/appengine/api/labs/taskqueue/taskqueue.py", line 619, in __TranslateError 
    raise TombstonedTaskError(error.error_detail) 
TombstonedTaskError 

sadece söylemek için aşağıdaki gösteren dokümanları aranıyor:

exception TombstonedTaskError(InvalidTaskError) 
    Task has been tombstoned. 

.. Bu özellikle yararlı değil.

ben yararlı bir şey bulamadı App Engine code ya ..

Bunu daha önce de isimde bir görev ekledik

cevap

46

. Her ne kadar zaten çalıştırılsa da, yürütülen isimler, yanlışlıkla çoğaltmaları önlemek için bir süre tutulur. Görev adlarını ataıyorsanız, bunu önlemek için genel olarak benzersiz olanları kullanmalısınız.

+17

Lütfen bu açıklama ile birlikte belgeleri güncelleyin – fjsj

+3

Neden eski görev bittikten sonra aynı ada sahip görevler eklemeyi engelliyorlar? Bu şekilde, sıradaki hangi görevlerin olduğunu kontrol etmenin bir yolu olmalıdır. –

+2

@krzyk Aksi takdirde, tamamlandığı gibi bu isimle bir görev eklediğiniz bir yarış durumu olurdu. Görev adlarının noktası, tekrar yürütmeyi engellemektir. –

İlgili konular