2012-10-04 5 views
0

관리자에게 알림 이메일을 보내고 싶습니다. 예를 들어 스팸이 스팸 된 경우 관리자가 이메일을 받아야합니다. django-celery templated_email 및 kombu를 사용하고 있습니다. 하지만 난 오류를 얻고있다 djcelery의 모든 관리 명령을 실행할 때장고 셀러리 관리 명령으로 AttributeError : '_multiprocessing.SemLock'객체에 'name'속성이 없습니다.

D : \ 테스트 \의 testapp를> 파이썬 manage.py는 C -l 정보를 celeryd : \ Python27 \ lib 디렉토리 \ 사이트 - 패키지 \ django_celery - 3.0.4 -py2.7.egg \ djcelery \ loaders.py : 116 :
UserWarning : settings.DEBUG를 사용하면 메모리 누수가 발생합니다. warnings.warn ("settings.DEBUG를 사용하면 메모리 누수가 발생합니다."

사전에
-------------- [email protected]_A-PC v3.0.4 (Chiastic Slide) 
    ---- **** ----- 
--- * *** * -- [Configuration] 
-- * - **** --- . broker:  djkombu.transport.DatabaseTransport://localhost// 
- ** ---------- . app:   default:0x28c3390 (djcelery.loaders.DjangoLoader) 
- ** ---------- . concurrency: 4 (processes) 
- ** ---------- . events:  OFF (enable -E to monitor this worker) 
- ** ---------- 
- *** --- * --- [Queues] 
-- ******* ---- . celery:  exchange:celery(direct) binding:celery 
--- ***** ----- . email:  exchange:celery(direct) binding:email 

    [Tasks] 
    . djcelery_email_send 
    . testapp.tasks.add 

Traceback (most recent call last): 
    File "<string>", line 1, in <module> 
    File "C:\Python27\lib\site-packages\billiard-2.7.3.10-py2.7-billiard\forking.py", line 496, in main 
    self = load(from_parent) 
    File "C:\Python27\lib\pickle.py", line 1378, in load 
    return Unpickler(file).load() 
    File "C:\Python27\lib\pickle.py", line 858, in load 
    [2012-10-04 14:45:25,960: ERROR/MainProcess]Unrecoverable error:AttributeError("'_multiprocessing.SemLock' object has no attribute 'name'",) 
    Traceback (most recent call last): 
    File "C:\Python27\lib\site-packages\celery-3.0.4-py2.7.egg\celery\worker\__init__.py", line 348, in start 
    component.start() 
    File "C:\Python27\lib\site-packages\celery-3.0.4-py2.7.egg\celery\concurrency\base.py", line 109, in start 
    self.on_start() 
    File "C:\Python27\lib\site-packages\celery-3.0.4-py2.7.egg\celery\concurrency\processes\__init__.py", line 84, in on_start 
    **self.options) 
    File "C:\Python27\lib\site-packages\billiard-2.7.3.10-py2.7-win32.egg\billiard\pool.py", line 799, in __init__ 
    self._create_worker_process() 
    File "C:\Python27\lib\site-packages\billiard-2.7.3.10-py2.7-win32.egg\billiard\pool.py", line 867, in _create_worker_process 
    w.start() 
    File "C:\Python27\lib\site-packages\billiard-2.7.3.10-py2.7-win32.egg\billiard\process.py", line 138, in start 
    self._popen = Popen(self) 
    File "C:\Python27\lib\site-packages\billiard-2.7.3.10-py2.7-win32.egg\billiard\forking.py", line 350, in __init__ 
    dump(process_obj, to_child, HIGHEST_PROTOCOL) 
    File "C:\Python27\lib\site-packages\billiard-2.7.3.10-py2.7-win32.egg\billiard\forking.py", line 143, in dump 
    ForkingPickler(file, protocol).dump(obj) 
    File "C:\Python27\lib\pickle.py", line 224, in dump 
    self.save(obj) 
    File "C:\Python27\lib\pickle.py", line 331, in save 
    self.save_reduce(obj=obj, *rv) 
    File "C:\Python27\lib\pickle.py", line 419, in save_reduce 
    save(state) 
    File "C:\Python27\lib\pickle.py", line 286, in savef(self, obj) # Call unbound method with explicit self 
    File "C:\Python27\lib\pickle.py", line 649, in save_dict 
    self._batch_setitems(obj.iteritems()) 
    File "C:\Python27\lib\pickle.py", line 681, in _batch_setitems 
    save(v) 
    File "C:\Python27\lib\pickle.py", line 286, in save 
    f(self, obj) # Call unbound method with explicit self 
    File "C:\Python27\lib\pickle.py", line 562, in save_tuple 
    save(element) 
    File "C:\Python27\lib\pickle.py", line 331, in save 
    self.save_reduce(obj=obj, *rv) 
    File "C:\Python27\lib\pickle.py", line 419, in save_reduce 
    save(state) 
    File "C:\Python27\lib\pickle.py", line 286, in save if(self, obj) # Call unbound method with explicit self 
    File "C:\Python27\lib\pickle.py", line 562, in save_tuple 
    save(element) 
    File "C:\Python27\lib\pickle.py", line 306, in save 
    rv = reduce(self.proto) 
    File "C:\Python27\lib\site-packages\billiard-2.7.3.10-py2.7-win32.egg\billiard\synchronize.py", line 122, in __getstate__ 
    sl.name) 
    AttributeError: '_multiprocessing.SemLock' object has no attribute 'name' 
    dispatch[key](self) 
    File "C:\Python27\lib\pickle.py", line 880, in load_eof 
    raise EOFError 
    EOFError 
    [2012-10-04 14:45:26,299: INFO/MainProcess] process shutting down 

감사

답변

0

셀러리 3.0.11 및 SPE로 업그레이드하세요 최근에 당구 특정 버전의 버그가 수정 된 최근 당구 버전

+0

감사합니다. :) – manali