﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
14932	Tests failing with SQLite3 on Linux systems; Sites object causing failures.	bart.ciszk@…	nobody	"Running Django 1.2.3 on Ubuntu 10.04. Originally using SQLite 3.6.2, which [http://docs.djangoproject.com/en/dev/ref/databases/#version-3-6-2 there is known bugs for] so I upgraded to 3.7.2 and am still having issues.

This was happening on OSX, then I wrapped the current_site code into functions or __init__ statements. However, it still seems to happen on any that may be somehow reached by module loading. This does not happen anymore on OSX, and does not happen with mySQL

Here's a traceback:
{{{
Traceback (most recent call last):
  File ""company/manage.py"", line 12, in <module>
    execute_manager(settings)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/core/management/__init__.py"", line 438, in execute_manager
    utility.execute()
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/core/management/__init__.py"", line 379, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/core/management/base.py"", line 191, in run_from_argv
    self.execute(*args, **options.__dict__)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/core/management/base.py"", line 219, in execute
    self.validate()
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/core/management/base.py"", line 249, in validate
    num_errors = get_validation_errors(s, app)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/core/management/validation.py"", line 28, in get_validation_errors
    for (app_name, error) in get_app_errors().items():
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/loading.py"", line 146, in get_app_errors
    self._populate()
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/loading.py"", line 61, in _populate
    self.load_app(app_name, True)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/loading.py"", line 78, in load_app
    models = import_module('.models', app_name)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/utils/importlib.py"", line 35, in import_module
    __import__(name)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/company/associates/yyz/models.py"", line 258, in <module>
    get_current_site()
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/company/associates/yyz/models.py"", line 254, in get_current_site
    current_site = Site.objects.get_current()
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/contrib/sites/models.py"", line 22, in get_current
    current_site = self.get(pk=sid)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/manager.py"", line 132, in get
    return self.get_query_set().get(*args, **kwargs)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/query.py"", line 333, in get
    clone = self.filter(*args, **kwargs)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/query.py"", line 550, in filter
    return self._filter_or_exclude(False, *args, **kwargs)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/query.py"", line 568, in _filter_or_exclude
    clone.query.add_q(Q(*args, **kwargs))

me/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/sql/query.py"", line 1128, in add_q
    can_reuse=used_aliases)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/sql/query.py"", line 1026, in add_filter
    negate=negate, process_extras=process_extras)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/sql/query.py"", line 1179, in setup_joins
    field, model, direct, m2m = opts.get_field_by_name(name)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/options.py"", line 291, in get_field_by_name
    cache = self.init_name_map()
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/options.py"", line 321, in init_name_map
    for f, model in self.get_all_related_m2m_objects_with_model():
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/options.py"", line 396, in get_all_related_m2m_objects_with_model
    cache = self._fill_related_many_to_many_cache()
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/options.py"", line 410, in _fill_related_many_to_many_cache
    for klass in get_models():
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/loading.py"", line 167, in get_models
    self._populate()
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/loading.py"", line 61, in _populate
    self.load_app(app_name, True)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/loading.py"", line 78, in load_app
    models = import_module('.models', app_name)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/utils/importlib.py"", line 35, in import_module
    __import__(name)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/company/evaluations/models.py"", line 33, in <module>
    LABELS = Labels()
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/company/evaluations/labels.py"", line 28, in __init__
    current_site = Site.objects.get_current()
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/contrib/sites/models.py"", line 22, in get_current
    current_site = self.get(pk=sid)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/manager.py"", line 132, in get
    return self.get_query_set().get(*args, **kwargs)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/query.py"", line 333, in get
    clone = self.filter(*args, **kwargs)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/query.py"", line 550, in filter
    return self._filter_or_exclude(False, *args, **kwargs)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/query.py"", line 568, in _filter_or_exclude
    clone.query.add_q(Q(*args, **kwargs))
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/sql/query.py"", line 1128, in add_q
    can_reuse=used_aliases)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/sql/query.py"", line 1026, in add_filter
    negate=negate, process_extras=process_extras)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/sql/query.py"", line 1179, in setup_joins
    field, model, direct, m2m = opts.get_field_by_name(name)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/options.py"", line 291, in get_field_by_name
    cache = self.init_name_map()
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/options.py"", line 321, in init_name_map
    for f, model in self.get_all_related_m2m_objects_with_model():
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/options.py"", line 396, in get_all_related_m2m_objects_with_model
    cache = self._fill_related_many_to_many_cache()
}}}

And it goes through the files that call Site.objects.get_current_site() in the module loading, and finally ends with:

{{{
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/models/sql/compiler.py"", line 727, in execute_sql
    cursor.execute(sql, params)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/backends/util.py"", line 15, in execute
    return self.cursor.execute(sql, params)
  File ""/home/alfred/.hudson/jobs/company-sqlite/workspace/ve/lib/python2.6/site-packages/django/db/backends/sqlite3/base.py"", line 200, in execute
    return Database.Cursor.execute(self, query, params)
django.db.utils.DatabaseError: no such table: django_site
}}}

At this point, I'm out of ideas and can only think this is some obscure bug.
"	Uncategorized	closed	Uncategorized	1.2	Normal	fixed	sqlite3 app-loading		Unreviewed	0	0	0	0	0	0
