New "clone_across_pools" volume driver capability

Registered by Peter Penchev

In at least two places (_clone_image_volume() in the create_volume flow and _get_query_filters() in the image cache) Cinder assumes that a driver cannot clone a volume into a different storage pool. Some drivers do not have such a restriction and it may be possible to complete the "create volume from image" operation very efficiently instead of falling back to the "attach and dd" option.

As discussed in the 2022-05-25 Cinder meeting, one way to fix that is to introduce a new driver capability (as reported by _update_volume_stats()) and skip the "same pool" check in these two places. The proposed new capability name is "clone_across_pools"; it will be reported as supported by the StorPool driver from the start.

Blueprint information

Status:
Started
Approver:
None
Priority:
Undefined
Drafter:
Peter Penchev
Direction:
Needs approval
Assignee:
Peter Penchev
Definition:
New
Series goal:
Proposed for zed
Implementation:
Started
Milestone target:
milestone icon zed-2
Started by
Peter Penchev

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.opendev.org/#/q/topic:storpool-driver-fixes

Addressed by: https://review.opendev.org/c/openstack/cinder/+/847131
    Add the clone_across_pools driver capability

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.