Error 500 when trying to set empty description with LDAP
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Identity (keystone) |
Won't Fix
|
Medium
|
Adam Young |
Bug Description
When trying to update the project description with an empty string, Keystone answers with an error 500. I'm using Devstack set up with the LDAP backend (including assignment) and unfortunately, I'm not familiar enough with LDAP to determine if the problem might be in the configuration elsewhere.
The issue is particularly noticeable when using Horizon because when trying to e.g. assign a user to a project, all the project-related fields are also updated.
How to reproduce:
1. Get a valid token: openstack --os-identity-
2. Try to update an existing project by setting the description to "":
curl -i -X PATCH http://
HTTP/1.1 500 Internal Server Error
Vary: X-Auth-Token
Content-Type: application/json
Content-Length: 222
Date: Thu, 20 Feb 2014 16:11:25 GMT
{"error": {"message": "An unexpected error prevented the server from fulfilling your request. {'info': 'description: value #0 invalid per syntax', 'desc': 'Invalid syntax'}", "code": 500, "title": "Internal Server Error"}}
Keystone logs:
2014-02-20 15:55:05.121 DEBUG keystone.
ap/core.py:555
2014-02-20 15:55:05.125 DEBUG keystone.
[''])] from (pid=9341) modify_s /opt/stack/
2014-02-20 15:55:05.126 DEBUG keystone.
2014-02-20 15:55:05.126 DEBUG keystone.
2014-02-20 15:55:05.126 ERROR keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.126 TRACE keystone.
2014-02-20 15:55:05.130 INFO eventlet.
slapd logs:
53062559 conn=1235 fd=16 ACCEPT from IP=127.0.0.1:48228 (IP=0.0.0.0:389)
53062559 conn=1235 op=0 BIND dn="cn=
53062559 conn=1235 op=0 BIND dn="cn=
53062559 conn=1235 op=0 RESULT tag=97 err=0 text=
53062559 conn=1235 op=1 SRCH base="ou=
53062559 conn=1235 op=1 SRCH attr=ou enabled description businessCategory
53062559 conn=1235 op=1 SEARCH RESULT tag=101 err=0 nentries=1 text=
53062559 conn=1235 op=2 UNBIND
53062559 conn=1235 fd=16 closed
53062559 conn=1236 fd=16 ACCEPT from IP=127.0.0.1:48229 (IP=0.0.0.0:389)
53062559 conn=1236 op=0 BIND dn="cn=
53062559 conn=1236 op=0 BIND dn="cn=
53062559 conn=1236 op=0 RESULT tag=97 err=0 text=
53062559 conn=1236 op=1 MOD dn="cn=
53062559 conn=1236 op=1 MOD attr=description
53062559 conn=1236 op=1 RESULT tag=103 err=21 text=description: value #0 invalid per syntax
53062559 conn=1236 op=2 UNBIND
53062559 conn=1236 fd=16 closed
Horizon logs:
[Thu Feb 20 15:55:04.948432 2014] [:error] [pid 11040] REQ: curl -i -X PATCH http://
[Thu Feb 20 15:55:05.130162 2014] [:error] [pid 11040] RESP: [500] CaseInsensitive
[Thu Feb 20 15:55:05.130241 2014] [:error] [pid 11040] RESP BODY: {"error": {"message": "An unexpected error prevented the server from fulfilling your request. {'info': 'description: value #0 invalid per syntax', 'desc': 'Invalid syntax'}", "code": 500, "title": "Internal Server Error"}}
Changed in keystone: | |
assignee: | Richard Megginson (rmeggins) → nobody |
Changed in keystone: | |
status: | In Progress → Triaged |
Changed in keystone: | |
assignee: | nobody → Richard Megginson (rmeggins) |
status: | Triaged → In Progress |
Changed in keystone: | |
assignee: | Richard Megginson (rmeggins) → Adam Young (ayoung) |
Fix proposed to branch: master /review. openstack. org/75142
Review: https:/