NEC driver: Retyping an in-use volume failed.

Bug #1848689 reported by Naoki Saito
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Cinder
Fix Released
Undecided
Naoki Saito

Bug Description

With NEC driver, when performing storage assist retype against an in-use volume it gives following error message
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager [req-a6d334c1-bffd-485a-b6c2-ba827243ab32 d4868de04c594538b8ac95ab49deed66 e54aaaffc94d4974b7acb721ddfdd575 - default default] Volume 575d4efc-076d-4e0f-a3a1-89659319bbdc: driver error when trying to retype, falling back to generic mechanism.: VolumeBackendAPIException: Bad or unexpected response from the storage volume backend API: Command `iSMcfg ldunbind -ldname LX:2eqyQEWePhWgHuJ5BMD6cu` failed.
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager Traceback (most recent call last):
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/manager.py", line 2792, in retype
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager host)
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/drivers/nec/volume_helper.py", line 680, in retype
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager {'msgparm': msgparm, 'exception': e})
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 220, in __exit__
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager self.force_reraise()
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 196, in force_reraise
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager six.reraise(self.type_, self.value, self.tb)
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/drivers/nec/volume_helper.py", line 673, in retype
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager ret = self._retype(context, volume, new_type, diff, host)
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/drivers/nec/volume_helper.py", line 713, in _retype
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager self._select_leastused_poolnumber)
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/drivers/nec/volume_helper.py", line 750, in _migrate
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager cli.UnpairWaitForMigrate)
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/drivers/nec/cli.py", line 472, in backup_restore
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager unpairProc.run()
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/drivers/nec/cli.py", line 724, in run
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager 'mv': self._mvname, 'rv': self._rvname})
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 220, in __exit__
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager self.force_reraise()
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 196, in force_reraise
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager six.reraise(self.type_, self.value, self.tb)
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/drivers/nec/cli.py", line 718, in run
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager self._execute()
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/drivers/nec/cli.py", line 811, in _execute
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager self._cli.unbind(self._volume_properties['mvname'])
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/drivers/nec/cli.py", line 228, in unbind
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager self._execute(cmd)
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/drivers/nec/cli.py", line 55, in _execute
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager expected_status, raise_exec)
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "<string>", line 2, in _sync_execute
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/coordination.py", line 151, in _synchronized
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager return f(*a, **k)
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/drivers/nec/cli.py", line 98, in _sync_execute
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager raise exception.VolumeBackendAPIException(data=msg)
2019-10-08 11:48:47.172 16760 ERROR cinder.volume.manager VolumeBackendAPIException: Bad or unexpected response from the storage volume backend API: Command `iSMcfg ldunbind -ldname LX:2eqyQEWePhWgHuJ5BMD6cu` failed.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to cinder (master)

Fix proposed to branch: master
Review: https://review.opendev.org/689383

Changed in cinder:
assignee: nobody → Naoki Saito (n-saito)
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to cinder (master)

Reviewed: https://review.opendev.org/689383
Committed: https://git.openstack.org/cgit/openstack/cinder/commit/?id=8cc095d1d059fbb4db35c4ef7b2fac82260dd930
Submitter: Zuul
Branch: master

commit 8cc095d1d059fbb4db35c4ef7b2fac82260dd930
Author: Naoki Saito <email address hidden>
Date: Fri Oct 18 18:42:34 2019 +0900

    NEC driver: fix migrate/retype an in-use volume

    NEC Storage does not support storage assisted migration and retype
    against in-use volumes. In that cases, migrate_volume() and
    retype() in NEC driver should return False to try host-assisted
    migration or retype. However, the driver currently raises an
    exception and the operation fails.

    This patch fixes migrate_volume() and retype() to return False without
    raising an exception.

    Change-Id: I9ceadc200e40126cf121d74d3996e511ba3f66df
    Closes-Bug: #1848689

Changed in cinder:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to cinder (stable/train)

Fix proposed to branch: stable/train
Review: https://review.opendev.org/708540

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to cinder (stable/train)

Reviewed: https://review.opendev.org/708540
Committed: https://git.openstack.org/cgit/openstack/cinder/commit/?id=d08d32914d8a2cfa3cf1d941ecf547ef1ace9875
Submitter: Zuul
Branch: stable/train

commit d08d32914d8a2cfa3cf1d941ecf547ef1ace9875
Author: Naoki Saito <email address hidden>
Date: Fri Oct 18 18:42:34 2019 +0900

    NEC driver: fix migrate/retype an in-use volume

    NEC Storage does not support storage assisted migration and retype
    against in-use volumes. In that cases, migrate_volume() and
    retype() in NEC driver should return False to try host-assisted
    migration or retype. However, the driver currently raises an
    exception and the operation fails.

    This patch fixes migrate_volume() and retype() to return False without
    raising an exception.

    Change-Id: I9ceadc200e40126cf121d74d3996e511ba3f66df
    Closes-Bug: #1848689
    (cherry picked from commit 8cc095d1d059fbb4db35c4ef7b2fac82260dd930)

tags: added: in-stable-train
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/cinder 15.1.0

This issue was fixed in the openstack/cinder 15.1.0 release.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.