glance CLI always shows hw_vif_multiqueue_enabled='True'
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Glance |
New
|
Undecided
|
Unassigned |
Bug Description
"openstack image show" reports incorrect properties when setting hw_vif_
in devstack master (also reproduced on wallaby), I have an image with no hw_vif_
$ openstack image show -c properties -f value amphora-x64-haproxy
{'os_hidden': False, 'os_hash_algo': 'sha512', 'os_hash_value': 'fddf81f46b53ec
Set the hw_vif_
$ openstack image set --property hw_vif_
$ openstack image show -c properties -f value amphora-x64-haproxy
{'os_hidden': False, 'os_hash_algo': 'sha512', 'os_hash_value': 'fddf81f46b53ec
Set the property to False (or false), it is not ok, image show still returns "True"
$ openstack image set --property hw_vif_
$ openstack image show -c properties -f value amphora-x64-haproxy
{'os_hidden': False, 'os_hash_algo': 'sha512', 'os_hash_value': 'fddf81f46b53ec
The value is False (but it is a string not a boolean) in the DB:
$ mysql -u root glance -e "select * from image_properties where image_id = '394ec5e4-
*******
id: 15
image_id: 394ec5e4-
name: hw_vif_
value: False
created_at: 2022-11-09 07:42:24
updated_at: 2022-11-09 07:43:01
deleted_at: NULL
deleted: 0
Unsetting the property doesn't work:
$ openstack image unset --property hw_vif_
property unset failed, 'hw_vif_
Failed to unset 1 of 1 properties.
Note: this is an issue only with the CLI, the property is correctly read by nova when creating the VM.
Additional note, output with -vv:
$ openstack image show -c properties -f value -vv amphora-x64-haproxy 192.168. 122.115/ image/v2/ images/ amphora- x64-haproxy used request id req-e83b29bb- 2bd4-4428- 91ac-7b20d61d09 bf 192.168. 122.115/ image/v2/ images? name=amphora- x64-haproxy" -H "Accept: application/json" -H "User-Agent: openstacksdk/ 0.100.1 keystoneauth1/5.0.0 python- requests/ 2.28.1 CPython/3.9.14" -H "X-Auth-Token: {SHA256} c32e6eaa74708e9 8c3f119de7fb32b a01241dcd5d0b82 e6b2dd0acda7b65 44e6" 192.168. 122.115: 80 "GET /image/ v2/images? name=amphora- x64-haproxy HTTP/1.1" 200 1138 request- id: req-0b2c1847- 055e-4b25- 863c-442dcd1611 e8 specified. openstack. md5": "", "owner_ specified. openstack. sha256" : "", "owner_ specified. openstack. object" : "images/ amphora- x64-haproxy" , "hw_architecture": "x86_64", "hw_vif_ multiqueue_ enabled" : "false", "name": "amphora- x64-haproxy" , "disk_format": "qcow2", "container_format": "bare", "visibility": "public", "size": 521778688, "virtual_size": 3221225472, "status": "active", "checksum": "a6966ed3c8c920 d580300aaa7d639 61b", "protected": false, "min_ram": 0, "min_disk": 0, "owner": "ba476c36d46d4f dfaec2592c469e2 94c", "os_hidden": false, "os_hash_algo": "sha512", "os_hash_value": "fddf81f46b53ec 0b3e1760cc0c1ba a64578357003a00 440ac4e0257af2a f3556bb460f5fc3 8eab88e5aea43f9 97f59f75156bfdb a92d9726f80bafb a4e6a0911" , "id": "394ec5e4- 3aab-47e8- a36f-dfdba73299 4b", "created_at": "2022-10- 27T06:50: 30Z", "updated_at": "2022-11- 09T07:45: 05Z", "tags": ["amphora"], "self": "/v2/images/ 394ec5e4- 3aab-47e8- a36f-dfdba73299 4b", "file": "/v2/images/ 394ec5e4- 3aab-47e8- a36f-dfdba73299 4b/file" , "schema": "/v2/schemas/ image"} ], "first": "/v2/images? name=amphora- x64-haproxy" , "schema": "/v2/schemas/ images" } 192.168. 122.115/ image/v2/ images? name=amphora- x64-haproxy used request id req-0b2c1847- 055e-4b25- 863c-442dcd1611 e8 0b3e1760cc0c1ba a64578357003a00 440ac4e0257af2a f3556bb460f5fc3 8eab88e5aea43f9 97f59f75156bfdb a92d9726f80bafb a4e6a0911' , 'owner_ specified. openstack. md5': '', 'owner_ specified. openstack. sha256' : '', 'owner_ specified. openstack. object' : 'images/ amphora- x64-haproxy' , 'hw_architecture': 'x86_64', 'hw_rng_model': 'virtio', 'hw_vif_ multiqueue_ enabled' : True}
GET call to image for http://
REQ: curl -g -i -X GET "http://
Resetting dropped connection: 192.168.122.115
http://
RESP: [200] Connection: close Content-Length: 1138 Content-Type: application/json Date: Wed, 09 Nov 2022 07:46:39 GMT Server: Apache/2.4.53 (CentOS Stream) OpenSSL/3.0.1 mod_wsgi/4.7.1 Python/3.9 x-openstack-
RESP BODY: {"images": [{"hw_rng_model": "virtio", "owner_
GET call to image for http://
{'os_hidden': False, 'os_hash_algo': 'sha512', 'os_hash_value': 'fddf81f46b53ec
clean_up ShowImage:
END return value: 0
The API returns '"hw_vif_ multiqueue_ enabled" : "false"', CLI shows "'hw_vif_ multiqueue_ enabled' : True"