Rally scenario CinderVolumes.create_nested_snapshots_and_attach_volume has failed due to lack of names for disk devices

Bug #1708160 reported by Vladyslav Skybin on 2017-08-02
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Rally
Undecided
Unassigned

Bug Description

Step to reproduce:
1. Deploy OpenStack Ocata on lab over 200 nodes
2. Run scenario CinderVolumes.create_nested_snapshots_and_attach_volume with parameters:
    runner": {
      "type": "constant",
      "times": 400,
      "concurrency": 10
    },
    "args": {
      "size": {
        "min": 1,
        "max": 5
      },
      "nested_level": 5
}
Expected result: Scenario passed
Actual result: Part of iteration failed with error:

2017-08-01 20:51:19.970 5013 ERROR rally.task.runner [-] Unexpected API Error. Please report this at http://bugs.launchpad.net/nova/ and attach the Nova API log if possible.
<class 'InternalError_Remote'> (HTTP 500) (Request-ID: req-8c3459dd-a7d1-4527-b701-176eec4756d2)
70 5013 ERROR rally.task.runner raise exceptions.from_response(resp, body, url, method)
2017-08-01 20:51:19.970 5013 ERROR rally.task.runner ClientException: Unexpected API Error. Please report this at http://bugs.launchpad.net/nova/ and attach the Nova API log if possible.
2017-08-01 20:51:19.970 5013 ERROR rally.task.runner <class 'InternalError_Remote'> (HTTP 500) (Request-ID: req-8c3459dd-a7d1-4527-b701-176eec4756d2)
2017-08-01 20:51:19.970 5013 ERROR rally.task.runner

In nova-api.log:
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions [req-8c3459dd-a7d1-4527-b701-176eec4756d2 8c13df7dc98a453abc999bac046f2c35 78951efd7255428a975472fed77036c1 - default default] Unexpected exception in API method:
Traceback
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions Traceback (most recent call last):
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/dist-packages/nova/api/openstack/extensions.py", line 338, in wrapped
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions return f(*args, **kwargs)
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/dist-packages/nova/api/validation/__init__.py", line 108, in wrapper
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions return func(*args, **kwargs)
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/dist-packages/nova/api/openstack/compute/volumes.py", line 329, in create
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions volume_id, device)
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/dist-packages/nova/compute/api.py", line 170, in inner
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions return function(self, context, instance, *args, **kwargs)
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/dist-packages/nova/compute/api.py", line 151, in inner
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions return f(self, context, instance, *args, **kw)
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/dist-packages/nova/compute/api.py", line 3701, in attach_volume
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions disk_bus, device_type)
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/dist-packages/nova/compute/api.py", line 3638, in _attach_volume
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions device_type=device_type)
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/dist-packages/nova/compute/api.py", line 3620, in _create_volume_bdm
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions device_type=device_type)
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/dist-packages/nova/compute/rpcapi.py", line 935, in reserve_block_device_name
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions return cctxt.call(ctxt, 'reserve_block_device_name', **kw)
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/client.py", line 169, in call
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions retry=self.retry)
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/dist-packages/oslo_messaging/transport.py", line 97, in _send
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions timeout=timeout, retry=retry)
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/dist-packages/oslo_messaging/_drivers/amqpdriver.py", line 505, in send
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions retry=retry)
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/dist-packages/oslo_messaging/_drivers/amqpdriver.py", line 496, in _send
2017-08-01 20:51:19.954 5783 ERROR nova.api.openstack.extensions raise result
InternalError: No free disk device names for prefix 'vd'

I suppose, it relates to lack of names for disk devices (only 26 for disk_bus == "virtio" ).

Reviewed: https://review.openstack.org/505918
Committed: https://git.openstack.org/cgit/openstack/rally/commit/?id=a48810e082078f4863d376bb25e6970998b0890f
Submitter: Jenkins
Branch: master

commit a48810e082078f4863d376bb25e6970998b0890f
Author: cxhuawei <email address hidden>
Date: Wed Sep 20 19:14:15 2017 -0700

    create a new server in each iteration when making snapshots from a server

    1. maxinum number of volumes per VM is 26 because of hard-coded limit
    2. detaching will be blocked when large concurency

    Closes-Bug: #1708160
    Change-Id: Ice2126209abd1812d1d133f597660be9e6dd3e6c

Changed in rally:
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers