Merge "EMC ScaleIO driver does not honor create from snapshot volume size"

This commit is contained in:
Zuul 2018-09-21 13:58:39 +00:00 committed by Gerrit Code Review
commit e56b1da8e0
3 changed files with 21 additions and 1 deletions

View File

@ -98,3 +98,8 @@ class TestCreateVolumeFromSnapShot(scaleio.TestScaleIODriver):
def test_create_volume_from_snapshot(self):
self.set_https_response_mode(self.RESPONSE_MODE.Valid)
self.driver.create_volume_from_snapshot(self.volume, self.snapshot)
def test_create_volume_from_snapshot_larger(self):
self.set_https_response_mode(self.RESPONSE_MODE.Valid)
self.volume.size = 2
self.driver.create_volume_from_snapshot(self.volume, self.snapshot)

View File

@ -783,7 +783,15 @@ class ScaleIODriver(driver.VolumeDriver):
{'volname': volume_id,
'snapname': snapname})
return self._snapshot_volume(volume_id, snapname)
ret = self._snapshot_volume(volume_id, snapname)
if volume.size > snapshot.volume_size:
LOG.info("Extending volume %(vol)s to size %(size)s",
{'vol': ret['provider_id'],
'size': volume.size})
self._extend_volume(ret['provider_id'],
snapshot.volume_size, volume.size)
return ret
@staticmethod
def _get_headers():

View File

@ -0,0 +1,7 @@
---
fixes:
- |
Dell EMC Scale IO Driver: Fixes `bug 1560649
<https://bugs.launchpad.net/cinder/+bug/1560649>`
for creating volumes with sizes greater than that of the
original snapshot.