readthedocs.org: DoesNotExist: Version matching query does not exist

I have installed RTD (from github master) as local private server. I have used “Installation guide” (http://read-the-docs.readthedocs.org/en/latest/install.html). I use sqlite temporarily.

I’m trying to make the build doc for pip and virtualenv. I’m getting an error:

[28/Apr/2014 03:35:09] "GET /projects/pip/ HTTP/1.1" 200 9197
[28/Apr/2014 03:35:16] "GET /dashboard/pip/edit/ HTTP/1.1" 200 13643
2014-04-28 03:35:42,724 - haystack.simple_backend - WARNING - update is not implemented in this backend
update is not implemented in this backend
[28/Apr/2014 03:35:42] WARNING [haystack.simple_backend:32] update is not implemented in this backend
[28/Apr/2014 03:35:42] ERROR [projects.models:295] failed to symlink project
Traceback (most recent call last):
  File "/home/user/venvs/rtd/checkouts/readthedocs.org/readthedocs/projects/models.py", line 293, in save
    symlink(project=self.slug)
  File "/home/user/venvs/rtd/checkouts/readthedocs.org/readthedocs/projects/utils.py", line 31, in symlink
    v = version_from_slug(project, version)
  File "/home/user/venvs/rtd/checkouts/readthedocs.org/readthedocs/projects/utils.py", line 26, in version_from_slug
    v = Version.objects.get(project__slug=slug, slug=version)
  File "/home/user/venvs/rtd/local/lib/python2.7/site-packages/django/db/models/manager.py", line 131, in get
    return self.get_query_set().get(*args, **kwargs)
  File "/home/user/venvs/rtd/local/lib/python2.7/site-packages/django/db/models/query.py", line 366, in get
    % self.model._meta.object_name)
DoesNotExist: Version matching query does not exist.

About this issue

  • Original URL
  • State: closed
  • Created 10 years ago
  • Comments: 20 (8 by maintainers)

Most upvoted comments

Ok, I was able to get it to work on my setup – I had improper configurations.

I’d followed instructions for setting up a nginx+uwsgi server to host this, which had it configured to use 8001 as the port.

I’m using postgresql, and configured nginx to use the server name and listen on port 80, proxying to the localhost.

I never changed the SLUMBER_API_HOST property in my local_settings.py however. That needed to change from http://localhost:8000 to ‘http://<my_server_name>’, as well as the PRODUCTION_DOMAIN setting.

Also, I was running on a small VM, so I only had a single process setup with my uwsgi app – when it went to process the background tasks, the whole site locked up. Increasing that to 4 processes fixed the problem.

I’m not sure if the script would have auto-generated those user_builds folders or not since at this point I had manually created them, so if other people are still having issues, I would look into that as well.

So, in summary what worked for me is:

  • Create /readthedocs.org/readthedocs/settings/local_settings.py
  • Add SLUMBER_API_HOST = 'http://<myserver>'
  • Add PRODUCTION_DOMAIN = '<myserver>'
  • Set processes to something greater than 1 in my /bin/uwsgi --processes 3 call (if using uwsgi)
  • mkdir’s /readthedocs.org/user_builds, /readthedocs.org/user_uploads, /readthedocs.org/cnames