Hi
repo: cinder
patch commit id: 2db603a70885823413440c627cace7e3662d0a14
patch title: Pike Rebase: LVM thin provisioning allocation checks
I’m working on upstream this patch, but I cannot reproduce the issue. It was originally submitted in year 2016. Is it still needed?
If so, could you please provide some info to reproduce this issue?
If not, I will abandon this patch.
My experiment on this patch:
-
When I try to create snapshot, the over allocation will be captured by cinder-scheduler. The over allocation will not happen.
See:
cinder snapshot-create 8e9dba20-2c10-4334-ac51-a1c99421ddbb --name snap3 --description desc3
stack@ceph01liang:~/cinder$ cinder snapshot-list
+--------------------------------------+--------------------------------------+-----------+-------+------+----------------------------------+
| ID | Volume ID | Status | Name | Size | User ID |
+--------------------------------------+--------------------------------------+-----------+-------+------+----------------------------------+
| 6bf19443-9964-48a7-8094-b3345e7f5434 | 8e9dba20-2c10-4334-ac51-a1c99421ddbb | error | snap3 | 10 | 5255f4922a4340b482b11bbbe7083ee4 |
| 887f8584-21e0-41fe-9d08-0c53d642544b | 4bfb4724-b546-4fe9-ba89-6a1f938bd4d1 | available | snap1 | 1 | 5255f4922a4340b482b11bbbe7083ee4 |
| 8dc12252-2680-4089-b134-7280f037784f | 8e9dba20-2c10-4334-ac51-a1c99421ddbb | error | snap3 | 10 | 5255f4922a4340b482b11bbbe7083ee4 |
| fd61ff3c-4f58-4fc3-a5bd-219eb9b034a6 | 4bfb4724-b546-4fe9-ba89-6a1f938bd4d1 | available | snap2 | 1 | 5255f4922a4340b482b11bbbe7083ee4 |
+--------------------------------------+--------------------------------------+-----------+-------+------+----------------------------------+
stack@ceph01liang:~/cinder$ cinder list
+--------------------------------------+-----------+------+------+-------------+----------+--------------------------------------+
| ID | Status | Name | Size | Volume Type | Bootable | Attached to |
+--------------------------------------+-----------+------+------+-------------+----------+--------------------------------------+
| 25959746-7655-4cf4-a959-6ce8a80eb6fc | in-use | | 1 | lvmdriver-1 | true | 4d963313-4ffc-47fc-a075-6c72082ed121 |
| 4bfb4724-b546-4fe9-ba89-6a1f938bd4d1 | available | vol1 | 1 | lvmdriver-1 | true | |
| 8e9dba20-2c10-4334-ac51-a1c99421ddbb | available | vol3 | 10 | lvmdriver-1 | true | |
| de55aad2-8424-4f2b-a769-0da85daa1889 | available | vol2 | 2 | lvmdriver-1 | true | |
+--------------------------------------+-----------+------+------+-------------+----------+--------------------------------------+
(Pdb) pp backends
[host 'ceph01liang@lvmdriver-1#lvmdriver-1':free_capacity_gb: 22.76, total_capacity_gb: 22.8,allocated_capacity_gb: 15, max_over_subscription_ratio: 1.0,reserved_percentage: 0, provisioned_capacity_gb: 17.0,thin_provisioning_support:
True, thick_provisioning_support: False,pools: None,updated at: 2018-11-01 08:54:58.143006]
-
When I try to create a volume from a volume (a snapshot will be created during this op), what called is create_lv_snapshot, not create_snapshot. So the check in create_snapshot will not be called.
Thanks
Liang