1526: AttributeError: 'DashboardDataGrid' object has no attribute 'id_list'
- Fixed
- Review Board
| paul.pe********@comca****** (Google Code) (Is this you? Claim this profile.) | |
| July 21, 2011 | |
| 1860 |
This morning at 6:11am I received a "[Django] Error (EXTERNAL IP): /dashboard/" email from ReviewBoard.
I am guessing one of my users did something this morning to cause me to get the email.
See the traceback below...
What version are you running?
1.5beta1
What's the URL of the page containing the problem?
See traceback below
What steps will reproduce the problem?
No idea, it just happened early in the morning
What is the expected output? What do you see instead?
Error should not happen
What operating system are you using? What browser?
See headers in traceback below
Please provide any additional information below.
Traceback (most recent call last):
File "c:\python25\lib\site-packages\django-1.1.1-py2.5.egg\django\core\handlers\base.py", line 92, in get_response
response = callback(request, *callback_args, **callback_kwargs)
File "c:\python25\lib\site-packages\Djblets-0.5.7-py2.5.egg\djblets\auth\util.py", line 46, in _checklogin
return view_func(request, *args, **kwargs)
File "c:\python25\lib\site-packages\ReviewBoard-1.5beta1-py2.5.egg\reviewboard\accounts\decorators.py", line 43, in _check_valid_prefs
return view_func(request, *args, **kwargs)
File "c:\python25\lib\site-packages\ReviewBoard-1.5beta1-py2.5.egg\reviewboard\reviews\views.py", line 307, in dashboard
return grid.render_to_response(template_name)
File "c:\python25\lib\site-packages\Djblets-0.5.7-py2.5.egg\djblets\datagrid\grids.py", line 680, in render_to_response
self.load_state()
File "c:\python25\lib\site-packages\Djblets-0.5.7-py2.5.egg\djblets\datagrid\grids.py", line 516, in load_state
self.precompute_objects()
File "c:\python25\lib\site-packages\Djblets-0.5.7-py2.5.egg\djblets\datagrid\grids.py", line 593, in precompute_objects
pk__in=self.id_list).order_by())
File "c:\python25\lib\site-packages\ReviewBoard-1.5beta1-py2.5.egg\reviewboard\reviews\datagrids.py", line 386, in post_process_queryset
queryset.with_counts(self.request.user))
File "c:\python25\lib\site-packages\Djblets-0.5.7-py2.5.egg\djblets\datagrid\grids.py", line 634, in post_process_queryset
queryset = column.augment_queryset(queryset)
File "c:\python25\lib\site-packages\ReviewBoard-1.5beta1-py2.5.egg\reviewboard\reviews\datagrids.py", line 53, in augment_queryset
pk__in=self.datagrid.id_list).values_list('pk', flat=True)
AttributeError: 'DashboardDataGrid' object has no attribute 'id_list'
<ModPythonRequest
path:/dashboard/,
GET:<QueryDict: {u'view': [u'outgoing']}>,
POST:<QueryDict: {}>,
COOKIES:{'rbsessionid': '58e43b176636145d6af36a1b61fe2009'},
META:{'AUTH_TYPE': None,
'CONTENT_LENGTH': 0,
'CONTENT_TYPE': None,
'GATEWAY_INTERFACE': 'CGI/1.1',
'HTTP_ACCEPT': 'application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5',
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3',
'HTTP_ACCEPT_ENCODING': 'gzip,deflate,sdch',
'HTTP_ACCEPT_LANGUAGE': 'en-US,en;q=0.8',
'HTTP_CONNECTION': 'keep-alive',
'HTTP_COOKIE': 'rbsessionid=58e43b176636145d6af36a1b61fe2009',
'HTTP_HOST': 'codereview',
'HTTP_REFERER': 'http://codereview/dashboard/?view=outgoing',
'HTTP_USER_AGENT': 'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/532.5 (KHTML, like Gecko) Chrome/4.0.249.89 Safari/532.5',
'PATH_INFO': u'/dashboard/',
'PATH_TRANSLATED': None,
'QUERY_STRING': 'view=outgoing',
'REMOTE_ADDR': '10.100.120.33',
'REMOTE_HOST': None,
'REMOTE_IDENT': None,
'REMOTE_USER': None,
'REQUEST_METHOD': 'GET',
'SCRIPT_NAME': '',
'SERVER_NAME': 'devsrvsea01.twistpair.local',
'SERVER_PORT': 80,
'SERVER_PROTOCOL': 'HTTP/1.1',
'SERVER_SOFTWARE': 'mod_python'}>
Very interesting, considering the function that accesses id_list comes immediately after id_list is set... I'd love to find a solid repro case for this.
We are experiencing the same problem, I can reproduce this consistently any time I attempt to add a new
default reviewers group
What's the URL of the page containing the problem?
See traceback below
What steps will reproduce the problem?
Attempting to add a new default reviewers group causes this every time. (FYI, this is not a clean install but
rather an update from a 1.0.5 version.
What is the expected output? What do you see instead?
Error should not happen
What operating system are you using? What browser?
See headers in traceback below
Please provide any additional information below.
Traceback (most recent call last):
File "/usr/lib/python2.4/site-packages/Django-1.1.1-py2.4.egg/django/core/handlers/base.py", line 92, in
get_response
response = callback(request, *callback_args, **callback_kwargs)
File "/usr/lib/python2.4/site-packages/Django-1.1.1-py2.4.egg/django/contrib/admin/sites.py", line 490,
in root
return self.model_page(request, *url.split('/', 2))
File "/usr/lib/python2.4/site-packages/Django-1.1.1-py2.4.egg/django/views/decorators/cache.py", line
44, in _wrapped_view_func
response = view_func(request, *args, **kwargs)
File "/usr/lib/python2.4/site-packages/Django-1.1.1-py2.4.egg/django/contrib/admin/sites.py", line 509,
in model_page
return admin_obj(request, rest_of_url)
File "/usr/lib/python2.4/site-packages/Django-1.1.1-py2.4.egg/django/contrib/admin/options.py", line
1098, in __call__
return self.change_view(request, unquote(url))
File "/usr/lib/python2.4/site-packages/Django-1.1.1-py2.4.egg/django/db/transaction.py", line 240, in
_commit_on_success
res = func(*args, **kw)
File "/usr/lib/python2.4/site-packages/Django-1.1.1-py2.4.egg/django/contrib/admin/options.py", line
840, in change_view
form = ModelForm(instance=obj)
File "/usr/lib/python2.4/site-packages/Django-1.1.1-py2.4.egg/django/forms/models.py", line 222, in
__init__
object_data = model_to_dict(instance, opts.fields, opts.exclude)
File "/usr/lib/python2.4/site-packages/Django-1.1.1-py2.4.egg/django/forms/models.py", line 140, in
model_to_dict
data[f.name] = [obj.pk for obj in f.value_from_object(instance)]
File "/usr/lib/python2.4/site-packages/Django-1.1.1-py2.4.egg/django/db/models/query.py", line 106, in
_result_iter
self._fill_cache()
File "/usr/lib/python2.4/site-packages/Django-1.1.1-py2.4.egg/django/db/models/query.py", line 692, in
_fill_cache
self._result_cache.append(self._iter.next())
File "/usr/lib/python2.4/site-packages/Django-1.1.1-py2.4.egg/django/db/models/query.py", line 238, in
iterator
for row in self.query.results_iter():
File "/usr/lib/python2.4/site-packages/Django-1.1.1-py2.4.egg/django/db/models/sql/query.py", line
287, in results_iter
for rows in self.execute_sql(MULTI):
File "/usr/lib/python2.4/site-packages/Django-1.1.1-py2.4.egg/django/db/models/sql/query.py", line
2369, in execute_sql
cursor.execute(sql, params)
File "/usr/lib/python2.4/site-packages/Django-1.1.1-py2.4.egg/django/db/backends/mysql/base.py", line
84, in execute
return self.cursor.execute(query, args)
File "/usr/lib/python2.4/site-packages/MySQL_python-1.2.3c1-py2.4-linux-
i686.egg/MySQLdb/cursors.py", line 173, in execute
File "/usr/lib/python2.4/site-packages/MySQL_python-1.2.3c1-py2.4-linux-
i686.egg/MySQLdb/connections.py", line 36, in defaulterrorhandler
ProgrammingError: (1146, "Table 'reviewboard.reviews_defaultreviewer_repository' doesn't exist")
<ModPythonRequest
path:/admin/db/reviews/defaultreviewer/1/,
GET:<QueryDict: {}>,
POST:<QueryDict: {}>,
COOKIES:{'rbsessionid': '3337662edc577c6e1885e6811e8868cf'},
META:{'AUTH_TYPE': None,
'CONTENT_LENGTH': 0,
'CONTENT_TYPE': None,
'GATEWAY_INTERFACE': 'CGI/1.1',
'HTTP_ACCEPT':
'application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5',
'HTTP_ACCEPT_ENCODING': 'gzip, deflate',
'HTTP_ACCEPT_LANGUAGE': 'en-us',
'HTTP_CONNECTION': 'keep-alive',
'HTTP_COOKIE': 'rbsessionid=3337662edc577c6e1885e6811e8868cf',
'HTTP_HOST': 'testrbsrv.mdigitalm.com',
'HTTP_REFERER': 'http://testrbsrv.mdigitalm.com/admin/db/reviews/defaultreviewer/',
'HTTP_USER_AGENT': 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-us) AppleWebKit/531.22.7
(KHTML, like Gecko) Version/4.0.5 Safari/531.22.7',
'PATH_INFO': u'/admin/db/reviews/defaultreviewer/1/',
'PATH_TRANSLATED': None,
'QUERY_STRING': None,
'REMOTE_ADDR': '10.200.11.101',
'REMOTE_HOST': None,
'REMOTE_IDENT': None,
'REMOTE_USER': None,
'REQUEST_METHOD': 'GET',
'SCRIPT_NAME': '',
'SERVER_NAME': 'testrbsrv.mdigitalm.com',
'SERVER_PORT': 80,
'SERVER_PROTOCOL': 'HTTP/1.1',
'SERVER_SOFTWARE': 'mod_python'}>
kbottner: Your problem is different, and due to your database schema being out of date. You need to run 'rb-site upgrade' on the site directory. See the documentation for upgrading for more information.
We're seeing this error (the trace reported by the original reporter, not kbottner) a lot in our logs after upgrading to 1.5RC1. I'm not sure what the impact is though.
I just got the same problem. I include the traceback as well. It seems to be identical, but I'm running a later version using mod_wsgi with Python 2.7 and not mod_python.
It was my own computer that caused the error, but it could not be reproduced.
Traceback (most recent call last):
File "C:\Python27\lib\site-packages\django-1.2.4-py2.7.egg\django\core\handlers\base.py", line 100, in get_response
response = callback(request, *callback_args, **callback_kwargs)
File "C:\Python27\lib\site-packages\djblets-0.6.6-py2.7.egg\djblets\auth\util.py", line 46, in _checklogin
return view_func(request, *args, **kwargs)
File "C:\Python27\lib\site-packages\reviewboard-1.5.1-py2.7.egg\reviewboard\accounts\decorators.py", line 46, in _check_valid_prefs
return view_func(request, *args, **kwargs)
File "C:\Python27\lib\site-packages\reviewboard-1.5.1-py2.7.egg\reviewboard\reviews\views.py", line 330, in dashboard
return grid.render_to_response(template_name)
File "C:\Python27\lib\site-packages\djblets-0.6.6-py2.7.egg\djblets\datagrid\grids.py", line 700, in render_to_response
self.load_state()
File "C:\Python27\lib\site-packages\djblets-0.6.6-py2.7.egg\djblets\datagrid\grids.py", line 535, in load_state
self.precompute_objects()
File "C:\Python27\lib\site-packages\djblets-0.6.6-py2.7.egg\djblets\datagrid\grids.py", line 611, in precompute_objects
pk__in=self.id_list).order_by())
File "C:\Python27\lib\site-packages\reviewboard-1.5.1-py2.7.egg\reviewboard\reviews\datagrids.py", line 438, in post_process_queryset
queryset.with_counts(self.request.user))
File "C:\Python27\lib\site-packages\djblets-0.6.6-py2.7.egg\djblets\datagrid\grids.py", line 654, in post_process_queryset
queryset = column.augment_queryset(queryset)
File "C:\Python27\lib\site-packages\reviewboard-1.5.1-py2.7.egg\reviewboard\reviews\datagrids.py", line 83, in augment_queryset
pk__in=self.datagrid.id_list).values_list('pk', flat=True)
AttributeError: 'DashboardDataGrid' object has no attribute 'id_list'
<WSGIRequest
GET:<QueryDict: {}>,
POST:<QueryDict: {}>,
COOKIES:{'collapsediffs': 'True',
'csrftoken': 'ac00aafe43790bd98aa413439d849c68',
'rbsessionid': '96f0843efe8068cf9cc21ca584987c75'},
META:{'COMSPEC': 'C:\\Windows\\system32\\cmd.exe',
'DOCUMENT_ROOT': 'C:/www/vhosts/reviewboard/htdocs',
'GATEWAY_INTERFACE': 'CGI/1.1',
'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7',
'HTTP_ACCEPT_ENCODING': 'gzip, deflate',
'HTTP_ACCEPT_LANGUAGE': 'sv-se,sv;q=0.8,en-us;q=0.5,en;q=0.3',
'HTTP_CACHE_CONTROL': 'max-age=0',
'HTTP_CONNECTION': 'keep-alive',
'HTTP_COOKIE': 'rbsessionid=96f0843efe8068cf9cc21ca584987c75; csrftoken=ac00aafe43790bd98aa413439d849c68; collapsediffs=True',
'HTTP_DNT': '1',
'HTTP_HOST': 'reviewboard.<snipped>',
'HTTP_KEEP_ALIVE': '115',
'HTTP_USER_AGENT': 'Mozilla/5.0 (Windows NT 6.0; WOW64; rv:2.0) Gecko/20100101 Firefox/4.0',
'PATHEXT': '.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC',
'PATH_INFO': u'/dashboard/',
'PATH_TRANSLATED': 'C:\\www\\vhosts\\reviewboard\\htdocs\\reviewboard.wsgi\\dashboard\\',
'QUERY_STRING': '',
'REMOTE_ADDR': '<snipped>',
'REMOTE_PORT': '53596',
'REQUEST_METHOD': 'GET',
'REQUEST_URI': '/dashboard/',
'SCRIPT_FILENAME': 'C:/www/vhosts/reviewboard/htdocs/reviewboard.wsgi',
'SCRIPT_NAME': u'',
'SERVER_ADDR': '<snipped>',
'SERVER_ADMIN': '<snipped>',
'SERVER_NAME': 'reviewboard.<snipped>',
'SERVER_PORT': '80',
'SERVER_PROTOCOL': 'HTTP/1.1',
'SERVER_SIGNATURE': '',
'SERVER_SOFTWARE': 'Apache/2.2.17 (Win32) DAV/2 PHP/5.3.5 mod_wsgi/3.3 Python/2.7.1 SVN/1.6.15',
'SystemRoot': 'C:\\Windows',
'WINDIR': 'C:\\Windows',
'mod_wsgi.application_group': 'reviewboard.<snipped>|',
'mod_wsgi.callable_object': 'application',
'mod_wsgi.handler_script': '',
'mod_wsgi.input_chunked': '0',
'mod_wsgi.process_group': '',
'mod_wsgi.request_handler': 'wsgi-script',
'mod_wsgi.script_reloading': '1',
'mod_wsgi.version': (3, 3),
'wsgi.errors': <mod_wsgi.Log object at 0x065E7908>,
'wsgi.file_wrapper': <built-in method file_wrapper of mod_wsgi.Adapter object at 0x06492F50>,
'wsgi.input': <mod_wsgi.Input object at 0x065E7A20>,
'wsgi.multiprocess': False,
'wsgi.multithread': True,
'wsgi.run_once': False,
'wsgi.url_scheme': 'http',
'wsgi.version': (1, 1)}>
I just hit this too after an upgrade from: 1.0.5.1 to: 1.5.5. Using Python 2.5 under Ubuntu 8.04.3 LTS (hardy) on x86. So far a one off.
Browser/user see:
Something broke! (Error 500)
It appears something broke when you tried to go to here. This is either
a bug in Review Board or a server configuration error. Please report
this to your administrator.
Email trace back:
Traceback (most recent call last):
File "/usr/lib/python2.5/site-packages/Django-1.3-py2.5.egg/django/core/handlers/base.py", line 111, in get_response
response = callback(request, *callback_args, **callback_kwargs)
File "/usr/lib/python2.5/site-packages/Djblets-0.6.7-py2.5.egg/djblets/auth/util.py", line 46, in _checklogin
return view_func(request, *args, **kwargs)
File "/usr/lib/python2.5/site-packages/ReviewBoard-1.5.5.dev-py2.5.egg/reviewboard/accounts/decorators.py", line 46, in _check_valid_prefs
return view_func(request, *args, **kwargs)
File "/usr/lib/python2.5/site-packages/ReviewBoard-1.5.5.dev-py2.5.egg/reviewboard/reviews/views.py", line 330, in dashboard
return grid.render_to_response(template_name)
File "/usr/lib/python2.5/site-packages/Djblets-0.6.7-py2.5.egg/djblets/datagrid/grids.py", line 699, in render_to_response
self.load_state()
File "/usr/lib/python2.5/site-packages/Djblets-0.6.7-py2.5.egg/djblets/datagrid/grids.py", line 534, in load_state
self.precompute_objects()
File "/usr/lib/python2.5/site-packages/Djblets-0.6.7-py2.5.egg/djblets/datagrid/grids.py", line 610, in precompute_objects
pk__in=self.id_list).order_by())
File "/usr/lib/python2.5/site-packages/ReviewBoard-1.5.5.dev-py2.5.egg/reviewboard/reviews/datagrids.py", line 444, in post_process_queryset
queryset.with_counts(self.request.user))
File "/usr/lib/python2.5/site-packages/Djblets-0.6.7-py2.5.egg/djblets/datagrid/grids.py", line 653, in post_process_queryset
queryset = column.augment_queryset(queryset)
File "/usr/lib/python2.5/site-packages/ReviewBoard-1.5.5.dev-py2.5.egg/reviewboard/reviews/datagrids.py", line 81, in augment_queryset
pk__in=self.datagrid.id_list).values_list('pk', flat=True)
AttributeError: 'DashboardDataGrid' object has no attribute 'id_list'
<ModPythonRequest
path:/dashboard/,
GET:<QueryDict: {u'view': [u'to-me']}>,
POST:<QueryDict: {}>,
COOKIES:{'collapsediffs': 'True', 'rbsessionid': **SNIP**},
META:{'AUTH_TYPE': None,
'CONTENT_LENGTH': 0,
'CONTENT_TYPE': None,
'GATEWAY_INTERFACE': 'CGI/1.1',
'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7',
'HTTP_ACCEPT_ENCODING': 'gzip,deflate',
'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5',
'HTTP_CACHE_CONTROL': 'max-age=0',
'HTTP_CONNECTION': 'keep-alive',
'HTTP_COOKIE': 'rbsessionid=**SNIP**; collapsediffs=True',
'HTTP_HOST': '**SNIP**',
'HTTP_KEEP_ALIVE': '115',
'HTTP_USER_AGENT': 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16 ( .NET CLR 3.5.30729)',
'PATH_INFO': u'/dashboard/',
'PATH_TRANSLATED': None,
'QUERY_STRING': 'view=to-me',
'REMOTE_ADDR': '**SNIP**',
'REMOTE_HOST': None,
'REMOTE_IDENT': None,
'REMOTE_USER': None,
'REQUEST_METHOD': 'GET',
'SCRIPT_NAME': '',
'SERVER_NAME': '**SNIP**',
'SERVER_PORT': 80,
'SERVER_PROTOCOL': 'HTTP/1.1',
'SERVER_SOFTWARE': 'mod_python'}>
The same user who experience this problem yesterday hit a similar issue. The dashboard 500'd for client BUT the trace back is different. I'm not sure if this is the same issue, different manifestation or something else. Interestingly Djblets is the main thing in the trace back not Reviewboard.
When we upgraded we jumped from Djblets-0.5.5 to Djblets-0.6.7.
Django version jump was Django-1.1.1 to Django-1.3
Traceback (most recent call last):
File "/usr/lib/python2.5/site-packages/Django-1.3-py2.5.egg/django/core/handlers/base.py", line 111, in get_response
response = callback(request, *callback_args, **callback_kwargs)
File "/usr/lib/python2.5/site-packages/Djblets-0.6.7-py2.5.egg/djblets/auth/util.py", line 46, in _checklogin
return view_func(request, *args, **kwargs)
File "/usr/lib/python2.5/site-packages/ReviewBoard-1.5.5.dev-py2.5.egg/reviewboard/accounts/decorators.py", line 46, in _check_valid_prefs
return view_func(request, *args, **kwargs)
File "/usr/lib/python2.5/site-packages/ReviewBoard-1.5.5.dev-py2.5.egg/reviewboard/reviews/views.py", line 330, in dashboard
return grid.render_to_response(template_name)
File "/usr/lib/python2.5/site-packages/Djblets-0.6.7-py2.5.egg/djblets/datagrid/grids.py", line 699, in render_to_response
self.load_state()
File "/usr/lib/python2.5/site-packages/Djblets-0.6.7-py2.5.egg/djblets/datagrid/grids.py", line 534, in load_state
self.precompute_objects()
File "/usr/lib/python2.5/site-packages/Djblets-0.6.7-py2.5.egg/djblets/datagrid/grids.py", line 636, in precompute_objects
for obj in object_list
File "/usr/lib/python2.5/site-packages/Djblets-0.6.7-py2.5.egg/djblets/datagrid/grids.py", line 241, in render_cell
mark_safe(self.datagrid.cell_template_obj.render(ctx))
AttributeError: 'NoneType' object has no attribute 'render'
<ModPythonRequest
path:/dashboard/,
GET:<QueryDict: {}>,
POST:<QueryDict: {}>,
COOKIES:{'collapsediffs': 'True', 'rbsessionid': '**SNIP**'},
META:{'AUTH_TYPE': None,
'CONTENT_LENGTH': 0,
'CONTENT_TYPE': None,
'GATEWAY_INTERFACE': 'CGI/1.1',
'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7',
'HTTP_ACCEPT_ENCODING': 'gzip,deflate',
'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5',
'HTTP_CACHE_CONTROL': 'max-age=0',
'HTTP_CONNECTION': 'keep-alive',
'HTTP_COOKIE': 'rbsessionid=**SNIP**; collapsediffs=True',
'HTTP_HOST': '**SNIP**',
'HTTP_KEEP_ALIVE': '115',
'HTTP_USER_AGENT': 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16 ( .NET CLR 3.5.30729)',
'PATH_INFO': u'/dashboard/',
'PATH_TRANSLATED': None,
'QUERY_STRING': None,
'REMOTE_ADDR': '**SNIP**',
'REMOTE_HOST': None,
'REMOTE_IDENT': None,
'REMOTE_USER': None,
'REQUEST_METHOD': 'GET',
'SCRIPT_NAME': '',
'SERVER_NAME': '**SNIP**',
'SERVER_PORT': 80,
'SERVER_PROTOCOL': 'HTTP/1.1',
'SERVER_SOFTWARE': 'mod_python'}>
For the record, I get this occasionally too. Haven't been able to determine who was using the server when the error happened or what he was doing.
Traceback (most recent call last):
File "C:\Python25\lib\site-packages\django-1.2.3-py2.5.egg\django\core\handlers\base.py",
line 100, in get_response
response = callback(request, *callback_args, **callback_kwargs)
File "C:\Python25\lib\site-packages\djblets-0.6.6-py2.5.egg\djblets\auth\util.py",
line 46, in _checklogin
return view_func(request, *args, **kwargs)
File "C:\Python25\lib\site-packages\reviewboard-1.5.1-py2.5.egg\reviewboard\accounts\decorators.py",
line 46, in _check_valid_prefs
return view_func(request, *args, **kwargs)
File "C:\Python25\lib\site-packages\reviewboard-1.5.1-py2.5.egg\reviewboard\reviews\views.py",
line 330, in dashboard
return grid.render_to_response(template_name)
File "C:\Python25\lib\site-packages\djblets-0.6.6-py2.5.egg\djblets\datagrid\grids.py",
line 700, in render_to_response
self.load_state()
File "C:\Python25\lib\site-packages\djblets-0.6.6-py2.5.egg\djblets\datagrid\grids.py",
line 535, in load_state
self.precompute_objects()
File "C:\Python25\lib\site-packages\djblets-0.6.6-py2.5.egg\djblets\datagrid\grids.py",
line 611, in precompute_objects
pk__in=self.id_list).order_by())
File "C:\Python25\lib\site-packages\reviewboard-1.5.1-py2.5.egg\reviewboard\reviews\datagrids.py",
line 438, in post_process_queryset
queryset.with_counts(self.request.user))
File "C:\Python25\lib\site-packages\djblets-0.6.6-py2.5.egg\djblets\datagrid\grids.py",
line 654, in post_process_queryset
queryset = column.augment_queryset(queryset)
File "C:\Python25\lib\site-packages\reviewboard-1.5.1-py2.5.egg\reviewboard\reviews\datagrids.py",
line 83, in augment_queryset
pk__in=self.datagrid.id_list).values_list('pk', flat=True)
AttributeError: 'DashboardDataGrid' object has no attribute 'id_list'
<ModPythonRequest
path:/dashboard/,
GET:<QueryDict: {u'view': [u'outgoing']}>,
POST:<QueryDict: {}>,
COOKIES:{'rbsessionid': 'c307d37908b2901bbd2e42e4b714ce9b'},
META:{'AUTH_TYPE': None,
'CONTENT_LENGTH': 0,
'CONTENT_TYPE': None,
'GATEWAY_INTERFACE': 'CGI/1.1',
'HTTP_ACCEPT':
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7',
'HTTP_ACCEPT_ENCODING': 'gzip,deflate',
'HTTP_ACCEPT_LANGUAGE': 'pt-br,pt;q=0.8,en-us;q=0.5,en;q=0.3',
'HTTP_CACHE_CONTROL': 'max-age=0',
'HTTP_CONNECTION': 'keep-alive',
'HTTP_COOKIE': 'rbsessionid=c307d37908b2901bbd2e42e4b714ce9b',
'HTTP_HOST': 'myserver2:8080',
'HTTP_KEEP_ALIVE': '115',
'HTTP_REFERER': 'http://myserver2:8080/dashboard/?view=outgoing',
'HTTP_USER_AGENT': 'Mozilla/5.0 (Windows; U; Windows NT 5.1; pt-BR;
rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8',
'PATH_INFO': u'/dashboard/',
'PATH_TRANSLATED': None,
'QUERY_STRING': 'view=outgoing',
'REMOTE_ADDR': '172.16.44.45',
'REMOTE_HOST': None,
'REMOTE_IDENT': None,
'REMOTE_USER': None,
'REQUEST_METHOD': 'GET',
'SCRIPT_NAME': '',
'SERVER_NAME': 'myserver2',
'SERVER_PORT': 8080,
'SERVER_PROTOCOL': 'HTTP/1.1',
'SERVER_SOFTWARE': 'mod_python'}>.
Today I got this error for /r (rather than the dashboard).
Traceback (most recent call last):
File "/usr/lib/python2.5/site-packages/Django-1.3-py2.5.egg/django/core/handlers/base.py", line 111, in get_response
response = callback(request, *callback_args, **callback_kwargs)
File "/usr/lib/python2.5/site-packages/ReviewBoard-1.5.5.dev-py2.5.egg/reviewboard/accounts/decorators.py", line 27, in _check
return view_func(*args, **kwargs)
File "/usr/lib/python2.5/site-packages/ReviewBoard-1.5.5.dev-py2.5.egg/reviewboard/reviews/views.py", line 285, in all_review_requests
return datagrid.render_to_response(template_name)
File "/usr/lib/python2.5/site-packages/Djblets-0.6.7-py2.5.egg/djblets/datagrid/grids.py", line 699, in render_to_response
self.load_state()
File "/usr/lib/python2.5/site-packages/Djblets-0.6.7-py2.5.egg/djblets/datagrid/grids.py", line 534, in load_state
self.precompute_objects()
File "/usr/lib/python2.5/site-packages/Djblets-0.6.7-py2.5.egg/djblets/datagrid/grids.py", line 610, in precompute_objects
pk__in=self.id_list).order_by())
File "/usr/lib/python2.5/site-packages/ReviewBoard-1.5.5.dev-py2.5.egg/reviewboard/reviews/datagrids.py", line 444, in post_process_queryset
queryset.with_counts(self.request.user))
File "/usr/lib/python2.5/site-packages/Djblets-0.6.7-py2.5.egg/djblets/datagrid/grids.py", line 653, in post_process_queryset
queryset = column.augment_queryset(queryset)
File "/usr/lib/python2.5/site-packages/ReviewBoard-1.5.5.dev-py2.5.egg/reviewboard/reviews/datagrids.py", line 81, in augment_queryset
pk__in=self.datagrid.id_list).values_list('pk', flat=True)
AttributeError: 'DashboardDataGrid' object has no attribute 'id_list'
<ModPythonRequest
path:/r/,
GET:<QueryDict: {}>,
POST:<QueryDict: {}>,
COOKIES:{'rbsessionid': **SNIP**},
META:{'AUTH_TYPE': None,
'CONTENT_LENGTH': 0,
'CONTENT_TYPE': None,
'GATEWAY_INTERFACE': 'CGI/1.1',
'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7',
'HTTP_ACCEPT_ENCODING': 'gzip,deflate',
'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5',
'HTTP_CONNECTION': 'keep-alive',
'HTTP_COOKIE': 'rbsessionid=**SNIP**',
'HTTP_HOST': '**SNIP**',
'HTTP_KEEP_ALIVE': '300',
'HTTP_REFERER': 'http://**SNIP**/r/8736/',
'HTTP_USER_AGENT': 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.15) Gecko/2009101601 Firefox/3.0.15 (.NET CLR 3.5.30729)',
'PATH_INFO': u'/r/',
'PATH_TRANSLATED': None,
'QUERY_STRING': None,
'REMOTE_ADDR': '**SNIP**',
'REMOTE_HOST': None,
'REMOTE_IDENT': None,
'REMOTE_USER': None,
'REQUEST_METHOD': 'GET',
'SCRIPT_NAME': '',
'SERVER_NAME': '**SNIP**',
'SERVER_PORT': 80,
'SERVER_PROTOCOL': 'HTTP/1.1',
'SERVER_SOFTWARE': 'mod_python'}>
I get this error on a regular base of around 30 times since beginning of June.
Most times the error is in the form of
AttributeError: 'DashboardDataGrid' object has no attribute 'id_list'
sometimes also
AttributeError: 'ReviewRequestDataGrid' object has no attribute 'id_list'
We're working with a small development team running reviewboard on a windows server.
First install was 1.5.1 I think, then upgraded to 1.5.2 now running 1.5.5.
Let me know if there is something I can do to provide further information on this and I will wait for the next "internal server error" mail.
Traceback (most recent call last):
File "C:\Python27\lib\site-packages\django-1.3-py2.7.egg\django\core\handlers\base.py", line 111, in get_response
response = callback(request, *callback_args, **callback_kwargs)
File "C:\Python27\lib\site-packages\djblets-0.6.7-py2.7.egg\djblets\auth\util.py", line 46, in _checklogin
return view_func(request, *args, **kwargs)
File "C:\Python27\lib\site-packages\reviewboard-1.5.5-py2.7.egg\reviewboard\accounts\decorators.py", line 46, in _check_valid_prefs
return view_func(request, *args, **kwargs)
File "C:\Python27\lib\site-packages\reviewboard-1.5.5-py2.7.egg\reviewboard\reviews\views.py", line 330, in dashboard
return grid.render_to_response(template_name)
File "C:\Python27\lib\site-packages\djblets-0.6.7-py2.7.egg\djblets\datagrid\grids.py", line 699, in render_to_response
self.load_state()
File "C:\Python27\lib\site-packages\djblets-0.6.7-py2.7.egg\djblets\datagrid\grids.py", line 534, in load_state
self.precompute_objects()
File "C:\Python27\lib\site-packages\djblets-0.6.7-py2.7.egg\djblets\datagrid\grids.py", line 610, in precompute_objects
pk__in=self.id_list).order_by())
File "C:\Python27\lib\site-packages\reviewboard-1.5.5-py2.7.egg\reviewboard\reviews\datagrids.py", line 444, in post_process_queryset
queryset.with_counts(self.request.user))
File "C:\Python27\lib\site-packages\djblets-0.6.7-py2.7.egg\djblets\datagrid\grids.py", line 653, in post_process_queryset
queryset = column.augment_queryset(queryset)
File "C:\Python27\lib\site-packages\reviewboard-1.5.5-py2.7.egg\reviewboard\reviews\datagrids.py", line 81, in augment_queryset
pk__in=self.datagrid.id_list).values_list('pk', flat=True)
AttributeError: 'DashboardDataGrid' object has no attribute 'id_list'
<WSGIRequest
GET:<QueryDict: {u'sort': [u'time_added,branch'], u'view': [u'mine']}>,
POST:<QueryDict: {}>,
COOKIES:{'JSESSIONID': '**SNIP**',
'collapsediffs': 'True',
'hudson_auto_refresh': 'true',
'iconSize': '16x16',
'rbsessionid': '**SNIP**',
'screenResolution': '1280x1024',
'storedtemplate': 'calm'},
META:{'COMSPEC': 'C:\\Windows\\system32\\cmd.exe',
'DOCUMENT_ROOT': 'C:/reviewboard/htdocs',
'GATEWAY_INTERFACE': 'CGI/1.1',
'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7',
'HTTP_ACCEPT_ENCODING': 'gzip,deflate',
'HTTP_ACCEPT_LANGUAGE': 'de-de,de;q=0.8,en-us;q=0.5,en;q=0.3',
'HTTP_CONNECTION': 'keep-alive',
'HTTP_COOKIE': 'rbsessionid=**SNIP**; iconSize=16x16; storedtemplate=calm; hudson_auto_refresh=true; screenResolution=1280x1024; JSESSIONID=**SNIP**; collapsediffs=True',
'HTTP_DNT': '1',
'HTTP_HOST': '**SNIP**',
'HTTP_KEEP_ALIVE': '115',
'HTTP_REFERER': 'http://**SNIP**/dashboard/?view=mine',
'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; U; Linux x86_64; de; rv:1.9.2.17) Gecko/20110420 SUSE/3.6.17-0.2.1 Firefox/3.6.17',
'PATHEXT': '.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC',
'PATH_INFO': u'/dashboard/',
'PATH_TRANSLATED': 'C:\\reviewboard\\htdocs\\reviewboard.wsgi\\dashboard\\',
'QUERY_STRING': 'view=mine&sort=time_added,branch',
'REMOTE_ADDR': '**SNIP**',
'REMOTE_PORT': '37193',
'REQUEST_METHOD': 'GET',
'REQUEST_URI': '/dashboard/?view=mine&sort=time_added,branch',
'SCRIPT_FILENAME': 'C:/reviewboard/htdocs/reviewboard.wsgi',
'SCRIPT_NAME': u'',
'SERVER_ADDR': '**SNIP**',
'SERVER_ADMIN': '**SNIP**',
'SERVER_NAME': '**SNIP**',
'SERVER_PORT': '80',
'SERVER_PROTOCOL': 'HTTP/1.1',
'SERVER_SIGNATURE': '',
'SERVER_SOFTWARE': 'Apache/2.2.17 (Win32) PHP/5.3.6 mod_wsgi/3.3 Python/2.7.1',
'SystemRoot': 'C:\\Windows',
'WINDIR': 'C:\\Windows',
'mod_wsgi.application_group': '**SNIP**|',
'mod_wsgi.callable_object': 'application',
'mod_wsgi.handler_script': '',
'mod_wsgi.input_chunked': '0',
'mod_wsgi.process_group': '',
'mod_wsgi.request_handler': 'wsgi-script',
'mod_wsgi.script_reloading': '1',
'mod_wsgi.version': (3, 3),
'wsgi.errors': <mod_wsgi.Log object at 0x03E752F0>,
'wsgi.file_wrapper': <built-in method file_wrapper of mod_wsgi.Adapter object at 0x052F0F98>,
'wsgi.input': <mod_wsgi.Input object at 0x03E754A8>,
'wsgi.multiprocess': False,
'wsgi.multithread': True,
'wsgi.run_once': False,
'wsgi.url_scheme': 'http',
'wsgi.version': (1, 1)}>
I would love to fix this bug, but it defies all sense. We set id_list just before calling the set of functions that leads to this. So it should work, but clearly it sometimes breaks. Why, we don't know, because it's not consistent. I'm going to be updating things to set id_list in the constructor for the object, but it may just mask other problems.
-
+ Confirmed -
+ Milestone-Release1.6