associate qos specs with type already associated overwirtes orginal association

Bug #1222692 reported by Huang Zhiteng on 2013-09-09
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Cinder
High
Huang Zhiteng

Bug Description

When trying to associate a volume type T1, which is already associated with QoS Specs Q1, with Q2, current implementation doesn't
give any error and will overwrite the association with newly requested relation.

How to reproduce:
 1. create two qos specs (Q1, Q2) and volume type (T1);
 2. associate T1 with Q1;
 3. associate T1 with Q2;

Current result: T1 is associated with Q2 after step 3; expected result: T1 is still associated with Q1, error raises.

Changed in cinder:
assignee: nobody → Huang Zhiteng (zhiteng-huang)
importance: Undecided → High
status: New → Confirmed
milestone: none → havana-rc1

Reviewed: https://review.openstack.org/45635
Committed: http://github.com/openstack/cinder/commit/5aa6ca2e80631a32e429bcacbd031ddaa6e5bfb1
Submitter: Jenkins
Branch: master

commit 5aa6ca2e80631a32e429bcacbd031ddaa6e5bfb1
Author: Zhiteng Huang <email address hidden>
Date: Mon Sep 9 14:53:37 2013 +0800

    Fix Qos Specs association corner case

    Fix a corner case in associating QoS Specs with Volumt types that was
    not handled well: Raise HTTPBadRequest() to client if associate volume
    type, which is already associated one qos specs other than specified
    qos specs. Previously such operation will proceed without error which
    results overwriting original association.

    Also refactor DB API volume_type_qos_specs_get() to return qos specs
    in consistent dict format as other qos specs related APIs.

    Fix bug: # 1222692

    Change-Id: I9db66d1e3a7469620ba542f5387422685a2d828f

Changed in cinder:
status: Confirmed → Fix Committed
Thierry Carrez (ttx) on 2013-10-04
Changed in cinder:
status: Fix Committed → Fix Released
Thierry Carrez (ttx) on 2013-10-17
Changed in cinder:
milestone: havana-rc1 → 2013.2
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers