This is an automatically generated e-mail. To reply, visit: http://reviewboard-openlmi.rhcloud.com/r/1485/

On January 27th, 2014, 5:49 p.m. CET, Jan Safranek wrote:

src/lmi/storage/LMI_StorageConfigurationService.py (Diff revision 1)
def cim_method_createormodifystoragepool(self, env, object_name,
1107
            if pool.type == 'lvmvg':
1108
                if param_inextents:
1109
                    # modify vg
1110
                    self.cim_method_createormodifyvg(env, object_name,
1111
                                                     param_elementname, param_goal,
1112
                                                     param_inextents, param_pool,
1113
                                                     input_arguments, method_name)
1114
                else:
1115
                    # create thinpool
1116
                    self.cim_method_createormodifythinpool(env, object_name,
1117
                                                           param_elementname, param_goal,
1118
                                                           param_thinpool, None,
1119
                                                           param_size)
1120
            if pool.type == 'lvmthinpool':
1121
                if param_inextents:
1122
                    raise pywbem.CIMError(pywbem.CIM_ERR_NOT_SUPPORTED,
1123
                                          "InExtents specified together with Pool .")
1124
                else:
1125
                    # modify thinpool
1126
                    self.cim_method_createormodifythinpool(env, object_name,
1127
                                                           param_elementname, param_goal,
1128
                                                           None, param_thinpool,
1129
                                                           param_size)
I think that goal.ThinProvisionedPoolType is _the_ property that decides, what caller wants to create/modify.

If it is not specified -> default is used (create plain VG).

If it is specified -> check the other options (InExtents, InPool) and throw error if there is unsupported combination (e.g. InExtents with ThinProvisionedPoolType = ThinlyProvisionedLimitlessStoragePool)

On January 28th, 2014, 1:43 p.m. CET, Jan Synacek wrote:

What if the caller wants to create a thin pool without specifying a goal?
I _think_ it's not possible in SMI-S - if you don't specify goal, the default is used. And the default is plain VG.

- Jan


On January 23rd, 2014, 2:25 p.m. CET, Jan Synacek wrote:

Review request for OpenLMI Developers.
By Jan Synacek.

Updated Jan. 23, 2014, 2:25 p.m.

Repository: openlmi-storage

Description

Add support for thin provisioning.

Currently, only creating / deleting thin pools and thin logical volumes
is supported.

Add some basic tests as well.

Diffs

  • mof/LMI_Storage-BlockStorage.mof (c92081c7539df2409649ad42770f8f9c5e396863)
  • mof/LMI_Storage-MethodParameters.mof (cd3cacff1ad2ff12e72d81f1406ca8ed03ccb95b)
  • src/lmi/storage/LMI_LVAllocatedFromStoragePool.py (98d05d28eb1ed377edd85e1a83fc5be03a872a5a)
  • src/lmi/storage/LMI_LVStorageCapabilities.py (95808296456289b3ec7cbfc0a5c81211a573acc6)
  • src/lmi/storage/LMI_LVStorageExtent.py (c4f258121396807f60fe9e269a9f1ad59fd20113)
  • src/lmi/storage/LMI_StorageConfigurationService.py (e0729cfd0c7ca573af8a8f174dafb13b57932b77)
  • src/lmi/storage/LMI_VGStorageCapabilities.py (966e397d1f961c7ebd6cdbf8fa5707a971b05c0a)
  • src/lmi/storage/LMI_VGStoragePool.py (6a88fdfbca502b0b687e5ec4d891e5b2dc74d0f6)
  • test/test_create_vg.py (e650b8123fe178d5a7957d6e8ec898111d63d177)

View Diff