[ 
https://issues.apache.org/jira/browse/CLOUDSTACK-5806?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15880778#comment-15880778
 ] 

ASF GitHub Bot commented on CLOUDSTACK-5806:
--------------------------------------------

Github user serg38 commented on a diff in the pull request:

    https://github.com/apache/cloudstack/pull/1958#discussion_r102753237
  
    --- Diff: server/src/com/cloud/configuration/ConfigurationManagerImpl.java 
---
    @@ -508,7 +507,7 @@ public String updateConfiguration(final long userId, 
final String name, final St
                         throw new InvalidParameterValueException("unable to 
find storage pool by id " + resourceId);
                     }
                     
if(name.equals(CapacityManager.StorageOverprovisioningFactor.key())) {
    -                    if(pool.getPoolType() != 
StoragePoolType.NetworkFilesystem && pool.getPoolType() != 
StoragePoolType.VMFS) {
    +                    if(pool.getPoolType().supportsOverProvisioning() ) {
    --- End diff --
    
    I believe it should be negated


> Storage types other than NFS/VMFS can't overprovision
> -----------------------------------------------------
>
>                 Key: CLOUDSTACK-5806
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-5806
>             Project: CloudStack
>          Issue Type: Bug
>      Security Level: Public(Anyone can view this level - this is the 
> default.) 
>          Components: Management Server
>    Affects Versions: 4.2.0, 4.3.0, Future
>            Reporter: Marcus Sorensen
>            Assignee: edison su
>            Priority: Critical
>             Fix For: 4.4.0
>
>
> Edison, Mike, or myself can probably fix this. Mgmt server hardcodes storage 
> types that can overprovision. Need to fix this.
> Edison suggests:
> We can move it to storage driver's capabilities method.
> Each storage driver can report its capabilities in DataStoreDriver-> 
> getCapabilities(), which returns a map[String, String], we can change the 
> signature to map[String, Object]
> In CloudStackPrimaryDataStoreDriverImpl(the default storage driver)-> 
> getCapabilities, which can return something like:
> Var comparator = new  storageOverProvision() {
>     Public Boolean isOverProvisionSupported(DataStore store) {
>        Var storagepool = (PrimaryDataStoreInfo)store;
>        If (store.getPoolType() == NFS or VMFS) {
>            Return true;
>       }
>      };
> };
> Var caps = new HashMap[String, Object]();
> Caps.put("storageOverProvision", comparator);
> Return caps;
> }
> Whenever, other places in mgt server want to check the capabilities of 
> overprovision, we can do the following:
> Var primaryStore = DataStoreManager. getPrimaryDataStore(primaryStoreId);
> var caps = primaryStore. getDriver().getCapabilities();
> var overprovision = caps.get("storageOverProvision");
> var result = overprovision. isOverProvisionSupported(primaryStore);



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to