cinder quota update for volume type should automatically update default quotas

Bug #1576718 reported by craig
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Cinder
New
Wishlist
Unassigned

Bug Description

so if I have a volume type in the following example

volume type: gold

if I update the quota for anything under that volume type I then have to do a second update for the default number of volumes.

so something like this:
cinder quota-update --volumes 100 --volume-type gold

and then have to turn around and do:
cinder quota-update --volumes 100 (to update the default volumes quota)

Changed in cinder:
importance: Undecided → Low
Revision history for this message
Sheel Rana (ranasheel2000) wrote :

This bug is invalid as i am this functionality is working fine.
Please refer below test results for verifiacation:

sheel@sheel-VirtualBox:~/devstack$ cinder quota-show 7b68039c470b4c9bbd02c375df9b9bfd
+------------------------+-------+
| Property | Value |
+------------------------+-------+
| backup_gigabytes | 1000 |
| backups | 10 |
| gigabytes | 1000 |
| gigabytes_lvmdriver-1 | -1 |
| gigabytes_sheel_type | -1 |
| gigabytes_type_private | -1 |
| per_volume_gigabytes | -1 |
| snapshots | 10 |
| snapshots_lvmdriver-1 | -1 |
| snapshots_sheel_type | -1 |
| snapshots_type_private | -1 |
| volumes | 10 |
| volumes_lvmdriver-1 | -1 | <----------------------------- Step1(check default volumes)
| volumes_sheel_type | -1 |
| volumes_type_private | -1 |
+------------------------+-------+

Step2: update default volumes to 100
sheel@sheel-VirtualBox:~/devstack$ cinder quota-update --volume-type lvmdriver-1 --volumes 100 7b68039c470b4c9bbd02c375df9b9bfd
+------------------------+-------+
| Property | Value |
+------------------------+-------+
| backup_gigabytes | 1000 |
| backups | 10 |
| gigabytes | 1000 |
| gigabytes_lvmdriver-1 | -1 |
| gigabytes_sheel_type | -1 |
| gigabytes_type_private | -1 |
| per_volume_gigabytes | -1 |
| snapshots | 10 |
| snapshots_lvmdriver-1 | -1 |
| snapshots_sheel_type | -1 |
| snapshots_type_private | -1 |
| volumes | 10 |
| volumes_lvmdriver-1 | 100 |
| volumes_sheel_type | -1 |
| volumes_type_private | -1 |
+------------------------+-------+
sheel@sheel-VirtualBox:~/devstack$ cinder quota-show 7b68039c470b4c9bbd02c375df9b9bfd
+------------------------+-------+
| Property | Value |
+------------------------+-------+
| backup_gigabytes | 1000 |
| backups | 10 |
| gigabytes | 1000 |
| gigabytes_lvmdriver-1 | -1 |
| gigabytes_sheel_type | -1 |
| gigabytes_type_private | -1 |
| per_volume_gigabytes | -1 |
| snapshots | 10 |
| snapshots_lvmdriver-1 | -1 |
| snapshots_sheel_type | -1 |
| snapshots_type_private | -1 |
| volumes | 10 |
| volumes_lvmdriver-1 | 100 | <-------------------------- Step3(check default volumes)
| volumes_sheel_type | -1 |
| volumes_type_private | -1 |
+------------------------+-------+

Revision history for this message
Sheel Rana (ranasheel2000) wrote :

Marking this bug as invalid.
Please reopen it if i missed anything pointed in this bug..
Thanks!!

Changed in cinder:
status: New → Invalid
craig (craig-delatte)
Changed in cinder:
status: Invalid → Incomplete
Revision history for this message
craig (craig-delatte) wrote :

So in your output your are still showing volumes = 10 so you could never have more than that no matter how many of a volune type you have quota for. So if you have 100 lvm volumes available in that quota the most you could allocate is 10. What is was saying is that the update should update your volume type to 100 in your example as well as ensuring you can allocate your quota by incrementing your volumes quota by 100 or at least along those lines

Revision history for this message
Sheel Rana (ranasheel2000) wrote :

Dear Craig,

Well I got your point.

But in case we have mulitple volume types then updating quota volumes for one volume type should not update total volume quota.

For ex, lets we have 3 volume types:
1. lvmdriver
2. sheel_type
3. type_private

Then "cinder quota-show" will show details of volumes per volume_type as shown below:

1. | volumes_lvmdriver-1 | -1|
2. | volumes_sheel_type | -1 |
3. | volumes_type_private | -1 |

If we update volumes quota for any volume type to 100, lets say for lvmdriver-1, then this should not update total volume count to 100 as we also have other volume types where we have specified volume count to -1(-1 depicts infinite)

So, running "cinder quota-update --volume-type lvmdriver-1 --volumes 100 --" should not update total volumes to 100 as there are other volume types as well.
Updating volume quota on basis of one volume type does not make good sense, so I thought it to make invalid.

Please let me know if I could not answer your query here.
Thanks!!

Revision history for this message
craig (craig-delatte) wrote :

Ok. That is a good explanation. So i think the point would be that if you update any of your volume-types it should ensure that volumes would be >= sum of volumes per vol type..

Revision history for this message
craig (craig-delatte) wrote :

So I accept the use case. Thanks for explaning why not. This is a bug our qa team wanted open. Hopefully quotas as a whole (all projects) either gets fixed and/or becomes a seperate project and this can be addressed more easily.

Revision history for this message
Sheel Rana (ranasheel2000) wrote :

Yes, I too think so.
Thanks!!

Revision history for this message
Mitsuhiro Tanino (mitsuhiro-tanino) wrote :

Seems wishlist instead of incomplete which is the status waiting additional information from bug reporter.

Thanks!

Changed in cinder:
importance: Low → Wishlist
status: Incomplete → New
Revision history for this message
Sirisha (sirisha-1) wrote :

Hi Craig,

So you want to throw an error while updating "cinder quota-update --volume-type lvmdriver-1 --volumes 100 xyzabc " if volumes < sum of volume-types

Or correspondingly do you want the volume field to update to sum of volume-types?

for example: initially if this the state
 volumes | 10 |
| volumes_lvmdriver-1 | -1 |
| volumes_sheel_type | -1 |
| volumes_type_private | -1 |

and now when I run "cinder quota-update --volume-type lvmdriver-1 --volumes 100 xyzabc"

should it throw an error as volume is 10 but you are trying to update volume-type-lvm to 100

Or even volume should show 100 (or sum of updated volume-tyes(lvm+sheel+private))
Something like this:
volumes | 100 |
| volumes_lvmdriver-1 | 100 |
| volumes_sheel_type | -1 |
| volumes_type_private | -1 |

Please correct me if I am wrong

Thanks!

Revision history for this message
craig (craig-delatte) wrote :

what I am saying is volumes should always be the sum of the volume-types. so if you have volumes = 10 as your quota, and you have gold = 5 as that quota, and you increase your quota for gold to 15, then volumes should be increased to accommodate that automatically

Revision history for this message
haobing1 (haobing1) wrote :

I think very volume type have the their own quota there are not need the volume quota.

Sirisha (sirisha-1)
Changed in cinder:
assignee: nobody → Sirisha (sirisha-1)
Sirisha (sirisha-1)
Changed in cinder:
assignee: Sirisha (sirisha-1) → nobody
Changed in cinder:
assignee: nobody → Karthik Prabhu Vinod (karthik-prabhu-vinod)
Changed in cinder:
assignee: Karthik Prabhu Vinod (karthik-prabhu-vinod) → nobody
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.