celery / django-celery

Old Celery integration project for Django

Home Page:http://celery.github.com/django-celery

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

process beat error when start celery

linxiaowu1992 opened this issue · comments

python2.7
django1.9
sometimes when i start celery,it runs well,but sometimes an error happened like:
[2018-09-05 10:40:16,666: INFO/MainProcess] Connected to redis://:**@127.0.0.1:6379/0
[2018-09-05 10:40:16,675: INFO/MainProcess] mingle: searching for neighbors
[2018-09-05 10:40:16,691: INFO/Worker-1] child process 12616 calling self.run()
[2018-09-05 10:40:16,706: INFO/Worker-1] child process 12619 calling self.run()
[2018-09-05 10:40:16,795: INFO/Worker-1] child process 12629 calling self.run()
[2018-09-05 10:40:16,902: INFO/Worker-1] child process 12639 calling self.run()
[2018-09-05 10:40:16,933: INFO/Worker-1] child process 12624 calling self.run()
[2018-09-05 10:40:17,025: INFO/Worker-1] child process 12634 calling self.run()
[2018-09-05 10:40:17,163: INFO/Worker-1] child process 12649 calling self.run()
[2018-09-05 10:40:17,201: INFO/Worker-1] child process 12657 calling self.run()
[2018-09-05 10:40:17,216: INFO/Worker-1] child process 12644 calling self.run()
[2018-09-05 10:40:17,282: INFO/Beat] child process 12658 calling self.run()
[2018-09-05 10:40:17,287: ERROR/Beat] Process Beat
Traceback (most recent call last):
File "/usr/local/python27/lib/python2.7/site-packages/billiard/process.py", line 292, in _bootstrap
self.run()
File "/usr/local/python27/lib/python2.7/site-packages/celery/beat.py", line 553, in run
self.service.start(embedded_process=True)
File "/usr/local/python27/lib/python2.7/site-packages/celery/beat.py", line 470, in start
humanize_seconds(self.scheduler.max_interval))
File "/usr/local/python27/lib/python2.7/site-packages/kombu/utils/init.py", line 325, in get
value = obj.dict[self.name] = self.__get(obj)
File "/usr/local/python27/lib/python2.7/site-packages/celery/beat.py", line 512, in scheduler
return self.get_scheduler()
File "/usr/local/python27/lib/python2.7/site-packages/celery/beat.py", line 507, in get_scheduler
lazy=lazy)
File "/usr/local/python27/lib/python2.7/site-packages/celery/utils/imports.py", line 53, in instantiate
return symbol_by_name(name)(*args, **kwargs)
TypeError: 'Celery' object is not callable
[2018-09-05 10:40:17,288: INFO/Beat] process 12658 exiting with exitcode 1
[2018-09-05 10:40:17,408: INFO/Worker-1] child process 12652 calling self.run()
[2018-09-05 10:40:17,679: INFO/MainProcess] mingle: all alone
[2018-09-05 10:40:17,688: WARNING/MainProcess] celery@localhost.localdomain ready.

i found that beat must be run before main process(worker). if beat runs first,celery will start successfully.but sometimes main process run before beat process running.
how can i solve this problem?