service-create allows 2 services with the same name
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Identity (keystone) |
Won't Fix
|
Low
|
Unassigned | ||
devstack |
Fix Released
|
Undecided
|
Juan Manuel Ollé |
Bug Description
While `service-get <name>` seems to be confused by the duplicated name. The same thing happens to `service-delete <name>`. Of course, getting and deleting services by ID is not affected.
Following http://
$ keystone service-create --name=cinder --type=volume --description=
+------
| Property | Value |
+------
| description | Cinder Volume Service |
| id | 54f9153b21b54a9
| name | cinder |
| type | volume |
+------
$ keystone service-create --name=cinder --type=volumev2 --description=
+------
| Property | Value |
+------
| description | Cinder Volume Service V2 |
| id | dd425789606b447
| name | cinder |
| type | volumev2 |
+------
$ keystone service-get cinder
global name 'exc' is not defined
Debug output is here http://
I'm not sure whether duplicated names are allowed/
- service-create should check the name and stop when a service with the same name exists
- service-get and service-delete should be changed so that they work with duplicated names, maybe by showing multiple services or reporting an appropriate error
- The help text of service-get and service-delete should not say that name is allowed
description: | updated |
Changed in keystone: | |
assignee: | nobody → Juan Manuel Ollé (juan-m-olle) |
Changed in devstack: | |
assignee: | nobody → Juan Manuel Ollé (juan-m-olle) |
Changed in keystone: | |
assignee: | nobody → lei zhang (zhang-lei) |
tags: | added: validation |
Changed in keystone: | |
assignee: | nobody → lei zhang (zhang-lei) |
status: | Triaged → In Progress |
Changed in keystone: | |
assignee: | lei zhang (zhang-lei) → nobody |
Changed in keystone: | |
assignee: | nobody → Ryosuke Mizuno (r-mizuno) |
"service.name" isn't actually an indexed column, much less unique, in the SQL backend. This will require a migration.