Currently in the capacity filter and weigher of the scheduler,
we use the logic to evaluate whether there is enough capacity
to thin provision a share on a backend if the driver reports
thin_provisioning to be True. However, a driver may be able to
support both thin and thick provisioning. The logic does not
check whether the user wants the share to be provisioned as thin
or not.
In this patch, we check 'thin_provisioning' in extra specs of the
share type and decide whether to use the logic for thin or thick.
In the following two cases, we will use the thin logic:
1) 'thin_provisioning' is not set in extra specs. This is to
provide backward compatibility.
2) 'thin_provisioning' is set in extra specs and it is
'<is> True' or 'True'.
To provision a thick share on a backend that supports both
thin and thick, set one of the following in extra specs: {'thin_provisioning': 'False'} {'thin_provisioning': '<is> False'} {'capabilities:thin_provisioning': 'False'} {'capabilities:thin_provisioning': '<is> False'}
Reviewed: https:/ /review. openstack. org/315266 /git.openstack. org/cgit/ openstack/ manila/ commit/ ?id=83c93c77670 7d5da9c89cde81c 03022178127261
Committed: https:/
Submitter: Jenkins
Branch: master
commit 83c93c776707d5d a9c89cde81c0302 2178127261
Author: xing-yang <email address hidden>
Date: Wed May 11 15:23:31 2016 -0400
Check 'thin_provisioning' in extra specs
Currently in the capacity filter and weigher of the scheduler, provisioning to be True. However, a driver may be able to
we use the logic to evaluate whether there is enough capacity
to thin provision a share on a backend if the driver reports
thin_
support both thin and thick provisioning. The logic does not
check whether the user wants the share to be provisioned as thin
or not.
In this patch, we check 'thin_provisioning' in extra specs of the
share type and decide whether to use the logic for thin or thick.
In the following two cases, we will use the thin logic:
1) 'thin_provisioning' is not set in extra specs. This is to
provide backward compatibility.
2) 'thin_provisioning' is set in extra specs and it is
'<is> True' or 'True'.
To provision a thick share on a backend that supports both
{'thin_ provisioning' : 'False'}
{'thin_ provisioning' : '<is> False'}
{'capabilities :thin_provision ing': 'False'}
{'capabilities :thin_provision ing': '<is> False'}
thin and thick, set one of the following in extra specs:
DocImpact 5c356c5ed2e31b8 f68462b3769
Change-Id: I238a7962425ea3
Closes-Bug: #1578718