﻿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
8223	Infinite loop caused by ordering	David Cramer	nobody	"The model itself contains no data in the database:


{{{
class Syntax(models.Model):
    name    = models.CharField(max_length=32)
    lexer   = models.CharField(max_length=32)
    order   = models.IntegerField(default=10)
    parent  = models.ForeignKey('self', blank=True, null=True)
    children= models.SmallIntegerField(default=0)

    class Meta:
        ordering = ('parent', 'order', 'name')

Traceback:
File ""/Library/Python/2.5/site-packages/django/core/handlers/base.py"" in get_response
  77.                     request.path_info)
File ""/Library/Python/2.5/site-packages/django/core/urlresolvers.py"" in resolve
  240.                     sub_match = pattern.resolve(new_path)
File ""/Library/Python/2.5/site-packages/django/core/urlresolvers.py"" in resolve
  240.                     sub_match = pattern.resolve(new_path)
File ""/Library/Python/2.5/site-packages/django/core/urlresolvers.py"" in resolve
  179.             return self.callback, args, kwargs
File ""/Library/Python/2.5/site-packages/django/core/urlresolvers.py"" in _get_callback
  185.             self._callback = get_callable(self._callback_str)
File ""/Users/dcramer/Development/django-compositepks/django/utils/functional.py"" in wrapper
  130.         result = func(*args)
File ""/Library/Python/2.5/site-packages/django/core/urlresolvers.py"" in get_callable
  54.                 lookup_view = getattr(__import__(mod_name, {}, {}, ['']), func_name)
File ""/Users/dcramer/Development/pastethat/pastes/views.py"" in <module>
  6. from forms import PasteFileForm, PasteLinkForm, PasteTextForm
File ""/Users/dcramer/Development/pastethat/pastes/forms.py"" in <module>
  55. class PasteTextForm(forms.Form):
File ""/Users/dcramer/Development/pastethat/pastes/forms.py"" in PasteTextForm
  56.     syntax  = GroupedModelChoiceField(queryset=Syntax.objects.all(), empty_label='(Automatic)', required=False)
File ""/Library/Python/2.5/site-packages/django/forms/models.py"" in __init__
  475.         self.queryset = queryset
File ""/Library/Python/2.5/site-packages/django/forms/models.py"" in _set_queryset
  483.         self.widget.choices = self.choices
File ""/Users/dcramer/Development/pastethat/pastes/forms.py"" in _get_choices
  41.             loop(self.queryset)
File ""/Users/dcramer/Development/pastethat/pastes/forms.py"" in loop
  24.                 for parent, objects in itertools.groupby(sorted(objects, key=func), key=func):
File ""/Library/Python/2.5/site-packages/django/db/models/query.py"" in __len__
  153.             self._result_cache.extend(list(self._iter))
File ""/Library/Python/2.5/site-packages/django/db/models/query.py"" in iterator
  266.         for row in self.query.results_iter():
File ""/Library/Python/2.5/site-packages/django/db/models/sql/query.py"" in results_iter
  200.         for rows in self.execute_sql(MULTI):
File ""/Library/Python/2.5/site-packages/django/db/models/sql/query.py"" in execute_sql
  1603.             sql, params = self.as_sql()
File ""/Library/Python/2.5/site-packages/django/db/models/sql/query.py"" in as_sql
  255.         ordering = self.get_ordering()
File ""/Library/Python/2.5/site-packages/django/db/models/sql/query.py"" in get_ordering
  613.                         self.model._meta, default_order=asc):
File ""/Library/Python/2.5/site-packages/django/db/models/sql/query.py"" in find_ordering_name
  666.                         order, already_seen))
File ""/Library/Python/2.5/site-packages/django/db/models/sql/query.py"" in find_ordering_name
  660.                 raise FieldError('Infinite loop caused by ordering.')
}}}"		closed	Database layer (models, ORM)	dev		invalid			Unreviewed	0	0	0	0	0	0
