EMC VMAX create_cloned_volume() sometimes fails with ERROR_FAMILY_NOT_SUPPORTED

Bug #1391205 reported by Carl Pecinovsky
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Cinder
Fix Released
Medium
Xing Yang

Bug Description

VMAX has an underlying restriction that the target volume of a clone must have the same disk geometry as the source volume. That restriction might make sense by itself, but the problem comes into play with the variation of the CreateElementReplica method the VMAX driver code is using to generate the clone target and do the copy atomically. That method apparently does not attempt to create a target with the same disk geometry as the source. For example, the source volume could be made up of a Meta Head device followed by one or more concatenated Meta devices.

For example, create a volume of 10GB size, then resize it to 15 GB. Now it consists of a two Metas - the first Symm_PartialAllocOfConcreteExtent is 10 GB, and the second Symm_PartialAllocOfConcreteExtent is 5GB. But the target gets generated as a single 15 GB volume. This mismatch in geometry causes the request to fail that the cinder driver is calling.

SMI-Provider error:
Error: C:ERROR_CLASS_SOFTWARE F:ERROR_FAMILY_NOT_SUPPORTED R:1000002 Not Supported: Creating composite volume targets with different size members.

If possible, the the target volume should be created with a compatible disk geometry.
Note: cinder does support a provider_geometry field on the volume, but the VMAX driver is not currently making use of it.

Carl Pecinovsky (csky)
description: updated
Xing Yang (xing-yang)
Changed in cinder:
assignee: nobody → Xing Yang (xing-yang)
importance: Undecided → Medium
status: New → In Progress
tags: added: drivers emc
Revision history for this message
Carl Pecinovsky (csky) wrote :

Also, could see this type of error (again for geometry mismatch):

ERROR_CLASS_SOFTWARE F:ERROR_FAMILY_FAILED R:1100017 Metadevice configuration error : "Establish failed" : 2 : 182 : "A configuration mismatch was detected among members of your META device(s)"

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

Fix proposed to branch: master
Review: https://review.openstack.org/139751

Xing Yang (xing-yang)
Changed in cinder:
milestone: none → kilo-1
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to cinder (master)

Reviewed: https://review.openstack.org/139751
Committed: https://git.openstack.org/cgit/openstack/cinder/commit/?id=8ddecd772b85a70b1edc7a69048a3ea43c6c8c30
Submitter: Jenkins
Branch: master

commit 8ddecd772b85a70b1edc7a69048a3ea43c6c8c30
Author: Xing Yang <email address hidden>
Date: Fri Dec 5 17:55:28 2014 -0500

    Fix a clone volume problem in VMAX driver

    If the source volume contains meta members of different sizes,
    create cloned volume will fail with error "ERROR_FAMILY_NOT_SUPPORTED".
    This patched fixed this problem.

    Change-Id: I92e7e8b56e3a21644aa2bff3288c1bdc80d45cc6
    Closes-Bug: #1391205

Changed in cinder:
status: In Progress → Fix Committed
Thierry Carrez (ttx)
Changed in cinder:
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in cinder:
milestone: kilo-1 → 2015.1.0
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.