Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#26222 closed Uncategorized (invalid)

In migrating older project, after pip upgrade of Django to 1.9.2, Gunicorn crashes on failure to find validation

Reported by: JonathanHayward Owned by: nobody
Component: Uncategorized Version: 1.9
Severity: Normal Keywords: upgrade, validation, gunicorn
Cc: Triage Stage: Unreviewed
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description (last modified by Tim Graham)

I have an old Django project that I haven't kept up, and now I'd like to make necessary changes to work with current versions of Django and related software. I'm not sure what to make of the current error; it appears to me that it doesn't have something under the django.core umbrella, but my Django 1.9.2 installation is up to date:

[2016-02-14 17:23:10 +0000] [4605] [ERROR] Exception in worker process:
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 515, in spawn_worker
    worker.init_process()
  File "/usr/local/lib/python2.7/dist-packages/gunicorn/workers/base.py", line 122, in init_process
    self.load_wsgi()
  File "/usr/local/lib/python2.7/dist-packages/gunicorn/workers/base.py", line 130, in load_wsgi
    self.wsgi = self.app.wsgi()
  File "/usr/local/lib/python2.7/dist-packages/gunicorn/app/base.py", line 67, in wsgi
    self.callable = self.load()
  File "/usr/local/lib/python2.7/dist-packages/gunicorn/app/djangoapp.py", line 141, in load
    mod = util.import_module("gunicorn.app.django_wsgi")
  File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
  File "/usr/local/lib/python2.7/dist-packages/gunicorn/app/django_wsgi.py", line 21, in 
    from django.core.management.validation import get_validation_errors
ImportError: No module named validation
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 515, in spawn_worker
    worker.init_process()
  File "/usr/local/lib/python2.7/dist-packages/gunicorn/workers/base.py", line 122, in init_process
    self.load_wsgi()
  File "/usr/local/lib/python2.7/dist-packages/gunicorn/workers/base.py", line 130, in load_wsgi
    self.wsgi = self.app.wsgi()
  File "/usr/local/lib/python2.7/dist-packages/gunicorn/app/base.py", line 67, in wsgi
    self.callable = self.load()
  File "/usr/local/lib/python2.7/dist-packages/gunicorn/app/djangoapp.py", line 141, in load
    mod = util.import_module("gunicorn.app.django_wsgi")
  File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
  File "/usr/local/lib/python2.7/dist-packages/gunicorn/app/django_wsgi.py", line 21, in 
    from django.core.management.validation import get_validation_errors
ImportError: No module named validation
[2016-02-14 17:23:10 +0000] [4605] [INFO] Worker exiting (pid: 4605)
[2016-02-14 17:23:11 +0000] [4597] [INFO] Shutting down: Master
[2016-02-14 17:23:11 +0000] [4597] [INFO] Reason: Worker failed to boot.
root@localhost:~/unixytalk# pip install Django==1.9.2
Requirement already satisfied (use --upgrade to upgrade): Django==1.9.2 in /usr/local/lib/python2.7/dist-packages

Change History (3)

comment:1 by Tim Graham, 8 years ago

Description: modified (diff)
Resolution: invalid
Status: newclosed

Looks like you're using an older version of gunicorn that doesn't support that latest version of Django. Please see https://docs.djangoproject.com/en/stable/howto/deployment/wsgi/gunicorn/ and see TicketClosingReasons/UseSupportChannels if you need further help.

comment:2 by JonathanHayward, 8 years ago

I don't know what the problem is, but:

root@localhost:~# pip install gunicorn
Requirement already satisfied (use --upgrade to upgrade): gunicorn in /usr/local/lib/python2.7/dist-packages
root@localhost:~# pip install --upgrade gunicorn
Requirement already up-to-date: gunicorn in /usr/local/lib/python2.7/dist-packages

comment:3 by Tim Graham, 8 years ago

"run_gunicorn, gunicorn_django and gunicorn_paster are now completely deprecated and will be removed in the next release. Use the gunicorn command instead."

http://docs.gunicorn.org/en/stable/2014-news.html#deprecations

I'll follow up with a pull request to actually remove it.

Note: See TracTickets for help on using tickets.
Back to Top