3869: User can not log in due to characters in name

msunde
What version are you running?
2.0.15

What's the URL of the page containing the problem?
http://review.XXXX/dashboard/

What steps will reproduce the problem?
1. User attempts to log in and gets a 500 internal error.
2.
3.

What is the expected output? What do you see instead?
User is able to log in.

What operating system are you using? What browser?
Amazon Linux latest version.

Please provide any additional information below.

The error in the logs:

2015-05-11 16:05:40,984 - ERROR -  - Exception thrown for user jose.name at http://review.XXXX/dashboard/

'ascii' codec can't decode byte 0xc3 in position 3: ordinal not in range(128)
Traceback (most recent call last):
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/core/handlers/base.py", line 112, in get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/contrib/auth/decorators.py", line 22, in _wrapped_view
    return view_func(request, *args, **kwargs)
  File "/usr/local/lib/python2.6/site-packages/ReviewBoard-2.0.15-py2.6.egg/reviewboard/site/decorators.py", line 35, in _check
    return view_func(request, local_site=local_site, *args, **kwargs)
  File "/usr/local/lib/python2.6/site-packages/ReviewBoard-2.0.15-py2.6.egg/reviewboard/accounts/decorators.py", line 44, in _check_valid_prefs
    return view_func(request, *args, **kwargs)
  File "/usr/local/lib/python2.6/site-packages/ReviewBoard-2.0.15-py2.6.egg/reviewboard/datagrids/views.py", line 59, in dashboard
    return grid.render_to_response(template_name)
  File "/usr/lib/python2.6/site-packages/Djblets-0.8.16-py2.6.egg/djblets/datagrid/grids.py", line 1049, in render_to_response
    return render_to_response(template_name, Context(context))
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/shortcuts/__init__.py", line 29, in render_to_response
    return HttpResponse(loader.render_to_string(*args, **kwargs), **httpresponse_kwargs)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/loader.py", line 164, in render_to_string
    return t.render(Context(dictionary))
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 140, in render
    return self._render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 134, in _render
    return self.nodelist.render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 840, in render
    bit = self.render_node(node, context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 854, in render_node
    return node.render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/loader_tags.py", line 123, in render
    return compiled_parent._render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 134, in _render
    return self.nodelist.render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 840, in render
    bit = self.render_node(node, context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 854, in render_node
    return node.render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/loader_tags.py", line 123, in render
    return compiled_parent._render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 134, in _render
    return self.nodelist.render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 840, in render
    bit = self.render_node(node, context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 854, in render_node
    return node.render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/loader_tags.py", line 123, in render
    return compiled_parent._render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 134, in _render
    return self.nodelist.render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 840, in render
    bit = self.render_node(node, context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 854, in render_node
    return node.render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/loader_tags.py", line 62, in render
    result = block.nodelist.render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 840, in render
    bit = self.render_node(node, context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 854, in render_node
    return node.render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/loader_tags.py", line 155, in render
    return self.render_template(self.template, context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/loader_tags.py", line 137, in render_template
    output = template.render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 140, in render
    return self._render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 134, in _render
    return self.nodelist.render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 840, in render
    bit = self.render_node(node, context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 854, in render_node
    return node.render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/defaulttags.py", line 305, in render
    return nodelist.render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 840, in render
    bit = self.render_node(node, context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 854, in render_node
    return node.render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/defaulttags.py", line 389, in render
    return strip_spaces_between_tags(self.nodelist.render(context).strip())
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 840, in render
    bit = self.render_node(node, context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 854, in render_node
    return node.render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/defaulttags.py", line 305, in render
    return nodelist.render(context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 840, in render
    bit = self.render_node(node, context)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/template/base.py", line 854, in render_node
    return node.render(context)
  File "/usr/lib/python2.6/site-packages/Djblets-0.8.16-py2.6.egg/djblets/util/decorators.py", line 122, in render
    return self.tag_func(context, *args)
  File "/usr/lib/python2.6/site-packages/Djblets-0.8.16-py2.6.egg/djblets/gravatars/templatetags/gravatars.py", line 62, in gravatar
    url, size, user.get_full_name() or user.username)
  File "/usr/lib/python2.6/site-packages/Django-1.6.10-py2.6.egg/django/contrib/auth/models.py", line 402, in get_full_name
    full_name = '%s %s' % (self.first_name, self.last_name)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 3: ordinal not in range(128)


The first name for the user in Active directory is: José
Editing the name and it starts to work.