Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 490285

Summary: Find Users fails when hitting users with non-english characters in Last Name
Product: [Retired] freeIPA Reporter: Mathias Nicolajsen Kjærgaard <mnk>
Component: WebUIAssignee: Rob Crittenden <rcritten>
Status: CLOSED WONTFIX QA Contact: Chandrasekar Kannan <ckannan>
Severity: medium Docs Contact:
Priority: low    
Version: 1.2CC: benl, dpal, jgalipea
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-02-16 18:52:38 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Mathias Nicolajsen Kjærgaard 2009-03-14 20:15:50 UTC
Description of problem:
Find Users fails when hitting users with non-english characters in Last Name.
At least it fails with my name:

Mathias Nicolajsen Kjærgaard


Version-Release number of selected component (if applicable):
ipa-server-1.2.1-1.fc10.i386


How reproducible:


Steps to Reproduce:
1. open https://ipaserver/ipa/ui/user/list
2. Enter name of user with the character "æ" in Last Name 
3. Submit search
  
Actual results:
An unexpected error occured
HTTP Error Message:

500 - Internal Server Error

Expected results:
A user list containing the user with the given username

Additional info:
From /var/log/ipa_error.log:

2009-03-14 21:08:46,965 root INFO IPA: find_users 'mnk'
2009-03-14 21:08:47,068 ipagui.controllers ERROR 500 error (500 - Internal Server Error) for request 'GET /ipa/ui/user/list'
Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/CherryPy-2.3.0-py2.5.egg/cherrypy/_cphttptools.py", line 121, in _run
    self.main()
  File "/usr/lib/python2.5/site-packages/CherryPy-2.3.0-py2.5.egg/cherrypy/_cphttptools.py", line 264, in main
    body = page_handler(*virtual_path, **self.params)
  File "<string>", line 3, in list
  File "/usr/lib/python2.5/site-packages/turbogears/controllers.py", line 360, in expose
    *args, **kw)
  File "<string>", line 5, in run_with_transaction
  File "/usr/lib/python2.5/site-packages/turbogears/database.py", line 359, in so_rwt
    retval = func(*args, **kw)
  File "<string>", line 5, in _expose
  File "/usr/lib/python2.5/site-packages/turbogears/controllers.py", line 373, in <lambda>
    mapping, fragment, args, kw)))
  File "/usr/lib/python2.5/site-packages/turbogears/controllers.py", line 423, in _execute_func
    return _process_output(output, template, format, content_type, mapping, fragment)
  File "/usr/lib/python2.5/site-packages/turbogears/controllers.py", line 88, in _process_output
    fragment=fragment)
  File "/usr/lib/python2.5/site-packages/turbogears/view/base.py", line 159, in render
    return engine.render(**kw)
  File "/usr/lib/python2.5/site-packages/turbokid/kidsupport.py", line 206, in render
    output=output, format=format)
  File "/usr/lib/python2.5/site-packages/kid/__init__.py", line 301, in serialize
    raise_template_error(module=self.__module__)
  File "/usr/lib/python2.5/site-packages/kid/__init__.py", line 299, in serialize
    return serializer.serialize(self, encoding, fragment, format)
  File "/usr/lib/python2.5/site-packages/kid/serialization.py", line 107, in serialize
    text = ''.join(self.generate(stream, encoding, fragment, format))
  File "/usr/lib/python2.5/site-packages/kid/serialization.py", line 629, in generate
    for ev, item in self.apply_filters(stream, format):
  File "/usr/lib/python2.5/site-packages/kid/serialization.py", line 165, in format_stream
    for ev, item in stream:
  File "/usr/lib/python2.5/site-packages/kid/parser.py", line 221, in _coalesce
    for ev, item in stream:
  File "/usr/lib/python2.5/site-packages/kid/serialization.py", line 477, in inject_meta_tags
    for ev, item in stream:
  File "/usr/lib/python2.5/site-packages/turbogears/i18n/kidutils.py", line 71, in i18n_filter
    for ev, item in stream:
  File "/usr/lib/python2.5/site-packages/kid/parser.py", line 179, in _track
    for p in stream:
  File "/usr/lib/python2.5/site-packages/kid/filter.py", line 32, in apply_matches
    item = stream.expand()
  File "/usr/lib/python2.5/site-packages/kid/parser.py", line 108, in expand
    for ev, item in self._iter:
  File "/usr/lib/python2.5/site-packages/kid/parser.py", line 179, in _track
    for p in stream:
  File "/usr/lib/python2.5/site-packages/kid/parser.py", line 221, in _coalesce
    for ev, item in stream:
  File "/usr/share/ipa/ipagui/templates/userlist.py", line 180, in _pull
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 13: ordinal not in range(128)
Error location in template file '/usr/share/ipa/ipagui/templates/userlist.kid'
between line 59, column 20 and line 63, column 16:
                    <a
...
                    />

Comment 1 Mathias Nicolajsen Kjærgaard 2009-03-14 20:25:21 UTC
This bug might be related to bug #454076, but it is not the same, since I can edit the given user just fine.

Comment 2 Rob Crittenden 2009-03-16 15:27:08 UTC
Support for non-ascii characters is very limited at the moment. We are addressing this in the next release.