Activity log for bug #1933399

Date Who What changed Old value New value Message
2021-06-24 01:28:33 Eric Xie bug added bug
2021-06-26 07:09:40 Eric Xie openstack-cyborg: status New Fix Released
2021-06-28 03:35:40 Eric Xie summary Unit testcases were broken Get None when listing devices
2021-06-28 03:35:45 Eric Xie openstack-cyborg: status Fix Released In Progress
2021-06-28 03:36:00 Eric Xie description Using latest source code, tox -ecover got failed testcases: ====== Totals ====== Ran: 272 tests in 1.0693 sec. - Passed: 260 - Skipped: 1 - Expected Fail: 0 - Unexpected Success: 0 - Failed: 11 Sum of execute time for each test: 6.2850 sec. Error log: AttributeError: 'Query' object has no attribute 'with_lockmode' # git log commit 5ea67883e1a70cf713cdfd14db5696faaeda2659 (origin/master, origin/HEAD, gerrit/master) Merge: d9a27f5 40ca546 Author: Zuul <zuul@review.opendev.org> Date: Wed Jun 9 08:50:44 2021 +0000 Merge "Fill the msg of exception" Using latest openstackclient to list devices as below: openstack accelerator device list (oscenv) root@mgt01:~# pip3 list | grep cyborgclient python-cyborgclient 1.3.0 WARNING: You are using pip version 20.2.4; however, version 21.1.2 is available. You should consider upgrading via the '/home/xiett/oscenv/bin/python -m pip install --upgrade pip' command. (oscenv) root@mgt01:~# pip3 list | grep openstackclient python-openstackclient 5.5.0 WARNING: You are using pip version 20.2.4; however, version 21.1.2 is available. You should consider upgrading via the '/home/xiett/oscenv/bin/python -m pip install --upgrade pip' command. (oscenv) root@mgt01:~# pip3 list | grep openstacksdk openstacksdk 0.57.0 The output with --debug: REQ: curl -g -i -X GET http://cyborg.openstack.svc.cn-north-3.myinspurcloud.com/accelerator/v2/devices -H "Accept: application/json" -H "OpenStack-API-Version: accelerator 2.0" -H "User-Agent: openstacksdk/0.57.0 keystoneauth1/4.3.1 python-requests/2.25.1 CPython/3.6.9" -H "X-Auth-Token: {SHA256}e74d00d0c02c3aa493c73b60a911336e0198bf4cbf67bd4b998d66683226d5b1" http://cyborg.openstack.svc.cn-north-3.myinspurcloud.com:80 "GET /accelerator/v2/devices HTTP/1.1" 200 15 RESP: [200] content-length: 15 content-type: application/json date: Wed, 16 Jun 2021 06:28:07 GMT openstack-api-maximum-version: 2.1 openstack-api-minimum-version: 2.0 openstack-api-version: 2.0 server: istio-envoy vary: OpenStack-API-Version x-envoy-upstream-service-time: 744 x-openstack-request-id: req-1086739a-a3b4-4f43-9583-897f2fe943e3 RESP BODY: {"devices": []} GET call to accelerator for http://cyborg.openstack.svc.cn-north-3.myinspurcloud.com/accelerator/v2/devices used request id req-1086739a-a3b4-4f43-9583-897f2fe943e3 clean_up ListDevice: END return value: 0 There is 'accelerator/' in the url. When listing without this and got the devices: curl -X GET -H "X-Auth-Token: $token" http://cyborg.openstack.svc.cn-north-3.myinspurcloud.com/v2/devices | python -mjson.tool % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 5227 100 5227 0 0 130k 0 --:--:-- --:--:-- --:--:-- 130k { "devices": [ { "uuid": "45512a17-725c-4305-b917-99f8c5837cf9", "type": "GPU", "vendor": "10de", "model": "NVIDIA Corporation GV100GL [Tesla V100 PCIe 32GB]", "std_board_info": "{"product_id": "1db6", "controller": "3D controller"}", "vendor_board_info": "{"vendor_info": "gpu_vb_info"}", ...
2021-09-08 07:51:33 Eric Xie summary Get None when listing devices Get wrong links in version api
2021-09-08 07:54:51 Eric Xie description Using latest openstackclient to list devices as below: openstack accelerator device list (oscenv) root@mgt01:~# pip3 list | grep cyborgclient python-cyborgclient 1.3.0 WARNING: You are using pip version 20.2.4; however, version 21.1.2 is available. You should consider upgrading via the '/home/xiett/oscenv/bin/python -m pip install --upgrade pip' command. (oscenv) root@mgt01:~# pip3 list | grep openstackclient python-openstackclient 5.5.0 WARNING: You are using pip version 20.2.4; however, version 21.1.2 is available. You should consider upgrading via the '/home/xiett/oscenv/bin/python -m pip install --upgrade pip' command. (oscenv) root@mgt01:~# pip3 list | grep openstacksdk openstacksdk 0.57.0 The output with --debug: REQ: curl -g -i -X GET http://cyborg.openstack.svc.cn-north-3.myinspurcloud.com/accelerator/v2/devices -H "Accept: application/json" -H "OpenStack-API-Version: accelerator 2.0" -H "User-Agent: openstacksdk/0.57.0 keystoneauth1/4.3.1 python-requests/2.25.1 CPython/3.6.9" -H "X-Auth-Token: {SHA256}e74d00d0c02c3aa493c73b60a911336e0198bf4cbf67bd4b998d66683226d5b1" http://cyborg.openstack.svc.cn-north-3.myinspurcloud.com:80 "GET /accelerator/v2/devices HTTP/1.1" 200 15 RESP: [200] content-length: 15 content-type: application/json date: Wed, 16 Jun 2021 06:28:07 GMT openstack-api-maximum-version: 2.1 openstack-api-minimum-version: 2.0 openstack-api-version: 2.0 server: istio-envoy vary: OpenStack-API-Version x-envoy-upstream-service-time: 744 x-openstack-request-id: req-1086739a-a3b4-4f43-9583-897f2fe943e3 RESP BODY: {"devices": []} GET call to accelerator for http://cyborg.openstack.svc.cn-north-3.myinspurcloud.com/accelerator/v2/devices used request id req-1086739a-a3b4-4f43-9583-897f2fe943e3 clean_up ListDevice: END return value: 0 There is 'accelerator/' in the url. When listing without this and got the devices: curl -X GET -H "X-Auth-Token: $token" http://cyborg.openstack.svc.cn-north-3.myinspurcloud.com/v2/devices | python -mjson.tool % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 5227 100 5227 0 0 130k 0 --:--:-- --:--:-- --:--:-- 130k { "devices": [ { "uuid": "45512a17-725c-4305-b917-99f8c5837cf9", "type": "GPU", "vendor": "10de", "model": "NVIDIA Corporation GV100GL [Tesla V100 PCIe 32GB]", "std_board_info": "{"product_id": "1db6", "controller": "3D controller"}", "vendor_board_info": "{"vendor_info": "gpu_vb_info"}", ... Using latest openstackclient to list devices as below: openstack endpoint list | grep cyborg | 6c39cc116c7e4c469cae1c4f9a3c38d7 | region-stackdev | cyborg | accelerator | True | admin | http://cyborg.openstack.svc.region-stackdev.myinspurcloud.com/v2 | | 7cd99aceb7d14c99be1f952b0245feec | region-stackdev | cyborg | accelerator | True | internal | http://cyborg-api.openstack.svc.region-stackdev.myinspurcloud.com:6666/v2 | | f4062a18fffe4bf283deb109c141d51f | region-stackdev | cyborg | accelerator | True | public | http://cyborg.openstack.svc.region-stackdev.myinspurcloud.com/v2 | But the links of version api are not same as the above endpoints. # curl "cyborg.openstack.svc.region-stackdev.myinspurcloud.com" | python -mjson.tool % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 614 100 614 0 0 19806 0 --:--:-- --:--:-- --:--:-- 19806 { "name": "OpenStack Cyborg API", "description": "Cyborg is the OpenStack project for lifecycle management of hardware accelerators, such as GPUs,FPGAs, AI chips, security accelerators, etc.", "versions": [ { "id": "v2", "status": "CURRENT", "max_version": "2.1", "min_version": "2.0", "links": [ { "href": "http://cyborg.openstack.svc.region-stackdev.myinspurcloud.com/accelerator/v2", "rel": "self" } ] } ], "default_version": { "id": "v2", "status": "CURRENT", "max_version": "2.1", "min_version": "2.0", "links": [ { "href": "http://cyborg.openstack.svc.region-stackdev.myinspurcloud.com/accelerator/v2", "rel": "self" } ] } }