Generic driver not properly waiting for volume extend

Bug #1479697 reported by Lucian Petrut
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Shared File Systems Service (Manila)
Fix Released
Medium
Lucian Petrut

Bug Description

One step involved in extending shares created by the Generic share driver involves extending the underlying Cinder volume. The method which performs this operation calls the Cinder extend API and waits for the volume status to be active.

In some cases, the volume status can be reported as active before actually starting the extend operation. For this reason, attaching the volume can fail with the following exception:

InvalidInput: Invalid input received: Invalid volume: volume '77060460-0300-4677-8b03-57b4f30b0a12' status must be
'available'. Currently in 'extending'.

Trace: http://paste.openstack.org/show/406252/

This issue can easily be fixed by checking the volume size as well when waiting for the volume extend operation to finish.

Tags: driver generic
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to manila (master)

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

Changed in manila:
assignee: nobody → Lucian Petrut (petrutlucian94)
status: New → In Progress
tags: added: driver generic
Changed in manila:
milestone: none → liberty-3
importance: Undecided → Medium
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to manila (master)

Reviewed: https://review.openstack.org/207394
Committed: https://git.openstack.org/cgit/openstack/manila/commit/?id=3f39e390c4bfde43edf1f2081df170d090a654c1
Submitter: Jenkins
Branch: master

commit 3f39e390c4bfde43edf1f2081df170d090a654c1
Author: Lucian Petrut <email address hidden>
Date: Tue Jul 28 14:59:46 2015 +0300

    Fix Generic driver share extend

    When extending shares, the Generic share driver will extend
    the underlying Cinder volume. It will consider this operation to
    have finished once the volume status is "available".

    In some cases, the volume status can be reported as active before
    actually starting the extend operation. For this reason, attaching
    the volume can fail as the volume would be in 'extending' state.

    This patch fixes the issue by properly waiting for the volume
    extend operation to finish, checking the volume size against the
    expected size.

    Change-Id: I02e4a42110e323dc295e20f9f07411a13fdcc236
    Closes-Bug: #1479697

Changed in manila:
status: In Progress → Fix Committed
Thierry Carrez (ttx)
Changed in manila:
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in manila:
milestone: liberty-3 → 1.0.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.