[Pure Storage] Clone CG from CG snapshot fails in PowerVC

Bug #1945824 reported by Simon Dodsley
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Cinder
Fix Released
Medium
Simon Dodsley

Bug Description

PowerVC requires that the provider_id, id and replication_status of cloned volumes created in a CG created from a CG snapshot are correctly populated.

This does not currently happen and causes the Pure Storage Cinder driver to crash.

This is the stack trace produced:

2021-09-07 02:45:43.677 1541883 INFO cinder.volume.drivers.pure [req-2707ab9a-1b5b-4bc7-99cb-8fd234f6aafe 45b92f751ad84b7ca04e511010ed558a 7b5b479ab6af46a5a1001ebe64b822fe - - -] jfr volume is {'created_at': datetime.datetime(2021, 9, 7, 5, 38, 33), 'updated_at': datetime.datetime(2021, 9, 7, 6, 45, 38), 'deleted_at': None, 'deleted': False, 'id': '056e9e98-e96e-40ca-aab5-c8485c53aea5', '_name_id': None, 'ec2_id': None, 'user_id': '45b92f751ad84b7ca04e511010ed558a', 'project_id': '7b5b479ab6af46a5a1001ebe64b822fe', 'snapshot_id': 'd21e692d-1cfd-42e5-8f8a-fae8093bb49f', 'cluster_name': None, 'host': 'pvc75#pvc75', 'size': 6, 'availability_zone': 'nova', 'status': 'available', 'attach_status': 'detached', 'migration_status': None, 'scheduled_at': datetime.datetime(2021, 9, 7, 5, 38, 22), 'launched_at': None, 'terminated_at': None, 'display_name': 'clone-vm_clone-6', 'display_description': None, 'provider_location': None, 'provider_auth': None, 'provider_geometry': None, 'provider_id': None, 'volume_type_id': '8cc69042-ab6a-4a2f-9654-ebcc721db229', 'source_volid': None, 'encryption_key_id': None, 'consistencygroup_id': None, 'group_id': None, 'bootable': False, 'multiattach': False, 'replication_status': None, 'replication_extended_status': None, 'replication_driver_data': None, 'previous_status': None, 'service_uuid': None, 'shared_targets': True, 'volume_metadata': [<cinder.db.sqlalchemy.models.VolumeMetadata object at 0x7fd4592bc278>, <cinder.db.sqlalchemy.models.VolumeMetadata object at 0x7fd459604f28>, <cinder.db.sqlalchemy.models.VolumeMetadata object at 0x7fd459434ef0>], 'volume_admin_metadata': [<cinder.db.sqlalchemy.models.VolumeAdminMetadata object at 0x7fd4592bc160>], 'volume_type': <cinder.db.sqlalchemy.models.VolumeType object at 0x7fd4592bc208>, 'consistencygroup': None, 'group': None, 'volume_attachment': []}
2021-09-07 02:45:43.678 1541883 INFO cinder.volume.drivers.pure [req-2707ab9a-1b5b-4bc7-99cb-8fd234f6aafe 45b92f751ad84b7ca04e511010ed558a 7b5b479ab6af46a5a1001ebe64b822fe - - -] jfr vol_name is None
2021-09-07 02:45:43.678 1541883 INFO cinder.volume.drivers.pure [req-2707ab9a-1b5b-4bc7-99cb-8fd234f6aafe 45b92f751ad84b7ca04e511010ed558a 7b5b479ab6af46a5a1001ebe64b822fe - - -] jfr volume_type is {'created_at': datetime.datetime(2021, 9, 6, 9, 32, 55), 'updated_at': None, 'deleted_at': None, 'deleted': False, 'id': '8cc69042-ab6a-4a2f-9654-ebcc721db229', 'name': 'PureStorage base template', 'description': None, 'qos_specs_id': None, 'is_public': True, 'extra_specs': [<cinder.db.sqlalchemy.models.VolumeTypeExtraSpecs object at 0x7fd459604cf8>, <cinder.db.sqlalchemy.models.VolumeTypeExtraSpecs object at 0x7fd4594343c8>]}
2021-09-07 02:45:43.679 1541883 ERROR cinder.volume.manager [req-2707ab9a-1b5b-4bc7-99cb-8fd234f6aafe 45b92f751ad84b7ca04e511010ed558a 7b5b479ab6af46a5a1001ebe64b822fe - - -] Terminate volume connection failed: 'VolumeType' object has no attribute 'is_replicated': AttributeError: 'VolumeType' object has no attribute 'is_replicated'
2021-09-07 02:45:43.679 1541883 ERROR cinder.volume.manager Traceback (most recent call last):
2021-09-07 02:45:43.679 1541883 ERROR cinder.volume.manager File "/usr/lib/python3.6/site-packages/cinder/volume/manager.py", line 2023, in terminate_connection
2021-09-07 02:45:43.679 1541883 ERROR cinder.volume.manager force=force)
2021-09-07 02:45:43.679 1541883 ERROR cinder.volume.manager File "/usr/lib/python3.6/site-packages/cinder/volume/drivers/pure.py", line 194, in wrapper
2021-09-07 02:45:43.679 1541883 ERROR cinder.volume.manager result = f(*args, **kwargs)
2021-09-07 02:45:43.679 1541883 ERROR cinder.volume.manager File "/usr/lib/python3.6/site-packages/cinder/volume/drivers/pure.py", line 2955, in terminate_connection
2021-09-07 02:45:43.679 1541883 ERROR cinder.volume.manager vol_name = self._get_vol_name(volume)
2021-09-07 02:45:43.679 1541883 ERROR cinder.volume.manager File "/usr/lib/python3.6/site-packages/cinder/volume/drivers/pure.py", line 1768, in _get_vol_name
2021-09-07 02:45:43.679 1541883 ERROR cinder.volume.manager vol_name = self._generate_purity_vol_name(volume)
2021-09-07 02:45:43.679 1541883 ERROR cinder.volume.manager File "/usr/lib/python3.6/site-packages/cinder/volume/drivers/pure.py", line 1752, in _generate_purity_vol_name
2021-09-07 02:45:43.679 1541883 ERROR cinder.volume.manager volume.volume_type)
2021-09-07 02:45:43.679 1541883 ERROR cinder.volume.manager File "/usr/lib/python3.6/site-packages/cinder/volume/drivers/pure.py", line 1677, in _get_replication_type_from_vol_type
2021-09-07 02:45:43.679 1541883 ERROR cinder.volume.manager if volume_type and volume_type.is_replicated():
2021-09-07 02:45:43.679 1541883 ERROR cinder.volume.manager AttributeError: 'VolumeType' object has no attribute 'is_replicated'
2021-09-07 02:45:43.679 1541883 ERROR cinder.volume.manager
2021-09-07 02:45:43.729 1541883 ERROR oslo_messaging.

Changed in cinder:
assignee: nobody → Simon Dodsley (simon-dodsley)
status: New → In Progress
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/c/openstack/cinder/+/812210

Changed in cinder:
importance: Undecided → Medium
tags: added: clone powervc pure-storage snapshot
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to cinder (master)

Reviewed: https://review.opendev.org/c/openstack/cinder/+/812210
Committed: https://opendev.org/openstack/cinder/commit/35c07883772d30a383f19b6f03ee0b81e9f537f0
Submitter: "Zuul (22348)"
Branch: master

commit 35c07883772d30a383f19b6f03ee0b81e9f537f0
Author: Simon Dodsley <email address hidden>
Date: Fri Oct 1 14:42:58 2021 -0400

    [Pure Storage] Add missing DB values when performing create CG from
    CG snap

    Return the correct metadata from new volumes created after cloning
    a consistency group from a snapshot.
    Previously nothing was returned which causes issue with PowerVC.

    Change-Id: Ia11abfe5f12aedd364fcd5ecd979733178c7dbd1
    Closes-Bug: #1945824

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

Fix proposed to branch: stable/xena
Review: https://review.opendev.org/c/openstack/cinder/+/815884

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

Reviewed: https://review.opendev.org/c/openstack/cinder/+/815884
Committed: https://opendev.org/openstack/cinder/commit/3ba9b392ad9a5fe030615b4956507d6c8cb687ad
Submitter: "Zuul (22348)"
Branch: stable/xena

commit 3ba9b392ad9a5fe030615b4956507d6c8cb687ad
Author: Simon Dodsley <email address hidden>
Date: Fri Oct 1 14:42:58 2021 -0400

    [Pure Storage] Add missing DB values when performing create CG from
    CG snap

    Return the correct metadata from new volumes created after cloning
    a consistency group from a snapshot.
    Previously nothing was returned which causes issue with PowerVC.

    Change-Id: Ia11abfe5f12aedd364fcd5ecd979733178c7dbd1
    Closes-Bug: #1945824
    (cherry picked from commit 35c07883772d30a383f19b6f03ee0b81e9f537f0)

tags: added: in-stable-xena
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to cinder (stable/wallaby)

Fix proposed to branch: stable/wallaby
Review: https://review.opendev.org/c/openstack/cinder/+/818579

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

Reviewed: https://review.opendev.org/c/openstack/cinder/+/818579
Committed: https://opendev.org/openstack/cinder/commit/30578a728cae6901bdf923a242d0b4f08507dabc
Submitter: "Zuul (22348)"
Branch: stable/wallaby

commit 30578a728cae6901bdf923a242d0b4f08507dabc
Author: Simon Dodsley <email address hidden>
Date: Fri Oct 1 14:42:58 2021 -0400

    [Pure Storage] Add missing DB values when performing create CG from
    CG snap

    Return the correct metadata from new volumes created after cloning
    a consistency group from a snapshot.
    Previously nothing was returned which causes issue with PowerVC.

    Change-Id: Ia11abfe5f12aedd364fcd5ecd979733178c7dbd1
    Closes-Bug: #1945824
    (cherry picked from commit 35c07883772d30a383f19b6f03ee0b81e9f537f0)
    (cherry picked from commit 3ba9b392ad9a5fe030615b4956507d6c8cb687ad)

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

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

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/cinder 18.2.0

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

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/cinder 20.0.0.0rc1

This issue was fixed in the openstack/cinder 20.0.0.0rc1 release candidate.

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.