NetApp iSCSI driver doesn't enforce 32 block-ranges limit

Bug #1288962 reported by Andrew Kerr
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Cinder
Fix Released
Undecided
Andrew Kerr

Bug Description

The NetApp zapi for clone create has an undocumented limit of 32 block ranges (of a max 2^24 blocks each).

The driver should check to make sure the number of block range segments does not exceed 32. In the case of an excessively large request, the xml may be rejected by the filer silently and the volume will become stuck in an extending state, with 2 flexVols (the original and the new sized one) present on the filer.

description: updated
Revision history for this message
Ben Swartzlander (bswartz) wrote :

For cases when the range count exceeds 32, the clone call needs to be broken up into multiple calls with up to 32 ranges per call. In this way the practical limit is infinite.

Changed in cinder:
status: New → Confirmed
Changed in cinder:
assignee: nobody → Andrew Kerr (andrew-kerr)
summary: - NetApp iSCSI driver doesn't enforce 32 block range limit
+ NetApp iSCSI driver doesn't enforce 32 block-ranges limit
Revision history for this message
Andrew Kerr (andrew-kerr) wrote :

Additional info:

This 32 block-ranges limit applies to both the c-mode and 7-mode drivers' zapi calls.

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/79614

Changed in cinder:
status: Confirmed → In Progress
Mike Perez (thingee)
tags: added: drivers
Changed in cinder:
assignee: Andrew Kerr (andrew-kerr) → Alex Meade (alex-meade)
Changed in cinder:
assignee: Alex Meade (alex-meade) → Andrew Kerr (andrew-kerr)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to cinder (master)

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

commit aa4a89eda8941bce22ead9db2dd5f7bc6ca90e04
Author: Andrew Kerr <email address hidden>
Date: Tue Mar 11 10:28:55 2014 -0400

    Allow NetApp iSCSI driver to sub-clone large volumes

    The NetApp zapi used during certain extend operations has several limits
    imposed on it. Each block-range provided can only be 2^24 in size, and
    there can only be 32 block-ranges per zapi call. This fix allows the
    NetApp iSCSI driver to send multiple zapi calls if necessary, to allow
    for extend operations on volumes of an arbitrary size.

    Closes-Bug: #1288962
    Change-Id: I981d22f32cb2182112fbea3ea9880d1e8c8c91ab

Changed in cinder:
status: In Progress → Fix Committed
Thierry Carrez (ttx)
Changed in cinder:
milestone: none → icehouse-rc1
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in cinder:
milestone: icehouse-rc1 → 2014.1
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on cinder (stable/havana)

Change abandoned by Alan Pevec (<email address hidden>) on branch: stable/havana
Review: https://review.openstack.org/78347
Reason: Final Havana release 2012.3.4 has been cut and stable/havana is going to be removed in a week.

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.