volume manager under reports allocated space
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Cinder |
Fix Released
|
Medium
|
Walt Boring |
Bug Description
When the volume service starts up, the volume manager calls init_host to initialize the service and collect stats from the backend as well as calculate the allocated capacity of volumes that exist in the db already for a host.
The problem is that the volume manager only looks at volumes with a status of 'in-use' and 'available'. This leaves out many valid status values and results in under reporting of actual allocated capacity.
This calculation is only done at service startup time. Once the service is up, the volumes in those 'other' states can change and become valid volumes that occupy storage, that then cinder doesn't account for.
You can see the filtering and calculation here:
https:/
Here is the list of other potential status values that should be used/considered:
attached, error_extending, extending, maintenance, error_deleting, reserved, awaiting_transfer
Changed in cinder: | |
status: | New → Triaged |
tags: | added: allocation manager volume |
Changed in cinder: | |
importance: | Undecided → Medium |
Changed in cinder: | |
assignee: | nobody → Walt Boring (walter-boring) |
This is leading to errors in reporting of the allocated_space_gb turning negative.
At startup a volume could be in reserved, and then later fixed to available.
If that volume is deleted it's size is subtracted from the existing available space, when it wasn't
accounted for, leading to negative allocated space