What version are you running?
1.5.1
What's the URL of the page containing the problem?
Error Code: 500
Error Text: Internal Server Error
Request URL: /api/json/reviewrequests/634/diff/2/file/3187/line/1/comments/
Request Data: action=set&num_lines=1&text=Test
What steps will reproduce the problem?
1. Error produces when commenting a source code during the code review
2.
3.
What is the expected output? What do you see instead?
DoesNotExist at /api/json/reviewrequests/634/diff/2/file/3187/line/1/comments/
Review matching query does not exist.
Request Method: POST
Request URL: http://192.168.2.5/api/json/reviewrequests/634/diff/2/file/3187/line/1/comments/
Django Version: 1.2.4
Exception Type: DoesNotExist
Exception Value:
Review matching query does not exist.
Exception Location: /usr/local/lib/python2.6/dist-packages/Django-1.2.4-py2.6.egg/django/db/models/query.py in get, line 347
Python Executable: /usr/bin/python
Python Version: 2.6.5
Python Path: ['/var/www/reviews.nucore.com/conf', '/usr/local/lib/python2.6/dist-packages/python_memcached-1.47-py2.6.egg', '/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.5.1-py2.6.egg', '/usr/local/lib/python2.6/dist-packages/recaptcha_client-1.0.5-py2.6.egg', '/usr/local/lib/python2.6/dist-packages/pytz-2010o-py2.6.egg', '/usr/local/lib/python2.6/dist-packages/python_dateutil-1.5-py2.6.egg', '/usr/local/lib/python2.6/dist-packages/paramiko-1.7.6-py2.6.egg', '/usr/local/lib/python2.6/dist-packages/flup-1.0.3.dev_20100525-py2.6.egg', '/usr/local/lib/python2.6/dist-packages/Pygments-1.3.1-py2.6.egg', '/usr/local/lib/python2.6/dist-packages/Djblets-0.6.6-py2.6.egg', '/usr/local/lib/python2.6/dist-packages/django_evolution-0.6.2-py2.6.egg', '/usr/local/lib/python2.6/dist-packages/Django-1.2.4-py2.6.egg', '/usr/local/lib/python2.6/dist-packages/pycrypto-2.3-py2.6-linux-x86_64.egg', '/usr/local/lib/python2.6/dist-packages/PIL-1.1.6-py2.6-linux-x86_64.egg', '/usr/lib/python2.6', '/usr/lib/python2.6/plat-linux2', '/usr/lib/python2.6/lib-tk', '/usr/lib/python2.6/lib-old', '/usr/lib/python2.6/lib-dynload', '/usr/lib/python2.6/dist-packages', '/usr/lib/pymodules/python2.6', '/usr/lib/pymodules/python2.6/gtk-2.0', '/usr/local/lib/python2.6/dist-packages']
Server time: Tue, 5 Jun 2012 22:10:11 -0700
Traceback Switch to copy-and-paste view
/usr/local/lib/python2.6/dist-packages/Django-1.2.4-py2.6.egg/django/core/handlers/base.py in get_response
response = callback(request, *callback_args, **callback_kwargs) ...
▶ Local vars
/usr/local/lib/python2.6/dist-packages/Django-1.2.4-py2.6.egg/django/views/decorators/cache.py in _wrapped_view_func
response = view_func(request, *args, **kwargs) ...
▶ Local vars
/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.5.1-py2.6.egg/reviewboard/webapi/decorators.py in _view
response = view_func(*args, **kwargs) ...
▶ Local vars
/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.5.1-py2.6.egg/reviewboard/webapi/decorators.py in _check
return webapi_login_required(view_func)(*args, **kwargs) ...
▶ Local vars
/usr/local/lib/python2.6/dist-packages/Djblets-0.6.6-py2.6.egg/djblets/webapi/decorators.py in _checklogin
response = view_func(*args, **kwargs) ...
▶ Local vars
/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.5.1-py2.6.egg/reviewboard/webapi/json.py in diff_line_comments
base_reply_to__isnull=True) ...
▶ Local vars
/usr/local/lib/python2.6/dist-packages/Djblets-0.6.6-py2.6.egg/djblets/util/db.py in get_or_create
return self.get(**kwargs) ...
▶ Local vars
/usr/local/lib/python2.6/dist-packages/Django-1.2.4-py2.6.egg/django/db/models/manager.py in get
return self.get_query_set().get(*args, **kwargs) ...
▶ Local vars
/usr/local/lib/python2.6/dist-packages/Django-1.2.4-py2.6.egg/django/db/models/query.py in get
if self.query.can_filter():
clone = clone.order_by()
num = len(clone)
if num == 1:
return clone._result_cache[0]
if not num:
raise self.model.DoesNotExist("%s matching query does not exist."
% self.model._meta.object_name) ...
raise self.model.MultipleObjectsReturned("get() returned more than one %s -- it returned %s! Lookup parameters were %s"
% (self.model._meta.object_name, num, kwargs))
def create(self, **kwargs):
"""
Creates a new object with the given kwargs, saving it to the database
▶ Local vars
Request information
GET
No GET data
POST
Variable Value
action
u'set'
text
u'Test'
api_format
u'json'
num_lines
u'1'
FILES
No FILES data
COOKIES
Variable Value
csrftoken
'1beaeea82812a0a04e168986e8e6442c'
collapsediffs
'True'
rbsessionid
'315a032f286e6d7c8b343e4ac54644bc'
META
Variable Value
AUTH_TYPE
None
CONTENT_LENGTH
'32'
CONTENT_TYPE
'application/x-www-form-urlencoded; charset=UTF-8'
GATEWAY_INTERFACE
'CGI/1.1'
HTTP_ACCEPT
'application/json, text/javascript, */*'
HTTP_ACCEPT_ENCODING
'gzip, deflate'
HTTP_ACCEPT_LANGUAGE
'en-us,en;q=0.5'
HTTP_CACHE_CONTROL
'no-cache'
HTTP_CONNECTION
'keep-alive'
HTTP_CONTENT_LENGTH
'32'
HTTP_CONTENT_TYPE
'application/x-www-form-urlencoded; charset=UTF-8'
HTTP_COOKIE
'rbsessionid=315a032f286e6d7c8b343e4ac54644bc; csrftoken=1beaeea82812a0a04e168986e8e6442c; collapsediffs=True'
HTTP_HOST
'192.168.2.5'
HTTP_PRAGMA
'no-cache'
HTTP_REFERER
'http://192.168.2.5/r/634/diff/'
HTTP_USER_AGENT
'Mozilla/5.0 (Windows NT 6.1; rv:12.0) Gecko/20100101 Firefox/12.0'
HTTP_X_REQUESTED_WITH
'XMLHttpRequest'
PATH_INFO
u'/api/json/reviewrequests/634/diff/2/file/3187/line/1/comments/'
PATH_TRANSLATED
None
QUERY_STRING
None
REMOTE_ADDR
'192.168.2.65'
REMOTE_HOST
None
REMOTE_IDENT
None
REMOTE_USER
None
REQUEST_METHOD
'POST'
SCRIPT_NAME
''
SERVER_NAME
'nucore'
SERVER_PORT
80
SERVER_PROTOCOL
'HTTP/1.1'
SERVER_SOFTWARE
'mod_python'
Settings
Using settings module reviewboard.settings
Setting Value
ABSOLUTE_URL_OVERRIDES
{}
ADMINS
((u'admin', u'admin@nucore.com'),)
ADMIN_FOR
()
ADMIN_MEDIA_PREFIX
u'/media/admin/'
AD_DOMAIN_CONTROLLER
u''
AD_DOMAIN_NAME
u''
AD_FIND_DC_FROM_DNS
False
AD_GROUP_NAME
u''
AD_OU_NAME
u''
AD_RECURSION_DEPTH
None
AD_SEARCH_ROOT
u''
AD_USE_TLS
False
AJAX_SERIAL
1294041417
ALLOWED_INCLUDE_ROOTS
()
APPEND_SLASH
True
AUTHENTICATION_BACKENDS
('django.contrib.auth.backends.ModelBackend',)
AUTH_PROFILE_MODULE
'accounts.Profile'
AWS_ACCESS_KEY_ID
''
AWS_CALLING_FORMAT
2
AWS_DEFAULT_ACL
u'public-read'
AWS_HEADERS
{}
AWS_QUERYSTRING_ACTIVE
False
AWS_QUERYSTRING_EXPIRE
60
AWS_S3_SECURE_URLS
False
AWS_SECRET_ACCESS_KEY
'********************'
AWS_STORAGE_BUCKET_NAME
''
BANNED_IPS
()
CACHE_BACKEND
u'memcached://localhost:11211/'
CACHE_EXPIRATION_TIME
2592000
CACHE_MIDDLEWARE_KEY_PREFIX
''
CACHE_MIDDLEWARE_SECONDS
600
COMMENTS_ALLOW_PROFANITIES
False
COMMENTS_BANNED_USERS_GROUP
None
COMMENTS_FIRST_FEW
0
COMMENTS_MODERATORS_GROUP
None
COMMENTS_SKETCHY_USERS_GROUP
None
COUCHDB_DEFAULT_SERVER
u''
COUCHDB_STORAGE_OPTIONS
{}
CSRF_COOKIE_DOMAIN
None
CSRF_COOKIE_NAME
'csrftoken'
CSRF_FAILURE_VIEW
'django.views.csrf.csrf_failure'
DATABASES
{'default': {'ENGINE': 'django.db.backends.mysql', 'HOST': '192.168.2.4', 'NAME': 'reviewboard_new', 'OPTIONS': {}, 'PASSWORD': '********************', 'PORT': '', 'TEST_CHARSET': None, 'TEST_COLLATION': None, 'TEST_MIRROR': None, 'TEST_NAME': None, 'TIME_ZONE': 'US/Pacific', 'USER': 'root'}}
DATABASE_ENGINE
'mysql'
DATABASE_HOST
'192.168.2.4'
DATABASE_NAME
'reviewboard_new'
DATABASE_OPTIONS
{}
DATABASE_PASSWORD
'********************'
DATABASE_PORT
''
DATABASE_ROUTERS
[]
DATABASE_USER
'root'
DATETIME_FORMAT
u'N j, Y, P'
DATETIME_INPUT_FORMATS
('%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M', '%Y-%m-%d', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M', '%m/%d/%Y', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M', '%m/%d/%y')
DATE_FORMAT
u'N j, Y'
DATE_INPUT_FORMATS
('%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y')
DEBUG
True
DEBUG_PROPAGATE_EXCEPTIONS
False
DECIMAL_SEPARATOR
'.'
DEFAULT_CHARSET
'utf-8'
DEFAULT_CONTENT_TYPE
'text/html'
DEFAULT_FILE_STORAGE
'django.core.files.storage.FileSystemStorage'
DEFAULT_FROM_EMAIL
u'webmaster@localhost'
DEFAULT_INDEX_TABLESPACE
''
DEFAULT_TABLESPACE
''
DISALLOWED_USER_AGENTS
()
DOMAIN_METHOD
u'http'
EMAIL_BACKEND
'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST
u'localhost'
EMAIL_HOST_PASSWORD
'********************'
EMAIL_HOST_USER
''
EMAIL_PORT
25
EMAIL_SUBJECT_PREFIX
'[Django] '
EMAIL_USE_TLS
False
FILE_CHARSET
'utf-8'
FILE_UPLOAD_HANDLERS
('django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler')
FILE_UPLOAD_MAX_MEMORY_SIZE
2621440
FILE_UPLOAD_PERMISSIONS
None
FILE_UPLOAD_TEMP_DIR
None
FIRST_DAY_OF_WEEK
0
FIXTURE_DIRS
()
FORCE_SCRIPT_NAME
''
FORMAT_MODULE_PATH
None
HTDOCS_ROOT
'/var/www/reviews.nucore.com/htdocs'
IGNORABLE_404_ENDS
('mail.pl', 'mailform.pl', 'mail.cgi', 'mailform.cgi', 'favicon.ico', '.php')
IGNORABLE_404_STARTS
('/cgi-bin/', '/_vti_bin', '/_vti_inf')
INSTALLED_APPS
['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.markup', 'django.contrib.sites', 'django.contrib.sessions', 'djblets.datagrid', 'djblets.feedview', 'djblets.log', 'djblets.siteconfig', 'djblets.util', 'djblets.webapi', 'reviewboard.accounts', 'reviewboard.admin', 'reviewboard.changedescs', 'reviewboard.diffviewer', 'reviewboard.iphone', 'reviewboard.notifications', 'reviewboard.reports', 'reviewboard.reviews', 'reviewboard.scmtools', 'reviewboard.webapi', 'django_evolution']
INTERNAL_IPS
()
LANGUAGES
(('en', 'English'),)
LANGUAGES_BIDI
('he', 'ar', 'fa')
LANGUAGE_CODE
u'en-us'
LANGUAGE_COOKIE_NAME
'rblanguage'
LDAP_ANON_BIND_PASSWD
u''
LDAP_ANON_BIND_UID
u''
LDAP_BASE_DN
u''
LDAP_EMAIL_ATTRIBUTE
u''
LDAP_EMAIL_DOMAIN
u''
LDAP_TLS
False
LDAP_UID_MASK
u''
LDAP_URI
u''
LOCALE_PATHS
()
LOCAL_ROOT
'/var/www/reviews.nucore.com'
LOGGING_ALLOW_PROFILING
False
LOGGING_DIRECTORY
None
LOGGING_ENABLED
False
LOGGING_NAME
'reviewboard'
LOGIN_REDIRECT_URL
'/accounts/profile/'
LOGIN_URL
'/account/login/'
LOGOUT_URL
'/accounts/logout/'
MANAGERS
((u'admin', u'admin@nucore.com'),)
MEDIA_ROOT
u'/var/www/reviews.nucore.com/htdocs/media'
MEDIA_SERIAL
1294041523
MEDIA_SERIAL_DIRS
['admin', 'djblets', 'rb']
MEDIA_URL
u'/media/'
MESSAGE_STORAGE
'django.contrib.messages.storage.user_messages.LegacyFallbackStorage'
MIDDLEWARE_CLASSES
('django.middleware.gzip.GZipMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.doc.XViewMiddleware', 'django.middleware.http.ConditionalGetMiddleware', 'django.middleware.locale.LocaleMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'djblets.siteconfig.middleware.SettingsMiddleware', 'reviewboard.admin.middleware.LoadSettingsMiddleware', 'djblets.log.middleware.LoggingMiddleware', 'reviewboard.admin.middleware.CheckUpdatesRequiredMiddleware', 'reviewboard.admin.middleware.X509AuthMiddleware')
MONTH_DAY_FORMAT
u'F j'
NIS_EMAIL_DOMAIN
u''
NUMBER_GROUPING
0
PASSWORD_RESET_TIMEOUT_DAYS
'********************'
PREPEND_WWW
False
PROFANITIES_LIST
'********************'
REVIEWBOARD_ROOT
'/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.5.1-py2.6.egg/reviewboard'
ROOT_URLCONF
'djblets.util.rooturl'
SECRET_KEY
'********************'
SEND_BROKEN_LINK_EMAILS
False
SERVER_EMAIL
u'root@localhost'
SESSION_COOKIE_AGE
31536000
SESSION_COOKIE_DOMAIN
None
SESSION_COOKIE_NAME
'rbsessionid'
SESSION_COOKIE_PATH
'/'
SESSION_COOKIE_SECURE
False
SESSION_ENGINE
'django.contrib.sessions.backends.db'
SESSION_EXPIRE_AT_BROWSER_CLOSE
False
SESSION_FILE_PATH
None
SESSION_SAVE_EVERY_REQUEST
False
SETTINGS_MODULE
'reviewboard.settings'
SHORT_DATETIME_FORMAT
'm/d/Y P'
SHORT_DATE_FORMAT
'm/d/Y'
SITE_ID
1
SITE_ROOT
'/'
SITE_ROOT_URLCONF
'reviewboard.urls'
TEMPLATE_CONTEXT_PROCESSORS
('django.core.context_processors.auth', 'django.core.context_processors.debug', 'django.core.context_processors.i18n', 'django.core.context_processors.media', 'django.core.context_processors.request', 'djblets.siteconfig.context_processors.siteconfig', 'djblets.util.context_processors.settingsVars', 'djblets.util.context_processors.siteRoot', 'djblets.util.context_processors.ajaxSerial', 'djblets.util.context_processors.mediaSerial', 'reviewboard.admin.context_processors.version')
TEMPLATE_DEBUG
True
TEMPLATE_DIRS
('/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.5.1-py2.6.egg/reviewboard/templates',)
TEMPLATE_LOADERS
('django.template.loaders.filesystem.load_template_source', 'django.template.loaders.app_directories.load_template_source')
TEMPLATE_STRING_IF_INVALID
''
TEST_DATABASE_CHARSET
None
TEST_DATABASE_COLLATION
None
TEST_DATABASE_NAME
None
TEST_RUNNER
'reviewboard.test.runner'
THOUSAND_SEPARATOR
','
TIME_FORMAT
u'P'
TIME_INPUT_FORMATS
('%H:%M:%S', '%H:%M')
TIME_ZONE
'US/Pacific'
TRANSACTIONS_MANAGED
False
URL_VALIDATOR_USER_AGENT
'Django/1.2.4 (http://www.djangoproject.com)'
USE_ETAGS
False
USE_I18N
False
USE_L10N
False
USE_THOUSAND_SEPARATOR
False
WEB_API_ENCODERS
('djblets.webapi.encoders.ResourceAPIEncoder',)
X509_AUTOCREATE_USERS
False
X509_USERNAME_FIELD
u'SSL_CLIENT_S_DN_CN'
X509_USERNAME_REGEX
u''
YEAR_MONTH_FORMAT
u'F Y'
You're seeing this error because you have DEBUG = True in your Django settings file. Change that to False, and Django will display a standard 500 page.