Status: New
Owner: ----
Labels: Type-Defect Priority-Medium

New issue 3470 by Unable to set groups/people on a review request

What version are you running?


What's the URL of the page containing the problem?

What steps will reproduce the problem?
1. Attempt to change the person/groups assigned to a review

What is the expected output? What do you see instead?

Assigned persons/groups are changed.

What operating system are you using? What browser?

Occurs with both Chrome and Firefox, both on Linux.

Please provide any additional information below.

This is a very unusual issue. I recreated the user's submission myself and was unable to reproduce, but when attempting to perform changes to the review they created can reliably reproduce this 100%. It is almost as if their submission has created a broken review request.

Further, they were able to reproduce this behaviour (by creating a second request which is affected by the same issue).

Backtrace is:

Traceback (most recent call last):

File "/usr/local/lib/python2.7/dist-packages/Django-1.6.5-py2.7.egg/django/core/handlers/", line 199, in get_response
    response = middleware_method(request, response)

File "/usr/local/lib/python2.7/dist-packages/Django-1.6.5-py2.7.egg/django/middleware/", line 14, in process_response
    response['Content-Length'] = str(len(response.content))

File "/usr/local/lib/python2.7/dist-packages/Djblets-0.8.5-py2.7.egg/djblets/webapi/", line 109, in _get_content

File "/usr/local/lib/python2.7/dist-packages/Djblets-0.8.5-py2.7.egg/djblets/webapi/", line 110, in encode
    return super(JSONEncoderAdapter, self).encode(o)

  File "/usr/lib/python2.7/json/", line 200, in encode
    chunks = self.iterencode(o, _one_shot=True)

  File "/usr/lib/python2.7/json/", line 263, in iterencode
    return _iterencode(o, 0)

File "/usr/local/lib/python2.7/dist-packages/Djblets-0.8.5-py2.7.egg/djblets/webapi/", line 118, in default

File "/usr/local/lib/python2.7/dist-packages/Djblets-0.8.5-py2.7.egg/djblets/webapi/", line 88, in encode
    result = encoder.encode(*args, **kwargs)

File "/usr/local/lib/python2.7/dist-packages/Djblets-0.8.5-py2.7.egg/djblets/webapi/", line 87, in encode
    return serializer.serialize_object(o, *args, **kwargs)

File "/usr/local/lib/python2.7/dist-packages/Djblets-0.8.5-py2.7.egg/djblets/webapi/", line 986, in serialize_object
    *args, **kwargs),

File "/usr/local/lib/python2.7/dist-packages/Djblets-0.8.5-py2.7.egg/djblets/webapi/", line 1087, in get_links
    base_href = self.get_href(obj, request, *args, **kwargs)

File "/usr/local/lib/python2.7/dist-packages/ReviewBoard-2.0.2-py2.7.egg/reviewboard/webapi/resources/", line 1026, in get_href
    self.get_item_url(local_site_name=local_site_name, **href_kwargs))

File "/usr/local/lib/python2.7/dist-packages/ReviewBoard-2.0.2-py2.7.egg/reviewboard/webapi/", line 123, in get_item_url
    return self._get_resource_url(, **kwargs)

File "/usr/local/lib/python2.7/dist-packages/ReviewBoard-2.0.2-py2.7.egg/reviewboard/webapi/", line 156, in _get_resource_url

File "/usr/local/lib/python2.7/dist-packages/ReviewBoard-2.0.2-py2.7.egg/reviewboard/site/", line 38, in local_site_reverse
    *func_args, **func_kwargs)

File "/usr/local/lib/python2.7/dist-packages/Django-1.6.5-py2.7.egg/django/core/", line 532, in reverse return iri_to_uri(resolver._reverse_with_prefix(view, prefix, *args, **kwargs))

File "/usr/local/lib/python2.7/dist-packages/Django-1.6.5-py2.7.egg/django/core/", line 437, in _reverse_with_prefix candidate_subs = dict((k, urlquote(v)) for (k, v) in candidate_subs.items())

File "/usr/local/lib/python2.7/dist-packages/Django-1.6.5-py2.7.egg/django/core/", line 437, in <genexpr> candidate_subs = dict((k, urlquote(v)) for (k, v) in candidate_subs.items())

File "/usr/local/lib/python2.7/dist-packages/Django-1.6.5-py2.7.egg/django/utils/", line 203, in wrapper
    return func(*args, **kwargs)

File "/usr/local/lib/python2.7/dist-packages/Django-1.6.5-py2.7.egg/django/utils/", line 40, in urlquote
    return force_text(quote(force_str(url), force_str(safe)))

File "/usr/local/lib/python2.7/dist-packages/Django-1.6.5-py2.7.egg/django/utils/", line 157, in force_bytes
    if not isinstance(s, six.string_types):

RuntimeError: maximum recursion depth exceeded while calling a Python object

You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:

You received this message because you are subscribed to the Google Groups 
"reviewboard-issues" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
To post to this group, send email to
Visit this group at
For more options, visit

Reply via email to