Skip to content

Instantly share code, notes, and snippets.

Created August 25, 2009 09:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anonymous/174596 to your computer and use it in GitHub Desktop.
Save anonymous/174596 to your computer and use it in GitHub Desktop.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>P4Exception at /api/json/reviewrequests/new/</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th { padding:1px 6px 1px 3px; background:#fefefe; text-align:left; font-weight:normal; font-size:11px; border:1px solid #ddd; }
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code div { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; }
ul.traceback li.frame { margin-bottom:1em; }
div.context { margin: 10px 0; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#666; cursor:pointer; }
div.context ol.context-line li { color:black; background-color:#ccc; }
div.context ol.context-line li span { float: right; }
div.commands { margin-left: 40px; }
div.commands a { color:black; text-decoration:none; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 0 20px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block' : 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.innerHTML = s.innerHTML == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.innerHTML = link.innerHTML == s1 ? s2 : s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>P4Exception at /api/json/reviewrequests/new/</h1>
<pre class="exception_value"></pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>POST</td>
</tr>
<tr>
<th>Request URL:</th>
<td>http://localhost/api/json/reviewrequests/new/</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>P4Exception</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre></pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.0.1-py2.6.egg/reviewboard/scmtools/perforce.py in _connect, line 43</td>
</tr>
<tr>
<th>Python Executable:</th>
<td>/usr/bin/python</td>
</tr>
<tr>
<th>Python Version:</th>
<td>2.6.2</td>
</tr>
<tr>
<th>Python Path:</th>
<td>[&#39;/var/www/reviewboard.mydomain.com/conf&#39;, &#39;/usr/local/lib/python2.6/dist-packages/cmemcache-0.95-py2.6-linux-i686.egg&#39;, &#39;/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.0.1-py2.6.egg&#39;, &#39;/usr/local/lib/python2.6/dist-packages/pytz-2009l-py2.6.egg&#39;, &#39;/usr/local/lib/python2.6/dist-packages/flup-1.0.3.dev_20090716-py2.6.egg&#39;, &#39;/usr/local/lib/python2.6/dist-packages/Pygments-1.0-py2.6.egg&#39;, &#39;/usr/local/lib/python2.6/dist-packages/Djblets-0.5.1-py2.6.egg&#39;, &#39;/usr/local/lib/python2.6/dist-packages/django_evolution-0.0.0-py2.6.egg&#39;, &#39;/usr/local/lib/python2.6/dist-packages/Django-1.1-py2.6.egg&#39;, &#39;/usr/local/lib/python2.6/dist-packages/RBTools-0.2beta1-py2.6.egg&#39;, &#39;/usr/local/lib/python2.6/dist-packages/simplejson-2.0.9-py2.6-linux-i686.egg&#39;, &#39;/usr/lib/python2.6&#39;, &#39;/usr/lib/python2.6/plat-linux2&#39;, &#39;/usr/lib/python2.6/lib-tk&#39;, &#39;/usr/lib/python2.6/lib-old&#39;, &#39;/usr/lib/python2.6/lib-dynload&#39;, &#39;/usr/lib/python2.6/dist-packages&#39;, &#39;/usr/lib/python2.6/dist-packages/PIL&#39;, &#39;/usr/lib/python2.6/dist-packages/gst-0.10&#39;, &#39;/var/lib/python-support/python2.6&#39;, &#39;/usr/lib/python2.6/dist-packages/gtk-2.0&#39;, &#39;/var/lib/python-support/python2.6/gtk-2.0&#39;, &#39;/usr/local/lib/python2.6/dist-packages&#39;]</td>
</tr>
<tr>
<th>Server time:</th>
<td>Tue, 25 Aug 2009 03:29:33 +0800</td>
</tr>
</table>
</div>
<div id="traceback">
<h2>Traceback <span class="commands"><a href="#" onclick="return switchPastebinFriendly(this);">Switch to copy-and-paste view</a></span></h2>
<div id="browserTraceback">
<ul class="traceback">
<li class="frame">
<code>/usr/local/lib/python2.6/dist-packages/Django-1.1-py2.6.egg/django/core/handlers/base.py</code> in <code>get_response</code>
<div class="context" id="c3115559988">
<ol start="85" class="pre-context" id="pre3115559988"><li onclick="toggle('pre3115559988', 'post3115559988')"> # Apply view middleware</li><li onclick="toggle('pre3115559988', 'post3115559988')"> for middleware_method in self._view_middleware:</li><li onclick="toggle('pre3115559988', 'post3115559988')"> response = middleware_method(request, callback, callback_args, callback_kwargs)</li><li onclick="toggle('pre3115559988', 'post3115559988')"> if response:</li><li onclick="toggle('pre3115559988', 'post3115559988')"> return response</li><li onclick="toggle('pre3115559988', 'post3115559988')"></li><li onclick="toggle('pre3115559988', 'post3115559988')"> try:</li></ol>
<ol start="92" class="context-line"><li onclick="toggle('pre3115559988', 'post3115559988')"> response = callback(request, *callback_args, **callback_kwargs) <span>...</span></li></ol>
<ol start='93' class="post-context" id="post3115559988"><li onclick="toggle('pre3115559988', 'post3115559988')"> except Exception, e:</li><li onclick="toggle('pre3115559988', 'post3115559988')"> # If the view raised an exception, run it through exception</li><li onclick="toggle('pre3115559988', 'post3115559988')"> # middleware, and if the exception middleware returns a</li><li onclick="toggle('pre3115559988', 'post3115559988')"> # response, use that. Otherwise, reraise the exception.</li><li onclick="toggle('pre3115559988', 'post3115559988')"> for middleware_method in self._exception_middleware:</li><li onclick="toggle('pre3115559988', 'post3115559988')"> response = middleware_method(request, e)</li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '3115559988')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v3115559988">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><div>&lt;function new_review_request at 0xb99455a4&gt;</div></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><div>{&#39;api_format&#39;: u&#39;json&#39;}</div></td>
</tr>
<tr>
<td>e</td>
<td class="code"><div>P4Exception()</div></td>
</tr>
<tr>
<td>exc_info</td>
<td class="code"><div>(&lt;class &#39;P4.P4Exception&#39;&gt;, P4Exception(), &lt;traceback object at 0xb9b3ac34&gt;)</div></td>
</tr>
<tr>
<td>exceptions</td>
<td class="code"><div>&lt;module &#39;django.core.exceptions&#39; from &#39;/usr/local/lib/python2.6/dist-packages/Django-1.1-py2.6.egg/django/core/exceptions.pyc&#39;&gt;</div></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><div>&lt;bound method LoggingMiddleware.process_view of &lt;djblets.log.middleware.LoggingMiddleware object at 0xb9b39e8c&gt;&gt;</div></td>
</tr>
<tr>
<td>receivers</td>
<td class="code"><div>[(&lt;function _rollback_on_exception at 0xb938df44&gt;, None)]</div></td>
</tr>
<tr>
<td>request</td>
<td class="code"><div>&lt;ModPythonRequest
path:/api/json/reviewrequests/new/,
GET:&lt;QueryDict: {}&gt;,
POST:&lt;QueryDict: {u&#39;repository_path&#39;: [u&#39;spicydata.SpicyNet.local:1666&#39;], u&#39;changenum&#39;: [u&#39;5440&#39;]}&gt;,
COOKIES:{&#39;rbsessionid&#39;: &#39;d18336b9773ce52da53679a07748ba1e&#39;},
META:{&#39;AUTH_TYPE&#39;: None,
&#39;CONTENT_LENGTH&#39;: 0L,
&#39;CONTENT_TYPE&#39;: None,
&#39;GATEWAY_INTERFACE&#39;: &#39;CGI/1.1&#39;,
&#39;HTTP_ACCEPT_ENCODING&#39;: &#39;identity&#39;,
&#39;HTTP_CONNECTION&#39;: &#39;close&#39;,
&#39;HTTP_CONTENT_LENGTH&#39;: &#39;274&#39;,
&#39;HTTP_CONTENT_TYPE&#39;: &#39;multipart/form-data; boundary=127.0.1.1.1000.28054.1251142168.199.2&#39;,
&#39;HTTP_COOKIE&#39;: &#39;rbsessionid=d18336b9773ce52da53679a07748ba1e&#39;,
&#39;HTTP_HOST&#39;: &#39;localhost&#39;,
&#39;HTTP_USER_AGENT&#39;: &#39;post-review/0.8&#39;,
&#39;PATH_INFO&#39;: u&#39;/api/json/reviewrequests/new/&#39;,
&#39;PATH_TRANSLATED&#39;: None,
&#39;QUERY_STRING&#39;: None,
&#39;REMOTE_ADDR&#39;: &#39;127.0.0.1&#39;,
&#39;REMOTE_HOST&#39;: None,
&#39;REMOTE_IDENT&#39;: None,
&#39;REMOTE_USER&#39;: None,
&#39;REQUEST_METHOD&#39;: &#39;POST&#39;,
&#39;SCRIPT_NAME&#39;: &#39;&#39;,
&#39;SERVER_NAME&#39;: &#39;mydomain.com&#39;,
&#39;SERVER_PORT&#39;: 80,
&#39;SERVER_PROTOCOL&#39;: &#39;HTTP/1.1&#39;,
&#39;SERVER_SOFTWARE&#39;: &#39;mod_python&#39;}&gt;</div></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><div>&lt;RegexURLResolver djblets.util.rooturl (None:None) ^/&gt;</div></td>
</tr>
<tr>
<td>response</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>self</td>
<td class="code"><div>&lt;django.core.handlers.modpython.ModPythonHandler object at 0xb9c1cbcc&gt;</div></td>
</tr>
<tr>
<td>settings</td>
<td class="code"><div>&lt;django.conf.LazySettings object at 0xb912248c&gt;</div></td>
</tr>
<tr>
<td>urlconf</td>
<td class="code"><div>&#39;djblets.util.rooturl&#39;</div></td>
</tr>
<tr>
<td>urlresolvers</td>
<td class="code"><div>&lt;module &#39;django.core.urlresolvers&#39; from &#39;/usr/local/lib/python2.6/dist-packages/Django-1.1-py2.6.egg/django/core/urlresolvers.pyc&#39;&gt;</div></td>
</tr>
</tbody>
</table>
</li>
<li class="frame">
<code>/usr/local/lib/python2.6/dist-packages/Django-1.1-py2.6.egg/django/views/decorators/cache.py</code> in <code>_wrapped_view_func</code>
<div class="context" id="c3115559828">
<ol start="37" class="pre-context" id="pre3115559828"><li onclick="toggle('pre3115559828', 'post3115559828')"></li><li onclick="toggle('pre3115559828', 'post3115559828')">def never_cache(view_func):</li><li onclick="toggle('pre3115559828', 'post3115559828')"> &quot;&quot;&quot;</li><li onclick="toggle('pre3115559828', 'post3115559828')"> Decorator that adds headers to a response so that it will</li><li onclick="toggle('pre3115559828', 'post3115559828')"> never be cached.</li><li onclick="toggle('pre3115559828', 'post3115559828')"> &quot;&quot;&quot;</li><li onclick="toggle('pre3115559828', 'post3115559828')"> def _wrapped_view_func(request, *args, **kwargs):</li></ol>
<ol start="44" class="context-line"><li onclick="toggle('pre3115559828', 'post3115559828')"> response = view_func(request, *args, **kwargs) <span>...</span></li></ol>
<ol start='45' class="post-context" id="post3115559828"><li onclick="toggle('pre3115559828', 'post3115559828')"> add_never_cache_headers(response)</li><li onclick="toggle('pre3115559828', 'post3115559828')"> return response</li><li onclick="toggle('pre3115559828', 'post3115559828')"> return wraps(view_func)(_wrapped_view_func)</li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '3115559828')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v3115559828">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>args</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>kwargs</td>
<td class="code"><div>{&#39;api_format&#39;: u&#39;json&#39;}</div></td>
</tr>
<tr>
<td>request</td>
<td class="code"><div>&lt;ModPythonRequest
path:/api/json/reviewrequests/new/,
GET:&lt;QueryDict: {}&gt;,
POST:&lt;QueryDict: {u&#39;repository_path&#39;: [u&#39;spicydata.SpicyNet.local:1666&#39;], u&#39;changenum&#39;: [u&#39;5440&#39;]}&gt;,
COOKIES:{&#39;rbsessionid&#39;: &#39;d18336b9773ce52da53679a07748ba1e&#39;},
META:{&#39;AUTH_TYPE&#39;: None,
&#39;CONTENT_LENGTH&#39;: 0L,
&#39;CONTENT_TYPE&#39;: None,
&#39;GATEWAY_INTERFACE&#39;: &#39;CGI/1.1&#39;,
&#39;HTTP_ACCEPT_ENCODING&#39;: &#39;identity&#39;,
&#39;HTTP_CONNECTION&#39;: &#39;close&#39;,
&#39;HTTP_CONTENT_LENGTH&#39;: &#39;274&#39;,
&#39;HTTP_CONTENT_TYPE&#39;: &#39;multipart/form-data; boundary=127.0.1.1.1000.28054.1251142168.199.2&#39;,
&#39;HTTP_COOKIE&#39;: &#39;rbsessionid=d18336b9773ce52da53679a07748ba1e&#39;,
&#39;HTTP_HOST&#39;: &#39;localhost&#39;,
&#39;HTTP_USER_AGENT&#39;: &#39;post-review/0.8&#39;,
&#39;PATH_INFO&#39;: u&#39;/api/json/reviewrequests/new/&#39;,
&#39;PATH_TRANSLATED&#39;: None,
&#39;QUERY_STRING&#39;: None,
&#39;REMOTE_ADDR&#39;: &#39;127.0.0.1&#39;,
&#39;REMOTE_HOST&#39;: None,
&#39;REMOTE_IDENT&#39;: None,
&#39;REMOTE_USER&#39;: None,
&#39;REQUEST_METHOD&#39;: &#39;POST&#39;,
&#39;SCRIPT_NAME&#39;: &#39;&#39;,
&#39;SERVER_NAME&#39;: &#39;mydomain.com&#39;,
&#39;SERVER_PORT&#39;: 80,
&#39;SERVER_PROTOCOL&#39;: &#39;HTTP/1.1&#39;,
&#39;SERVER_SOFTWARE&#39;: &#39;mod_python&#39;}&gt;</div></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><div>&lt;function new_review_request at 0xb9766c34&gt;</div></td>
</tr>
</tbody>
</table>
</li>
<li class="frame">
<code>/usr/local/lib/python2.6/dist-packages/Djblets-0.5.1-py2.6.egg/djblets/webapi/decorators.py</code> in <code>_checklogin</code>
<div class="context" id="c3115560028">
<ol start="25" class="pre-context" id="pre3115560028"><li onclick="toggle('pre3115560028', 'post3115560028')">def webapi_login_required(view_func):</li><li onclick="toggle('pre3115560028', 'post3115560028')"> &quot;&quot;&quot;</li><li onclick="toggle('pre3115560028', 'post3115560028')"> Checks that the user is logged in before invoking the view. If the user</li><li onclick="toggle('pre3115560028', 'post3115560028')"> is not logged in, a NOT_LOGGED_IN error is returned.</li><li onclick="toggle('pre3115560028', 'post3115560028')"> &quot;&quot;&quot;</li><li onclick="toggle('pre3115560028', 'post3115560028')"> def _checklogin(request, api_format=&quot;json&quot;, *args, **kwargs):</li><li onclick="toggle('pre3115560028', 'post3115560028')"> if request.user.is_authenticated():</li></ol>
<ol start="32" class="context-line"><li onclick="toggle('pre3115560028', 'post3115560028')"> response = view_func(request, *args, **kwargs) <span>...</span></li></ol>
<ol start='33' class="post-context" id="post3115560028"><li onclick="toggle('pre3115560028', 'post3115560028')"> else:</li><li onclick="toggle('pre3115560028', 'post3115560028')"> response = WebAPIResponseError(request, NOT_LOGGED_IN)</li><li onclick="toggle('pre3115560028', 'post3115560028')"></li><li onclick="toggle('pre3115560028', 'post3115560028')"> if isinstance(response, WebAPIResponse):</li><li onclick="toggle('pre3115560028', 'post3115560028')"> response.api_format = api_format</li><li onclick="toggle('pre3115560028', 'post3115560028')"></li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '3115560028')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v3115560028">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>api_format</td>
<td class="code"><div>u&#39;json&#39;</div></td>
</tr>
<tr>
<td>args</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>kwargs</td>
<td class="code"><div>{}</div></td>
</tr>
<tr>
<td>request</td>
<td class="code"><div>&lt;ModPythonRequest
path:/api/json/reviewrequests/new/,
GET:&lt;QueryDict: {}&gt;,
POST:&lt;QueryDict: {u&#39;repository_path&#39;: [u&#39;spicydata.SpicyNet.local:1666&#39;], u&#39;changenum&#39;: [u&#39;5440&#39;]}&gt;,
COOKIES:{&#39;rbsessionid&#39;: &#39;d18336b9773ce52da53679a07748ba1e&#39;},
META:{&#39;AUTH_TYPE&#39;: None,
&#39;CONTENT_LENGTH&#39;: 0L,
&#39;CONTENT_TYPE&#39;: None,
&#39;GATEWAY_INTERFACE&#39;: &#39;CGI/1.1&#39;,
&#39;HTTP_ACCEPT_ENCODING&#39;: &#39;identity&#39;,
&#39;HTTP_CONNECTION&#39;: &#39;close&#39;,
&#39;HTTP_CONTENT_LENGTH&#39;: &#39;274&#39;,
&#39;HTTP_CONTENT_TYPE&#39;: &#39;multipart/form-data; boundary=127.0.1.1.1000.28054.1251142168.199.2&#39;,
&#39;HTTP_COOKIE&#39;: &#39;rbsessionid=d18336b9773ce52da53679a07748ba1e&#39;,
&#39;HTTP_HOST&#39;: &#39;localhost&#39;,
&#39;HTTP_USER_AGENT&#39;: &#39;post-review/0.8&#39;,
&#39;PATH_INFO&#39;: u&#39;/api/json/reviewrequests/new/&#39;,
&#39;PATH_TRANSLATED&#39;: None,
&#39;QUERY_STRING&#39;: None,
&#39;REMOTE_ADDR&#39;: &#39;127.0.0.1&#39;,
&#39;REMOTE_HOST&#39;: None,
&#39;REMOTE_IDENT&#39;: None,
&#39;REMOTE_USER&#39;: None,
&#39;REQUEST_METHOD&#39;: &#39;POST&#39;,
&#39;SCRIPT_NAME&#39;: &#39;&#39;,
&#39;SERVER_NAME&#39;: &#39;mydomain.com&#39;,
&#39;SERVER_PORT&#39;: 80,
&#39;SERVER_PROTOCOL&#39;: &#39;HTTP/1.1&#39;,
&#39;SERVER_SOFTWARE&#39;: &#39;mod_python&#39;}&gt;</div></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><div>&lt;function new_review_request at 0xb9766c6c&gt;</div></td>
</tr>
</tbody>
</table>
</li>
<li class="frame">
<code>/usr/local/lib/python2.6/dist-packages/Django-1.1-py2.6.egg/django/views/decorators/http.py</code> in <code>inner</code>
<div class="context" id="c3115559548">
<ol start="30" class="pre-context" id="pre3115559548"><li onclick="toggle('pre3115559548', 'post3115559548')"></li><li onclick="toggle('pre3115559548', 'post3115559548')"> Note that request methods should be in uppercase.</li><li onclick="toggle('pre3115559548', 'post3115559548')"> &quot;&quot;&quot;</li><li onclick="toggle('pre3115559548', 'post3115559548')"> def decorator(func):</li><li onclick="toggle('pre3115559548', 'post3115559548')"> def inner(request, *args, **kwargs):</li><li onclick="toggle('pre3115559548', 'post3115559548')"> if request.method not in request_method_list:</li><li onclick="toggle('pre3115559548', 'post3115559548')"> return HttpResponseNotAllowed(request_method_list)</li></ol>
<ol start="37" class="context-line"><li onclick="toggle('pre3115559548', 'post3115559548')"> return func(request, *args, **kwargs) <span>...</span></li></ol>
<ol start='38' class="post-context" id="post3115559548"><li onclick="toggle('pre3115559548', 'post3115559548')"> return wraps(func)(inner)</li><li onclick="toggle('pre3115559548', 'post3115559548')"> return decorator</li><li onclick="toggle('pre3115559548', 'post3115559548')"></li><li onclick="toggle('pre3115559548', 'post3115559548')">require_GET = require_http_methods([&quot;GET&quot;])</li><li onclick="toggle('pre3115559548', 'post3115559548')">require_GET.__doc__ = &quot;Decorator to require that a view only accept the GET method.&quot;</li><li onclick="toggle('pre3115559548', 'post3115559548')"></li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '3115559548')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v3115559548">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>args</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>func</td>
<td class="code"><div>&lt;function new_review_request at 0xb9766df4&gt;</div></td>
</tr>
<tr>
<td>kwargs</td>
<td class="code"><div>{}</div></td>
</tr>
<tr>
<td>request</td>
<td class="code"><div>&lt;ModPythonRequest
path:/api/json/reviewrequests/new/,
GET:&lt;QueryDict: {}&gt;,
POST:&lt;QueryDict: {u&#39;repository_path&#39;: [u&#39;spicydata.SpicyNet.local:1666&#39;], u&#39;changenum&#39;: [u&#39;5440&#39;]}&gt;,
COOKIES:{&#39;rbsessionid&#39;: &#39;d18336b9773ce52da53679a07748ba1e&#39;},
META:{&#39;AUTH_TYPE&#39;: None,
&#39;CONTENT_LENGTH&#39;: 0L,
&#39;CONTENT_TYPE&#39;: None,
&#39;GATEWAY_INTERFACE&#39;: &#39;CGI/1.1&#39;,
&#39;HTTP_ACCEPT_ENCODING&#39;: &#39;identity&#39;,
&#39;HTTP_CONNECTION&#39;: &#39;close&#39;,
&#39;HTTP_CONTENT_LENGTH&#39;: &#39;274&#39;,
&#39;HTTP_CONTENT_TYPE&#39;: &#39;multipart/form-data; boundary=127.0.1.1.1000.28054.1251142168.199.2&#39;,
&#39;HTTP_COOKIE&#39;: &#39;rbsessionid=d18336b9773ce52da53679a07748ba1e&#39;,
&#39;HTTP_HOST&#39;: &#39;localhost&#39;,
&#39;HTTP_USER_AGENT&#39;: &#39;post-review/0.8&#39;,
&#39;PATH_INFO&#39;: u&#39;/api/json/reviewrequests/new/&#39;,
&#39;PATH_TRANSLATED&#39;: None,
&#39;QUERY_STRING&#39;: None,
&#39;REMOTE_ADDR&#39;: &#39;127.0.0.1&#39;,
&#39;REMOTE_HOST&#39;: None,
&#39;REMOTE_IDENT&#39;: None,
&#39;REMOTE_USER&#39;: None,
&#39;REQUEST_METHOD&#39;: &#39;POST&#39;,
&#39;SCRIPT_NAME&#39;: &#39;&#39;,
&#39;SERVER_NAME&#39;: &#39;mydomain.com&#39;,
&#39;SERVER_PORT&#39;: 80,
&#39;SERVER_PROTOCOL&#39;: &#39;HTTP/1.1&#39;,
&#39;SERVER_SOFTWARE&#39;: &#39;mod_python&#39;}&gt;</div></td>
</tr>
<tr>
<td>request_method_list</td>
<td class="code"><div>[&#39;POST&#39;]</div></td>
</tr>
</tbody>
</table>
</li>
<li class="frame">
<code>/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.0.1-py2.6.egg/reviewboard/webapi/json.py</code> in <code>new_review_request</code>
<div class="context" id="c3111653044">
<ol start="431" class="pre-context" id="pre3111653044"><li onclick="toggle('pre3111653044', 'post3111653044')"> repository = Repository.objects.get(</li><li onclick="toggle('pre3111653044', 'post3111653044')"> Q(path=repository_path) |</li><li onclick="toggle('pre3111653044', 'post3111653044')"> Q(mirror_path=repository_path))</li><li onclick="toggle('pre3111653044', 'post3111653044')"> else:</li><li onclick="toggle('pre3111653044', 'post3111653044')"> repository = Repository.objects.get(id=repository_id)</li><li onclick="toggle('pre3111653044', 'post3111653044')"></li><li onclick="toggle('pre3111653044', 'post3111653044')"> review_request = ReviewRequest.objects.create(</li></ol>
<ol start="438" class="context-line"><li onclick="toggle('pre3111653044', 'post3111653044')"> user, repository, request.POST.get(&#39;changenum&#39;, None)) <span>...</span></li></ol>
<ol start='439' class="post-context" id="post3111653044"><li onclick="toggle('pre3111653044', 'post3111653044')"></li><li onclick="toggle('pre3111653044', 'post3111653044')"> return WebAPIResponse(request, {&#39;review_request&#39;: review_request})</li><li onclick="toggle('pre3111653044', 'post3111653044')"> except Repository.DoesNotExist, e:</li><li onclick="toggle('pre3111653044', 'post3111653044')"> return WebAPIResponseError(request, INVALID_REPOSITORY,</li><li onclick="toggle('pre3111653044', 'post3111653044')"> {&#39;repository_path&#39;: repository_path})</li><li onclick="toggle('pre3111653044', 'post3111653044')"> except ChangeNumberInUseError, e:</li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '3111653044')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v3111653044">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>repository</td>
<td class="code"><div>&lt;Repository: coderev_alice2&gt;</div></td>
</tr>
<tr>
<td>repository_id</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>repository_path</td>
<td class="code"><div>u&#39;spicydata.SpicyNet.local:1666&#39;</div></td>
</tr>
<tr>
<td>request</td>
<td class="code"><div>&lt;ModPythonRequest
path:/api/json/reviewrequests/new/,
GET:&lt;QueryDict: {}&gt;,
POST:&lt;QueryDict: {u&#39;repository_path&#39;: [u&#39;spicydata.SpicyNet.local:1666&#39;], u&#39;changenum&#39;: [u&#39;5440&#39;]}&gt;,
COOKIES:{&#39;rbsessionid&#39;: &#39;d18336b9773ce52da53679a07748ba1e&#39;},
META:{&#39;AUTH_TYPE&#39;: None,
&#39;CONTENT_LENGTH&#39;: 0L,
&#39;CONTENT_TYPE&#39;: None,
&#39;GATEWAY_INTERFACE&#39;: &#39;CGI/1.1&#39;,
&#39;HTTP_ACCEPT_ENCODING&#39;: &#39;identity&#39;,
&#39;HTTP_CONNECTION&#39;: &#39;close&#39;,
&#39;HTTP_CONTENT_LENGTH&#39;: &#39;274&#39;,
&#39;HTTP_CONTENT_TYPE&#39;: &#39;multipart/form-data; boundary=127.0.1.1.1000.28054.1251142168.199.2&#39;,
&#39;HTTP_COOKIE&#39;: &#39;rbsessionid=d18336b9773ce52da53679a07748ba1e&#39;,
&#39;HTTP_HOST&#39;: &#39;localhost&#39;,
&#39;HTTP_USER_AGENT&#39;: &#39;post-review/0.8&#39;,
&#39;PATH_INFO&#39;: u&#39;/api/json/reviewrequests/new/&#39;,
&#39;PATH_TRANSLATED&#39;: None,
&#39;QUERY_STRING&#39;: None,
&#39;REMOTE_ADDR&#39;: &#39;127.0.0.1&#39;,
&#39;REMOTE_HOST&#39;: None,
&#39;REMOTE_IDENT&#39;: None,
&#39;REMOTE_USER&#39;: None,
&#39;REQUEST_METHOD&#39;: &#39;POST&#39;,
&#39;SCRIPT_NAME&#39;: &#39;&#39;,
&#39;SERVER_NAME&#39;: &#39;mydomain.com&#39;,
&#39;SERVER_PORT&#39;: 80,
&#39;SERVER_PROTOCOL&#39;: &#39;HTTP/1.1&#39;,
&#39;SERVER_SOFTWARE&#39;: &#39;mod_python&#39;}&gt;</div></td>
</tr>
<tr>
<td>submit_as</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>user</td>
<td class="code"><div>&lt;User: realalien&gt;</div></td>
</tr>
</tbody>
</table>
</li>
<li class="frame">
<code>/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.0.1-py2.6.egg/reviewboard/reviews/managers.py</code> in <code>create</code>
<div class="context" id="c3115558548">
<ol start="66" class="pre-context" id="pre3115558548"><li onclick="toggle('pre3115558548', 'post3115558548')"> submitter=user,</li><li onclick="toggle('pre3115558548', 'post3115558548')"> status=&#39;P&#39;,</li><li onclick="toggle('pre3115558548', 'post3115558548')"> public=False,</li><li onclick="toggle('pre3115558548', 'post3115558548')"> repository=repository,</li><li onclick="toggle('pre3115558548', 'post3115558548')"> diffset_history=diffset_history)</li><li onclick="toggle('pre3115558548', 'post3115558548')"></li><li onclick="toggle('pre3115558548', 'post3115558548')"> if changenum:</li></ol>
<ol start="73" class="context-line"><li onclick="toggle('pre3115558548', 'post3115558548')"> review_request.update_from_changenum(changenum) <span>...</span></li></ol>
<ol start='74' class="post-context" id="post3115558548"><li onclick="toggle('pre3115558548', 'post3115558548')"> review_request.save()</li><li onclick="toggle('pre3115558548', 'post3115558548')"></li><li onclick="toggle('pre3115558548', 'post3115558548')"> return review_request</li><li onclick="toggle('pre3115558548', 'post3115558548')"></li><li onclick="toggle('pre3115558548', 'post3115558548')"> def public(self, *args, **kwargs):</li><li onclick="toggle('pre3115558548', 'post3115558548')"> return self._query(*args, **kwargs)</li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '3115558548')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v3115558548">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>changenum</td>
<td class="code"><div>u&#39;5440&#39;</div></td>
</tr>
<tr>
<td>diffset_history</td>
<td class="code"><div>&lt;DiffSetHistory: Diff Set History (0 revisions)&gt;</div></td>
</tr>
<tr>
<td>repository</td>
<td class="code"><div>&lt;Repository: coderev_alice2&gt;</div></td>
</tr>
<tr>
<td>review_request</td>
<td class="code"><div>&lt;ReviewRequest: &gt;</div></td>
</tr>
<tr>
<td>self</td>
<td class="code"><div>&lt;reviewboard.reviews.managers.ReviewRequestManager object at 0xb9614d4c&gt;</div></td>
</tr>
<tr>
<td>user</td>
<td class="code"><div>&lt;User: realalien&gt;</div></td>
</tr>
</tbody>
</table>
</li>
<li class="frame">
<code>/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.0.1-py2.6.egg/reviewboard/reviews/models.py</code> in <code>update_from_changenum</code>
<div class="context" id="c3115560268">
<ol start="336" class="pre-context" id="pre3115560268"><li onclick="toggle('pre3115560268', 'post3115560268')"> return self.reviews.filter(public=True, base_reply_to__isnull=True)</li><li onclick="toggle('pre3115560268', 'post3115560268')"></li><li onclick="toggle('pre3115560268', 'post3115560268')"> def update_from_changenum(self, changenum):</li><li onclick="toggle('pre3115560268', 'post3115560268')"> &quot;&quot;&quot;</li><li onclick="toggle('pre3115560268', 'post3115560268')"> Updates this review request from the specified changeset&#39;s contents</li><li onclick="toggle('pre3115560268', 'post3115560268')"> on the server.</li><li onclick="toggle('pre3115560268', 'post3115560268')"> &quot;&quot;&quot;</li></ol>
<ol start="343" class="context-line"><li onclick="toggle('pre3115560268', 'post3115560268')"> update_obj_with_changenum(self, self.repository, changenum) <span>...</span></li></ol>
<ol start='344' class="post-context" id="post3115560268"><li onclick="toggle('pre3115560268', 'post3115560268')"></li><li onclick="toggle('pre3115560268', 'post3115560268')"> def is_accessible_by(self, user):</li><li onclick="toggle('pre3115560268', 'post3115560268')"> &quot;Returns true if the user can read this review request&quot;</li><li onclick="toggle('pre3115560268', 'post3115560268')"> return self.public or self.is_mutable_by(user)</li><li onclick="toggle('pre3115560268', 'post3115560268')"></li><li onclick="toggle('pre3115560268', 'post3115560268')"> def is_mutable_by(self, user):</li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '3115560268')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v3115560268">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>changenum</td>
<td class="code"><div>u&#39;5440&#39;</div></td>
</tr>
<tr>
<td>self</td>
<td class="code"><div>&lt;ReviewRequest: &gt;</div></td>
</tr>
</tbody>
</table>
</li>
<li class="frame">
<code>/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.0.1-py2.6.egg/reviewboard/reviews/models.py</code> in <code>update_obj_with_changenum</code>
<div class="context" id="c3115560348">
<ol start="29" class="pre-context" id="pre3115560348"><li onclick="toggle('pre3115560348', 'post3115560348')"></li><li onclick="toggle('pre3115560348', 'post3115560348')"></li><li onclick="toggle('pre3115560348', 'post3115560348')">def update_obj_with_changenum(obj, repository, changenum):</li><li onclick="toggle('pre3115560348', 'post3115560348')"> &quot;&quot;&quot;</li><li onclick="toggle('pre3115560348', 'post3115560348')"> Utility helper to update a review request or draft from the</li><li onclick="toggle('pre3115560348', 'post3115560348')"> specified changeset&#39;s contents on the server.</li><li onclick="toggle('pre3115560348', 'post3115560348')"> &quot;&quot;&quot;</li></ol>
<ol start="36" class="context-line"><li onclick="toggle('pre3115560348', 'post3115560348')"> changeset = repository.get_scmtool().get_changeset(changenum) <span>...</span></li></ol>
<ol start='37' class="post-context" id="post3115560348"><li onclick="toggle('pre3115560348', 'post3115560348')"></li><li onclick="toggle('pre3115560348', 'post3115560348')"> if not changeset:</li><li onclick="toggle('pre3115560348', 'post3115560348')"> raise InvalidChangeNumberError()</li><li onclick="toggle('pre3115560348', 'post3115560348')"></li><li onclick="toggle('pre3115560348', 'post3115560348')"> # If the SCM supports changesets, they should always include a number,</li><li onclick="toggle('pre3115560348', 'post3115560348')"> # summary and description, parsed from the changeset description. Some</li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '3115560348')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v3115560348">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>changenum</td>
<td class="code"><div>u&#39;5440&#39;</div></td>
</tr>
<tr>
<td>obj</td>
<td class="code"><div>&lt;ReviewRequest: &gt;</div></td>
</tr>
<tr>
<td>repository</td>
<td class="code"><div>&lt;Repository: coderev_alice2&gt;</div></td>
</tr>
</tbody>
</table>
</li>
<li class="frame">
<code>/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.0.1-py2.6.egg/reviewboard/scmtools/perforce.py</code> in <code>get_changeset</code>
<div class="context" id="c3115560468">
<ol start="52" class="pre-context" id="pre3115560468"><li onclick="toggle('pre3115560468', 'post3115560468')"> def get_pending_changesets(self, userid):</li><li onclick="toggle('pre3115560468', 'post3115560468')"> self._connect()</li><li onclick="toggle('pre3115560468', 'post3115560468')"> return map(self.get_changeset,</li><li onclick="toggle('pre3115560468', 'post3115560468')"> [x.split()[1] for x in</li><li onclick="toggle('pre3115560468', 'post3115560468')"> self.p4.run_changes(&#39;-s&#39;, &#39;pending&#39;, &#39;-u&#39;, userid)])</li><li onclick="toggle('pre3115560468', 'post3115560468')"></li><li onclick="toggle('pre3115560468', 'post3115560468')"> def get_changeset(self, changesetid):</li></ol>
<ol start="59" class="context-line"><li onclick="toggle('pre3115560468', 'post3115560468')"> self._connect() <span>...</span></li></ol>
<ol start='60' class="post-context" id="post3115560468"><li onclick="toggle('pre3115560468', 'post3115560468')"> changeset = self.p4.run_describe(&#39;-s&#39;, str(changesetid))</li><li onclick="toggle('pre3115560468', 'post3115560468')"> self._disconnect()</li><li onclick="toggle('pre3115560468', 'post3115560468')"></li><li onclick="toggle('pre3115560468', 'post3115560468')"> if changeset:</li><li onclick="toggle('pre3115560468', 'post3115560468')"> return self.parse_change_desc(changeset[0], changesetid)</li><li onclick="toggle('pre3115560468', 'post3115560468')"> return None</li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '3115560468')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v3115560468">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>changesetid</td>
<td class="code"><div>u&#39;5440&#39;</div></td>
</tr>
<tr>
<td>self</td>
<td class="code"><div>&lt;reviewboard.scmtools.perforce.PerforceTool instance at 0xb9b5b58c&gt;</div></td>
</tr>
</tbody>
</table>
</li>
<li class="frame">
<code>/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.0.1-py2.6.egg/reviewboard/scmtools/perforce.py</code> in <code>_connect</code>
<div class="context" id="c3115559908">
<ol start="36" class="pre-context" id="pre3115559908"><li onclick="toggle('pre3115559908', 'post3115559908')"> # Exceptions in __del__ get ignored but spew warnings. If there&#39;s</li><li onclick="toggle('pre3115559908', 'post3115559908')"> # no internet connection, we&#39;ll get a P4Error from disconnect().</li><li onclick="toggle('pre3115559908', 'post3115559908')"> # This is totally safe to ignore.</li><li onclick="toggle('pre3115559908', 'post3115559908')"> pass</li><li onclick="toggle('pre3115559908', 'post3115559908')"></li><li onclick="toggle('pre3115559908', 'post3115559908')"> def _connect(self):</li><li onclick="toggle('pre3115559908', 'post3115559908')"> if not self.p4.connected():</li></ol>
<ol start="43" class="context-line"><li onclick="toggle('pre3115559908', 'post3115559908')"> self.p4.connect() <span>...</span></li></ol>
<ol start='44' class="post-context" id="post3115559908"><li onclick="toggle('pre3115559908', 'post3115559908')"></li><li onclick="toggle('pre3115559908', 'post3115559908')"> def _disconnect(self):</li><li onclick="toggle('pre3115559908', 'post3115559908')"> try:</li><li onclick="toggle('pre3115559908', 'post3115559908')"> if self.p4.connected():</li><li onclick="toggle('pre3115559908', 'post3115559908')"> self.p4.disconnect()</li><li onclick="toggle('pre3115559908', 'post3115559908')"> except AttributeError:</li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '3115559908')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v3115559908">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>self</td>
<td class="code"><div>&lt;reviewboard.scmtools.perforce.PerforceTool instance at 0xb9b5b58c&gt;</div></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title" value="P4Exception at /api/json/reviewrequests/new/">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: POST
Request URL: http://localhost/api/json/reviewrequests/new/
Django Version: 1.1
Python Version: 2.6.2
Installed Applications:
[&#39;django.contrib.admin&#39;,
&#39;django.contrib.auth&#39;,
&#39;django.contrib.contenttypes&#39;,
&#39;django.contrib.markup&#39;,
&#39;django.contrib.sites&#39;,
&#39;django.contrib.sessions&#39;,
&#39;djblets.datagrid&#39;,
&#39;djblets.feedview&#39;,
&#39;djblets.siteconfig&#39;,
&#39;djblets.util&#39;,
&#39;djblets.webapi&#39;,
&#39;reviewboard.accounts&#39;,
&#39;reviewboard.admin&#39;,
&#39;reviewboard.changedescs&#39;,
&#39;reviewboard.diffviewer&#39;,
&#39;reviewboard.iphone&#39;,
&#39;reviewboard.reports&#39;,
&#39;reviewboard.reviews&#39;,
&#39;reviewboard.scmtools&#39;,
&#39;reviewboard.webapi&#39;,
&#39;django_evolution&#39;]
Installed Middleware:
(&#39;django.middleware.gzip.GZipMiddleware&#39;,
&#39;django.middleware.common.CommonMiddleware&#39;,
&#39;django.middleware.doc.XViewMiddleware&#39;,
&#39;django.middleware.http.ConditionalGetMiddleware&#39;,
&#39;django.middleware.locale.LocaleMiddleware&#39;,
&#39;django.contrib.sessions.middleware.SessionMiddleware&#39;,
&#39;django.contrib.auth.middleware.AuthenticationMiddleware&#39;,
&#39;djblets.siteconfig.middleware.SettingsMiddleware&#39;,
&#39;reviewboard.admin.middleware.LoadSettingsMiddleware&#39;,
&#39;djblets.log.middleware.LoggingMiddleware&#39;,
&#39;reviewboard.admin.middleware.CheckUpdatesRequiredMiddleware&#39;)
Traceback:
File "/usr/local/lib/python2.6/dist-packages/Django-1.1-py2.6.egg/django/core/handlers/base.py" in get_response
92. response = callback(request, *callback_args, **callback_kwargs)
File "/usr/local/lib/python2.6/dist-packages/Django-1.1-py2.6.egg/django/views/decorators/cache.py" in _wrapped_view_func
44. response = view_func(request, *args, **kwargs)
File "/usr/local/lib/python2.6/dist-packages/Djblets-0.5.1-py2.6.egg/djblets/webapi/decorators.py" in _checklogin
32. response = view_func(request, *args, **kwargs)
File "/usr/local/lib/python2.6/dist-packages/Django-1.1-py2.6.egg/django/views/decorators/http.py" in inner
37. return func(request, *args, **kwargs)
File "/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.0.1-py2.6.egg/reviewboard/webapi/json.py" in new_review_request
438. user, repository, request.POST.get(&#39;changenum&#39;, None))
File "/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.0.1-py2.6.egg/reviewboard/reviews/managers.py" in create
73. review_request.update_from_changenum(changenum)
File "/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.0.1-py2.6.egg/reviewboard/reviews/models.py" in update_from_changenum
343. update_obj_with_changenum(self, self.repository, changenum)
File "/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.0.1-py2.6.egg/reviewboard/reviews/models.py" in update_obj_with_changenum
36. changeset = repository.get_scmtool().get_changeset(changenum)
File "/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.0.1-py2.6.egg/reviewboard/scmtools/perforce.py" in get_changeset
59. self._connect()
File "/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.0.1-py2.6.egg/reviewboard/scmtools/perforce.py" in _connect
43. self.p4.connect()
Exception Type: P4Exception at /api/json/reviewrequests/new/
Exception Value:
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public Web site">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>repository_path</td>
<td class="code"><div>u&#39;spicydata.SpicyNet.local:1666&#39;</div></td>
</tr>
<tr>
<td>changenum</td>
<td class="code"><div>u&#39;5440&#39;</div></td>
</tr>
</tbody>
</table>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>rbsessionid</td>
<td class="code"><div>&#39;d18336b9773ce52da53679a07748ba1e&#39;</div></td>
</tr>
</tbody>
</table>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>AUTH_TYPE</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>CONTENT_LENGTH</td>
<td class="code"><div>0L</div></td>
</tr>
<tr>
<td>CONTENT_TYPE</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><div>&#39;CGI/1.1&#39;</div></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><div>&#39;identity&#39;</div></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><div>&#39;close&#39;</div></td>
</tr>
<tr>
<td>HTTP_CONTENT_LENGTH</td>
<td class="code"><div>&#39;274&#39;</div></td>
</tr>
<tr>
<td>HTTP_CONTENT_TYPE</td>
<td class="code"><div>&#39;multipart/form-data; boundary=127.0.1.1.1000.28054.1251142168.199.2&#39;</div></td>
</tr>
<tr>
<td>HTTP_COOKIE</td>
<td class="code"><div>&#39;rbsessionid=d18336b9773ce52da53679a07748ba1e&#39;</div></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><div>&#39;localhost&#39;</div></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><div>&#39;post-review/0.8&#39;</div></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><div>u&#39;/api/json/reviewrequests/new/&#39;</div></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><div>&#39;127.0.0.1&#39;</div></td>
</tr>
<tr>
<td>REMOTE_HOST</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>REMOTE_IDENT</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>REMOTE_USER</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><div>&#39;POST&#39;</div></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><div>&#39;&#39;</div></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><div>&#39;mydomain.com&#39;</div></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><div>80</div></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><div>&#39;HTTP/1.1&#39;</div></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><div>&#39;mod_python&#39;</div></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>reviewboard.settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><div>{}</div></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><div>((u&#39;admin&#39;, u&#39;zhujiacheng@mydomain.com&#39;),)</div></td>
</tr>
<tr>
<td>ADMIN_FOR</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>ADMIN_MEDIA_PREFIX</td>
<td class="code"><div>u&#39;/media/admin/&#39;</div></td>
</tr>
<tr>
<td>AD_DOMAIN_CONTROLLER</td>
<td class="code"><div>u&#39;&#39;</div></td>
</tr>
<tr>
<td>AD_DOMAIN_NAME</td>
<td class="code"><div>u&#39;&#39;</div></td>
</tr>
<tr>
<td>AD_FIND_DC_FROM_DNS</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>AD_GROUP_NAME</td>
<td class="code"><div>u&#39;&#39;</div></td>
</tr>
<tr>
<td>AD_OU_NAME</td>
<td class="code"><div>u&#39;&#39;</div></td>
</tr>
<tr>
<td>AD_RECURSION_DEPTH</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>AD_SEARCH_ROOT</td>
<td class="code"><div>u&#39;&#39;</div></td>
</tr>
<tr>
<td>AD_USE_TLS</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>AJAX_SERIAL</td>
<td class="code"><div>1251096541</div></td>
</tr>
<tr>
<td>ALLOWED_INCLUDE_ROOTS</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><div>True</div></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><div>(&#39;django.contrib.auth.backends.ModelBackend&#39;,)</div></td>
</tr>
<tr>
<td>AUTH_PROFILE_MODULE</td>
<td class="code"><div>&#39;accounts.Profile&#39;</div></td>
</tr>
<tr>
<td>BANNED_IPS</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>CACHE_BACKEND</td>
<td class="code"><div>u&#39;memcached://localhost:11211/&#39;</div></td>
</tr>
<tr>
<td>CACHE_EXPIRATION_TIME</td>
<td class="code"><div>2592000</div></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><div>&#39;&#39;</div></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><div>600</div></td>
</tr>
<tr>
<td>COMMENTS_ALLOW_PROFANITIES</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>COMMENTS_BANNED_USERS_GROUP</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>COMMENTS_FIRST_FEW</td>
<td class="code"><div>0</div></td>
</tr>
<tr>
<td>COMMENTS_MODERATORS_GROUP</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>COMMENTS_SKETCHY_USERS_GROUP</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>DATABASE_ENGINE</td>
<td class="code"><div>&#39;mysql&#39;</div></td>
</tr>
<tr>
<td>DATABASE_HOST</td>
<td class="code"><div>&#39;localhost&#39;</div></td>
</tr>
<tr>
<td>DATABASE_NAME</td>
<td class="code"><div>&#39;reviewboard&#39;</div></td>
</tr>
<tr>
<td>DATABASE_OPTIONS</td>
<td class="code"><div>{}</div></td>
</tr>
<tr>
<td>DATABASE_PASSWORD</td>
<td class="code"><div>&#39;********************&#39;</div></td>
</tr>
<tr>
<td>DATABASE_PORT</td>
<td class="code"><div>&#39;&#39;</div></td>
</tr>
<tr>
<td>DATABASE_USER</td>
<td class="code"><div>&#39;root&#39;</div></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><div>u&#39;N j, Y, P&#39;</div></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><div>u&#39;N j, Y&#39;</div></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><div>True</div></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><div>&#39;utf-8&#39;</div></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><div>&#39;text/html&#39;</div></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><div>&#39;django.core.files.storage.FileSystemStorage&#39;</div></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><div>u&#39;webmaster@localhost&#39;</div></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><div>&#39;&#39;</div></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><div>&#39;&#39;</div></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>DOMAIN_METHOD</td>
<td class="code"><div>u&#39;http&#39;</div></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><div>u&#39;localhost&#39;</div></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><div>&#39;********************&#39;</div></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><div>u&#39;&#39;</div></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><div>25</div></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><div>&#39;[Django] &#39;</div></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><div>&#39;utf-8&#39;</div></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><div>(&#39;django.core.files.uploadhandler.MemoryFileUploadHandler&#39;,
&#39;django.core.files.uploadhandler.TemporaryFileUploadHandler&#39;)</div></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><div>2621440</div></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><div>&#39;&#39;</div></td>
</tr>
<tr>
<td>HTDOCS_ROOT</td>
<td class="code"><div>&#39;/var/www/reviewboard.mydomain.com/htdocs&#39;</div></td>
</tr>
<tr>
<td>IGNORABLE_404_ENDS</td>
<td class="code"><div>(&#39;mail.pl&#39;, &#39;mailform.pl&#39;, &#39;mail.cgi&#39;, &#39;mailform.cgi&#39;, &#39;favicon.ico&#39;, &#39;.php&#39;)</div></td>
</tr>
<tr>
<td>IGNORABLE_404_STARTS</td>
<td class="code"><div>(&#39;/cgi-bin/&#39;, &#39;/_vti_bin&#39;, &#39;/_vti_inf&#39;)</div></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><div>[&#39;django.contrib.admin&#39;,
&#39;django.contrib.auth&#39;,
&#39;django.contrib.contenttypes&#39;,
&#39;django.contrib.markup&#39;,
&#39;django.contrib.sites&#39;,
&#39;django.contrib.sessions&#39;,
&#39;djblets.datagrid&#39;,
&#39;djblets.feedview&#39;,
&#39;djblets.siteconfig&#39;,
&#39;djblets.util&#39;,
&#39;djblets.webapi&#39;,
&#39;reviewboard.accounts&#39;,
&#39;reviewboard.admin&#39;,
&#39;reviewboard.changedescs&#39;,
&#39;reviewboard.diffviewer&#39;,
&#39;reviewboard.iphone&#39;,
&#39;reviewboard.reports&#39;,
&#39;reviewboard.reviews&#39;,
&#39;reviewboard.scmtools&#39;,
&#39;reviewboard.webapi&#39;,
&#39;django_evolution&#39;]</div></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><div>((&#39;en&#39;, &#39;English&#39;),)</div></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><div>(&#39;he&#39;, &#39;ar&#39;, &#39;fa&#39;)</div></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><div>u&#39;en-us&#39;</div></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><div>&#39;rblanguage&#39;</div></td>
</tr>
<tr>
<td>LDAP_ANON_BIND_PASSWD</td>
<td class="code"><div>u&#39;&#39;</div></td>
</tr>
<tr>
<td>LDAP_ANON_BIND_UID</td>
<td class="code"><div>u&#39;&#39;</div></td>
</tr>
<tr>
<td>LDAP_BASE_DN</td>
<td class="code"><div>u&#39;&#39;</div></td>
</tr>
<tr>
<td>LDAP_EMAIL_ATTRIBUTE</td>
<td class="code"><div>u&#39;&#39;</div></td>
</tr>
<tr>
<td>LDAP_EMAIL_DOMAIN</td>
<td class="code"><div>u&#39;&#39;</div></td>
</tr>
<tr>
<td>LDAP_TLS</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>LDAP_UID_MASK</td>
<td class="code"><div>u&#39;&#39;</div></td>
</tr>
<tr>
<td>LDAP_URI</td>
<td class="code"><div>u&#39;&#39;</div></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>LOCAL_ROOT</td>
<td class="code"><div>&#39;/var/www/reviewboard.mydomain.com&#39;</div></td>
</tr>
<tr>
<td>LOGGING_ALLOW_PROFILING</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>LOGGING_DIRECTORY</td>
<td class="code"><div>u&#39;&#39;</div></td>
</tr>
<tr>
<td>LOGGING_ENABLED</td>
<td class="code"><div>True</div></td>
</tr>
<tr>
<td>LOGGING_NAME</td>
<td class="code"><div>&#39;reviewboard&#39;</div></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><div>&#39;/accounts/profile/&#39;</div></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><div>&#39;/account/login/&#39;</div></td>
</tr>
<tr>
<td>LOGOUT_URL</td>
<td class="code"><div>&#39;/accounts/logout/&#39;</div></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><div>((u&#39;admin&#39;, u&#39;zhujiacheng@mydomain.com&#39;),)</div></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><div>u&#39;/var/www/reviewboard.mydomain.com/htdocs/media&#39;</div></td>
</tr>
<tr>
<td>MEDIA_SERIAL</td>
<td class="code"><div>1251096666</div></td>
</tr>
<tr>
<td>MEDIA_SERIAL_DIRS</td>
<td class="code"><div>[&#39;admin&#39;, &#39;djblets&#39;, &#39;rb&#39;]</div></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><div>u&#39;/media/&#39;</div></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><div>(&#39;django.middleware.gzip.GZipMiddleware&#39;,
&#39;django.middleware.common.CommonMiddleware&#39;,
&#39;django.middleware.doc.XViewMiddleware&#39;,
&#39;django.middleware.http.ConditionalGetMiddleware&#39;,
&#39;django.middleware.locale.LocaleMiddleware&#39;,
&#39;django.contrib.sessions.middleware.SessionMiddleware&#39;,
&#39;django.contrib.auth.middleware.AuthenticationMiddleware&#39;,
&#39;djblets.siteconfig.middleware.SettingsMiddleware&#39;,
&#39;reviewboard.admin.middleware.LoadSettingsMiddleware&#39;,
&#39;djblets.log.middleware.LoggingMiddleware&#39;,
&#39;reviewboard.admin.middleware.CheckUpdatesRequiredMiddleware&#39;)</div></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><div>u&#39;F j&#39;</div></td>
</tr>
<tr>
<td>NIS_EMAIL_DOMAIN</td>
<td class="code"><div>u&#39;&#39;</div></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><div>&#39;********************&#39;</div></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>PROFANITIES_LIST</td>
<td class="code"><div>&#39;********************&#39;</div></td>
</tr>
<tr>
<td>REVIEWBOARD_ROOT</td>
<td class="code"><div>&#39;/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.0.1-py2.6.egg/reviewboard&#39;</div></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><div>&#39;djblets.util.rooturl&#39;</div></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><div>&#39;********************&#39;</div></td>
</tr>
<tr>
<td>SEND_BROKEN_LINK_EMAILS</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><div>u&#39;root@localhost&#39;</div></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><div>31536000</div></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><div>&#39;rbsessionid&#39;</div></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><div>&#39;/&#39;</div></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><div>&#39;django.contrib.sessions.backends.db&#39;</div></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><div>&#39;reviewboard.settings&#39;</div></td>
</tr>
<tr>
<td>SITE_ID</td>
<td class="code"><div>1</div></td>
</tr>
<tr>
<td>SITE_ROOT</td>
<td class="code"><div>&#39;/&#39;</div></td>
</tr>
<tr>
<td>SITE_ROOT_URLCONF</td>
<td class="code"><div>&#39;reviewboard.urls&#39;</div></td>
</tr>
<tr>
<td>TEMPLATE_CONTEXT_PROCESSORS</td>
<td class="code"><div>(&#39;django.core.context_processors.auth&#39;,
&#39;django.core.context_processors.debug&#39;,
&#39;django.core.context_processors.i18n&#39;,
&#39;django.core.context_processors.media&#39;,
&#39;django.core.context_processors.request&#39;,
&#39;djblets.siteconfig.context_processors.siteconfig&#39;,
&#39;djblets.util.context_processors.settingsVars&#39;,
&#39;djblets.util.context_processors.siteRoot&#39;,
&#39;djblets.util.context_processors.ajaxSerial&#39;,
&#39;djblets.util.context_processors.mediaSerial&#39;,
&#39;reviewboard.admin.context_processors.version&#39;)</div></td>
</tr>
<tr>
<td>TEMPLATE_DEBUG</td>
<td class="code"><div>True</div></td>
</tr>
<tr>
<td>TEMPLATE_DIRS</td>
<td class="code"><div>(&#39;/usr/local/lib/python2.6/dist-packages/ReviewBoard-1.0.1-py2.6.egg/reviewboard/templates&#39;,)</div></td>
</tr>
<tr>
<td>TEMPLATE_LOADERS</td>
<td class="code"><div>(&#39;django.template.loaders.filesystem.load_template_source&#39;,
&#39;django.template.loaders.app_directories.load_template_source&#39;)</div></td>
</tr>
<tr>
<td>TEMPLATE_STRING_IF_INVALID</td>
<td class="code"><div>&#39;&#39;</div></td>
</tr>
<tr>
<td>TEST_DATABASE_CHARSET</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>TEST_DATABASE_COLLATION</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>TEST_DATABASE_NAME</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><div>&#39;reviewboard.test.runner&#39;</div></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><div>u&#39;P&#39;</div></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><div>&#39;Asia/Shanghai&#39;</div></td>
</tr>
<tr>
<td>TRANSACTIONS_MANAGED</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>URL_VALIDATOR_USER_AGENT</td>
<td class="code"><div>&#39;Django/1.1 (http://www.djangoproject.com)&#39;</div></td>
</tr>
<tr>
<td>USE_ETAGS</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>USE_I18N</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>WEB_API_ENCODERS</td>
<td class="code"><div>(&#39;djblets.webapi.core.BasicAPIEncoder&#39;,
&#39;reviewboard.webapi.json.ReviewBoardAPIEncoder&#39;)</div></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><div>u&#39;F Y&#39;</div></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard 500 page.
</p>
</div>
</body>
</html>
Unable to access http://localhost/api/json/reviewrequests/new/. The host path may be invalid
HTTP Error 500: Internal Server Error
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment