소스 검색

events.State: always instantiate a Worker for offline nodes (to fix an AttributeError in on_node_leave for worker.hostname)

Brodie Rao 11 년 전
부모
커밋
249da1680b
1개의 변경된 파일2개의 추가작업 그리고 6개의 파일을 삭제
  1. 2 6
      celery/events/state.py

+ 2 - 6
celery/events/state.py

@@ -519,12 +519,8 @@ class State(object):
                     try:
                         worker, created = get_worker(hostname), False
                     except KeyError:
-                        if subject == 'offline':
-                            worker, created = None, False
-                        else:
-                            worker = workers[hostname] = Worker(hostname)
-                    if worker:
-                        worker.event(subject, timestamp, local_received, event)
+                        worker = workers[hostname] = Worker(hostname)
+                    worker.event(subject, timestamp, local_received, event)
                     if on_node_join and (created or subject == 'online'):
                         on_node_join(worker)
                     if on_node_leave and subject == 'offline':