2

I run a command line, which is logged here:

running: gunicorn -w 11 --worker-class socketio.sgunicorn.GeventSocketIOWorker --bind=127.0.0.1:8800 --access-logfile - --error-logfile - fbrealtime.wsgi:application
2014-08-03 19:15:20 [4047] [INFO] Starting gunicorn 19.1.0
2014-08-03 19:15:20 [4047] [INFO] Listening at: http://127.0.0.1:8800 (4047)
2014-08-03 19:15:20 [4047] [INFO] Using worker: socketio.sgunicorn.GeventSocketIOWorker
2014-08-03 19:15:20 [4052] [INFO] Booting worker with pid: 4052
2014-08-03 19:15:20 [4053] [INFO] Booting worker with pid: 4053
2014-08-03 19:15:20 [4052] [ERROR] Exception in worker process:
Traceback (most recent call last):
  File "/home/luismasuelli/.virtualenvs/dj16fbrt/local/lib/python2.7/site-packages/gunicorn/arbiter.py", line 507, in spawn_worker
    worker.init_process()
  File "/home/luismasuelli/.virtualenvs/dj16fbrt/local/lib/python2.7/site-packages/gunicorn/workers/ggevent.py", line 193, in init_process
    super(GeventWorker, self).init_process()
  File "/home/luismasuelli/.virtualenvs/dj16fbrt/local/lib/python2.7/site-packages/gunicorn/workers/base.py", line 120, in init_process
    self.run()
  File "/home/luismasuelli/.virtualenvs/dj16fbrt/src/gevent-socketio/socketio/sgunicorn.py", line 80, in run
    **ssl_args
  File "/home/luismasuelli/.virtualenvs/dj16fbrt/src/gevent-socketio/socketio/server.py", line 72, in __init__
    address = args[0].cfg_addr[0]
AttributeError: 'socket' object has no attribute 'cfg_addr'
Traceback (most recent call last):
  File "/home/luismasuelli/.virtualenvs/dj16fbrt/local/lib/python2.7/site-packages/gunicorn/arbiter.py", line 507, in spawn_worker
    worker.init_process()
  File "/home/luismasuelli/.virtualenvs/dj16fbrt/local/lib/python2.7/site-packages/gunicorn/workers/ggevent.py", line 193, in init_process
    super(GeventWorker, self).init_process()
  File "/home/luismasuelli/.virtualenvs/dj16fbrt/local/lib/python2.7/site-packages/gunicorn/workers/base.py", line 120, in init_process
    self.run()
  File "/home/luismasuelli/.virtualenvs/dj16fbrt/src/gevent-socketio/socketio/sgunicorn.py", line 80, in run
    **ssl_args
  File "/home/luismasuelli/.virtualenvs/dj16fbrt/src/gevent-socketio/socketio/server.py", line 72, in __init__
    address = args[0].cfg_addr[0]
AttributeError: 'socket' object has no attribute 'cfg_addr'

Why am I getting this error? The command line is the first line of the log. Am I doing something wrong?

It's a django 1.6 application with gevent 1.0.1 and gevent-socketio (git state: master 668d11edbd62052cde1583be1e1d0512c930f16d#) gevent-websocket 0.9.3 and gunicorn 19.1.0.

Apparently this error does not affect when I'm trying to access my application at http://localhost:8800/ but: what does it mean? what will it imply? how can I fix it?

Luis Masuelli
  • 12,079
  • 10
  • 49
  • 87
  • 1
    Seems to be a bug in gunicorn. See: http://stackoverflow.com/questions/14656841/geventsocketioworker-has-no-attribute-socket?rq=1 – Robin Elvin Aug 11 '14 at 11:02
  • I managed to change the package. I don't use such library anymore (socketio) but another one (django-gevent-websocket) which works well and doesn't force the longpolling, but it doesn't have fallbacks/frontend_abstraction regarding sockets. – Luis Masuelli Aug 11 '14 at 14:26

0 Answers0