Return-Path: X-Original-To: apmail-cloudstack-dev-archive@www.apache.org Delivered-To: apmail-cloudstack-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 21FE911DF2 for ; Tue, 1 Jul 2014 04:43:32 +0000 (UTC) Received: (qmail 70819 invoked by uid 500); 1 Jul 2014 04:43:31 -0000 Delivered-To: apmail-cloudstack-dev-archive@cloudstack.apache.org Received: (qmail 70779 invoked by uid 500); 1 Jul 2014 04:43:31 -0000 Mailing-List: contact dev-help@cloudstack.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cloudstack.apache.org Delivered-To: mailing list dev@cloudstack.apache.org Received: (qmail 70762 invoked by uid 99); 1 Jul 2014 04:43:31 -0000 Received: from reviews-vm.apache.org (HELO reviews.apache.org) (140.211.11.40) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jul 2014 04:43:31 +0000 Received: from reviews.apache.org (localhost [127.0.0.1]) by reviews.apache.org (Postfix) with ESMTP id 3403D1DB4A1; Tue, 1 Jul 2014 04:43:20 +0000 (UTC) Content-Type: multipart/alternative; boundary="===============2001241531825313622==" MIME-Version: 1.0 Subject: Re: Review Request 19446: CLOUDSTACK-6191: Volume provisioning type option From: "Mike Tutkowski" To: "Marcus Sorensen" , "Wido den Hollander" , "Mike Tutkowski" Cc: "Yoshikazu Nojima" , "cloudstack" Date: Tue, 01 Jul 2014 04:43:20 -0000 Message-ID: <20140701044320.5196.75781@reviews.apache.org> X-ReviewBoard-URL: https://reviews.apache.org Auto-Submitted: auto-generated Sender: "Mike Tutkowski" X-ReviewGroup: cloudstack X-ReviewRequest-URL: https://reviews.apache.org/r/19446/ X-Sender: "Mike Tutkowski" References: <20140409225808.20524.37412@reviews.apache.org> In-Reply-To: <20140409225808.20524.37412@reviews.apache.org> Reply-To: "Mike Tutkowski" X-ReviewRequest-Repository: cloudstack-git --===============2001241531825313622== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/19446/#review47037 ----------------------------------------------------------- It looks like we're missing two columns in volume_view: + vm_template.name template_name, + vm_template.display_text template_display_text, I noticed this in the GUI when you go to the Storage tab to view the volumes (you get an error). I plan to check in a fix soon. - Mike Tutkowski On April 9, 2014, 4:58 p.m., Yoshikazu Nojima wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/19446/ > ----------------------------------------------------------- > > (Updated April 9, 2014, 4:58 p.m.) > > > Review request for cloudstack, Mike Tutkowski, Marcus Sorensen, and Wido den Hollander. > > > Bugs: CLOUDSTACK-6191 > https://issues.apache.org/jira/browse/CLOUDSTACK-6191 > > > Repository: cloudstack-git > > > Description > ------- > > purpose: > Thin provisioning of a volume saves consumption of a storage, and fat provisioning minimizes IOPS performance overhead. > This feature adds a disk offering parameter to provide users an option to select how to provision volumes. > Especially, qcow2 format is known that its performance can be improved by deploying a volume as a sparse file.[1] This feature also supports sparse provisioning. > > http://itscblog.tamu.edu/improve-disk-io-performance-in-kvm/#.232---preallocation > > Scope: > First, start with KVM+NFS installation. > Leave rooms to support other hypervisors. > > For more details please refer fs: https://cwiki.apache.org/confluence/display/CLOUDSTACK/Volume+provisioning+type+option > > > Diffs > ----- > > api/src/com/cloud/offering/DiskOffering.java 4641b9a > api/src/com/cloud/storage/Storage.java 8ab2463 > api/src/com/cloud/storage/Volume.java 304dbcf > api/src/com/cloud/vm/DiskProfile.java 5fdacf2 > api/src/org/apache/cloudstack/api/ApiConstants.java c7d6da1 > api/src/org/apache/cloudstack/api/command/admin/offering/CreateDiskOfferingCmd.java 67c9792 > api/src/org/apache/cloudstack/api/command/admin/offering/CreateServiceOfferingCmd.java 6cd5d84 > api/src/org/apache/cloudstack/api/response/DiskOfferingResponse.java 91bd441 > api/src/org/apache/cloudstack/api/response/ServiceOfferingResponse.java 764ade5 > api/src/org/apache/cloudstack/api/response/VolumeResponse.java 45c15da > client/WEB-INF/classes/resources/messages.properties 8abe874 > core/src/org/apache/cloudstack/storage/to/VolumeObjectTO.java 11a3324 > engine/orchestration/src/org/apache/cloudstack/engine/orchestration/VolumeOrchestrator.java c5e0983 > engine/orchestration/test/com/cloud/vm/VirtualMachineManagerImplTest.java 49b2fc5 > engine/schema/src/com/cloud/service/ServiceOfferingVO.java 3be0aaa > engine/schema/src/com/cloud/storage/DiskOfferingVO.java 99214b2 > engine/schema/src/com/cloud/storage/VolumeVO.java 9f27c23 > engine/storage/volume/src/org/apache/cloudstack/storage/volume/VolumeObject.java 385f8e6 > plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java beb5e10 > plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtStorageVolumeDef.java 35777cf > plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/IscsiAdmStorageAdaptor.java 761bb37 > plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/IscsiAdmStoragePool.java 2cecfa3 > plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/KVMStoragePool.java ca3d32f > plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/KVMStoragePoolManager.java 583d48a > plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/KVMStorageProcessor.java 604bdae > plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/LibvirtStorageAdaptor.java 61d90e9 > plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/LibvirtStoragePool.java 605d154 > plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/StorageAdaptor.java c751aab > plugins/hypervisors/kvm/src/org/apache/cloudstack/utils/qemu/QemuImg.java 4bec375 > plugins/hypervisors/kvm/test/org/apache/cloudstack/utils/qemu/QemuImgTest.java 8bdff4d > plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java 2a7bcac > plugins/network-elements/internal-loadbalancer/src/org/apache/cloudstack/network/lb/InternalLoadBalancerVMManagerImpl.java 89707c9 > plugins/network-elements/internal-loadbalancer/test/org/apache/cloudstack/internallbvmmgr/InternalLBVMManagerTest.java f418586 > plugins/network-elements/internal-loadbalancer/test/org/apache/cloudstack/internallbvmmgr/InternalLBVMServiceTest.java 62ca09b > server/src/com/cloud/api/query/dao/DiskOfferingJoinDaoImpl.java bf28c03 > server/src/com/cloud/api/query/dao/ServiceOfferingJoinDaoImpl.java 7fcc5c6 > server/src/com/cloud/api/query/dao/VolumeJoinDaoImpl.java 8a0431b > server/src/com/cloud/api/query/vo/DiskOfferingJoinVO.java e3e0a9e > server/src/com/cloud/api/query/vo/ServiceOfferingJoinVO.java dbeb530 > server/src/com/cloud/api/query/vo/VolumeJoinVO.java 8165d68 > server/src/com/cloud/configuration/ConfigurationManagerImpl.java 30afd7b > server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java 0512096 > server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java 3cd3e80 > server/src/com/cloud/server/ConfigurationServerImpl.java 13135b0 > server/src/com/cloud/storage/VolumeApiServiceImpl.java c0741c5 > server/src/com/cloud/test/DatabaseConfig.java 8d7b42a > server/test/com/cloud/storage/VolumeApiServiceImplTest.java 0be6f3a > server/test/com/cloud/vm/DeploymentPlanningManagerImplTest.java fb63766 > server/test/com/cloud/vm/UserVmManagerTest.java 927d5e3 > server/test/org/apache/cloudstack/service/ServiceOfferingVOTest.java a3f8afb > services/secondary-storage/controller/src/org/apache/cloudstack/secondarystorage/SecondaryStorageManagerImpl.java f8edefa > setup/db/db/schema-440to450.sql 2bd5386 > test/integration/smoke/test_deploy_vm_provisioningtype_sparse.py PRE-CREATION > test/integration/smoke/test_disk_offerings.py 4c8a34c > test/integration/smoke/test_volumes.py 411ecf1 > ui/dictionary.jsp ebe71b6 > ui/scripts/configuration.js ba6bdce > ui/scripts/docs.js df4bcf0 > ui/scripts/storage.js e69a07e > > Diff: https://reviews.apache.org/r/19446/diff/ > > > Testing > ------- > > Compute offering creation > - create a compute offering with "provisioningtype="thin" > - create a compute offering with "provisioningtype="sparse" > - create a compute offering with "provisioningtype="fat" > Disk offering creation > - create a disk offering with "provisioningtype=thin" > - create a disk offering with "provisioningtype=sparse" > - create a disk offering with "provisioningtype=fat" > New VM deployment > - deploy a VM with a "thin" type compute offering, and check the root volume is provisioned as s thin disk > - deploy a VM with a "sparse" type compute offering, and check the root volume is provisioned as s sparse disk > - deploy a VM with a "fat" type compute offering, and check the root volume is provisioned as s fat disk > New data disk creation and attachment > - create and attach "thin" type volume to a VM, and check the data volume is provisioned as s thin disk > - create and attach "sparse" type volume to a VM, and check the data volume is provisioned as s sparse disk > - create and attach "fat" type volume to a VM, and check the data volume is provisioned as s fat disk > > > Thanks, > > Yoshikazu Nojima > > --===============2001241531825313622==--