yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #43915
[Bug 1521928] Re: Nova API v2.1 error to specify multiple different_hosts.
Reviewed: https://review.openstack.org/259247
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=2841dd3de96792bd9172115945b5ffa5a1fe7c31
Submitter: Jenkins
Branch: master
commit 2841dd3de96792bd9172115945b5ffa5a1fe7c31
Author: Ken'ichi Ohmichi <ken-oomichi@xxxxxxxxxxxxx>
Date: Fri Dec 18 01:23:47 2015 +0000
Make scheduler_hints schema allow list of id
Nova v2.0 API allows a list of server_id, and the corresponding
filter handles it. However, Nova v2.1 API doesn't do that now.
That is backward incompatibile issue.
This patch fixes this issue.
NOTE: Tempest patch Ib3365ac2783a0578c7a1a1e72d9b6c9cfea340f5
is for reproducing this problem on the gate.
After this fixing, the Tempest patch can be merged and
we will be able to block this problem.
Change-Id: I1de7d184c590e84ab1b38880c8d784d38c37b820
Closes-Bug: #1521928
** Changed in: nova
Status: In Progress => Fix Released
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1521928
Title:
Nova API v2.1 error to specify multiple different_hosts.
Status in OpenStack Compute (nova):
Fix Released
Bug description:
1.rpm -qa | grep nova
openstack-novncproxy-12.0.0-1.el7.noarch
openstack-console-12.0.0-1.el7.noarch
openstack-common-12.0.0-1.el7.noarch
openstack-conductor-12.0.0-1.el7.noarch
openstack-cert-12.0.0-1.el7.noarch
openstack-nova-api-12.0.0-1.el7.noarch
openstack-nova-scheduler-12.0.0-1.el7.noarch
python-novaclient-2.30.1-1.el7.noarch
python-nova-12.0.0-1.el7.noarch
2.log
[server create request]
POST /v2/28983b2ce4354747a9958de57ea9c328/servers HTTP/1.1
Host: 220.xxx.xxx.xxx:8774
X-Auth-Token: 54fdf9becfcc4540b009a29618f13545
Content-Type: application/json
Cache-Control: no-cache
Postman-Token: 7c2f7922-7ac6-0667-0c09-a3a1587d60ba
{
"os:scheduler_hints": {
"different_host": [
"099b8bee-9264-48fe-a745-45b22f7ff79f",
"99644acc-8893-4656-9481-0114efdbc9b6"
]
},
"server": {
"name": "ccc",
"imageRef": "df4191a9-caa6-496b-bed0-eb57ec683fcf",
"flavorRef": "1",
"networks": [
{
"uuid": "fb0232ba-e9f0-423f-b928-aea3fd3741c7"
}
],
"availability_zone": "nova"
}
}
[api response]
Status 400 OK
Time 768 ms
Connection →
Connection
Options that are desired for the connection
close
Content-Length → 283
Content-Type → application/json; charset=UTF-8
Date → Wed, 02 Dec 2015 09:21:43 GMT
Server → Apache/2.4.6 (CentOS) OpenSSL/1.0.1e-fips
X-Compute-Request-Id → req-f3702257-76b1-4f32-b07c-a0d3608c014f
{
"badRequest": {
"message": "Invalid input for field/attribute different_host. Value: [u'099b8bee-9264-48fe-a745-45b22f7ff79f', u'99644acc-8893-4656-9481-0114efdbc9b6']. [u'099b8bee-9264-48fe-a745-45b22f7ff79f', u'99644acc-8893-4656-9481-0114efdbc9b6'] is not a 'uuid'",
"code": 400
}
}
[nova-api.log]
2015-12-02 09:21:43.975 22018 DEBUG nova.osapi_compute.wsgi.server [-] (22018) accepted ('192.168.0.22', 43272) server /usr/lib/python2.7/site-packages/eventlet/wsgi.py:826
2015-12-02 09:21:43.982 22018 DEBUG nova.api.openstack.wsgi [req-f3702257-76b1-4f32-b07c-a0d3608c014f 5c5696fa83854f7690e7fc36320bacd0 28983b2ce4354747a9958de57ea9c328 - - -] Action: 'create', calling method: <bound method ServersController.create of <nova.api.openstack.compute.servers.ServersController object at 0x79c6110>>, body: {
"os:scheduler_hints": {
"different_host": [
"099b8bee-9264-48fe-a745-45b22f7ff79f",
"99644acc-8893-4656-9481-0114efdbc9b6"
]
},
"server": {
"name": "ccc",
"imageRef": "df4191a9-caa6-496b-bed0-eb57ec683fcf",
"flavorRef": "1",
"networks": [
{
"uuid": "fb0232ba-e9f0-423f-b928-aea3fd3741c7"
}
],
"availability_zone": "nova"
}
} _process_stack /usr/lib/python2.7/site-packages/nova/api/openstack/wsgi.py:789
2015-12-02 09:21:43.986 22018 DEBUG nova.api.openstack.wsgi [req-f3702257-76b1-4f32-b07c-a0d3608c014f 5c5696fa83854f7690e7fc36320bacd0 28983b2ce4354747a9958de57ea9c328 - - -] Returning 400 to user: Invalid input for field/attribute different_host. Value: [u'099b8bee-9264-48fe-a745-45b22f7ff79f', u'99644acc-8893-4656-9481-0114efdbc9b6']. [u'099b8bee-9264-48fe-a745-45b22f7ff79f', u'99644acc-8893-4656-9481-0114efdbc9b6'] is not a 'uuid' __call__ /usr/lib/python2.7/site-packages/nova/api/openstack/wsgi.py:1175
2015-12-02 09:21:43.987 22018 INFO nova.osapi_compute.wsgi.server [req-f3702257-76b1-4f32-b07c-a0d3608c014f 5c5696fa83854f7690e7fc36320bacd0 28983b2ce4354747a9958de57ea9c328 - - -] xxx.xxx.xxx.xxx,192.168.0.22 "POST /v2/28983b2ce4354747a9958de57ea9c328/servers HTTP/1.1" status: 400 len: 493 time: 0.0096600
[nova list]
[root@liberty-controll-1 ~(keystone_admin)]# nova list --all-tenants --fields name,host_id
+--------------------------------------+---------------------------+----------------------------------------------------------+
| ID | Name | Host Id |
+--------------------------------------+---------------------------+----------------------------------------------------------+
| 099b8bee-9264-48fe-a745-45b22f7ff79f | aa02 | 9962f246261aeb103a440fdd0141da24e15b383a05573f50ed201616 |
| 99644acc-8893-4656-9481-0114efdbc9b6 | aa03 | f8bc3b367d0efd50a587acebcc887a020f776a5a14f3f2e9689cd639 |
| 22bdd6e1-336b-4d74-a1c2-4d3eb1b776a2 | server-test2 | 9962f246261aeb103a440fdd0141da24e15b383a05573f50ed201616 |
| 474603c5-dc69-456e-b237-5a502d79b2d2 | server-test3/server-test4 | f8bc3b367d0efd50a587acebcc887a020f776a5a14f3f2e9689cd639 |
| 9205a464-6c81-475b-b632-7d0890b66e6e | test1 | 36b8822f9a58a1fa1da66ed61482e4c599311eb62b4a73e0eac0be63 |
| 25c1cebf-bbcd-4593-936d-79fe8af5b658 | test2 | 936afc22f57c1a3f6513e4cec1a3ad6c8527173c6580bee4c303900c |
| 8127f5a8-3a80-41ad-b937-ea1a3580f543 | test2 | 936afc22f57c1a3f6513e4cec1a3ad6c8527173c6580bee4c303900c |
| 118dfb58-3b46-4af4-ab59-77cdbdc2d4cb | test3 | 936afc22f57c1a3f6513e4cec1a3ad6c8527173c6580bee4c303900c |
| 5fc8378b-ad45-4af3-a317-2fc6c53fdd49 | test5 | 36b8822f9a58a1fa1da66ed61482e4c599311eb62b4a73e0eac0be63 |
| 525b845f-5edc-47b2-bd1a-172ab6efc7d8 | test6 | 936afc22f57c1a3f6513e4cec1a3ad6c8527173c6580bee4c303900c |
| 6d50a40b-3ca1-4861-8069-a3b20b4b158c | test7 | 8065a46dcb5f3b23e4deaa5cab9e08b4dcccf57fa2fc089d81d0332d |
| 351d9151-d616-4e29-996f-9be0fd2a87e8 | test8 | 936afc22f57c1a3f6513e4cec1a3ad6c8527173c6580bee4c303900c |
| ea909da4-5246-41cb-b070-5aab65214283 | test9 | 36b8822f9a58a1fa1da66ed61482e4c599311eb62b4a73e0eac0be63 |
+--------------------------------------+---------------------------+----------------------------------------------------------+
3.step
(1)create server aa02
(2)create server aa03 with DifferentHostFilter(different_host=aa02_ID) -> OK
(3)create server ccc with DifferentHostFilter(different_host=aa02,aa03 ID) -> NG
Error:
nvalid input for field/attribute different_host. Value: [u'099b8bee-9264-48fe-a745-45b22f7ff79f', u'99644acc-8893-4656-9481-0114efdbc9b6']. [u'099b8bee-9264-48fe-a745-45b22f7ff79f', u'99644acc-8893-4656-9481-0114efdbc9b6'] is not a 'uuid'
This error has not occured on "Kilo Compute v2" and "Juno Compute
v2",but same error has occured on "Kilo Compute V2.1"
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1521928/+subscriptions
References