David and Edison,

I plan to review the branch, but due to a personal emergency, I won't have a my 
feedback until COB, Monday.

Thanks,
-John

On May 17, 2013, at 8:19 AM, David Nalley <da...@gnsa.us> wrote:

> On Fri, May 17, 2013 at 4:11 AM, Edison Su <edison...@citrix.com> wrote:
>> Hi all,
>>     Min and I worked on object_store branch during the last one and half 
>> month. We made a lot of refactor on the storage code, mostly related to 
>> secondary storage, but also on the general storage framework. The following 
>> goals are made:
>> 
>> 1.       An unified storage framework. Both secondary storages(nfs/s3/swift 
>> etc) and primary storages will share the same plugin model, the same 
>> interface. Add any other new storages into cloudstack will much easier and 
>> straightforward.
>> 
>> 2.       The storage interface  between mgt server and resource is unified, 
>> currently there are only 5 commands send out by mgt server: 
>> copycommand/createobjectcommand/deletecommand/attachcommand/dettachcommand, 
>> and each storage vendor can decode/encode all the 
>> entities(volume/snapshot/storage pool/ template etc) by its own.
>> 
>> 3.       NFS secondary storage is not explicitly depended on by other 
>> components. For example, when registering template into S3, template will be 
>> write into S3 directly, instead of storing into nfs secondary storage, then 
>> push to S3. If s3 is used as secondary storage, then nfs storage will be 
>> used as cache storage, but from other components point of view, cache 
>> storage is invisible. So, it's possible to make nfs storage as optional if 
>> s3 is used for certain hypervisors.
>> The detailed FS is at 
>> https://cwiki.apache.org/confluence/display/CLOUDSTACK/Storage+Backup+Object+Store+Plugin+Framework
>> The test we did:
>> 
>> 1.       We modified marvin to use new storage api
>> 
>> 2.       Test_volume and test_vm_life_cycle, test_template under smoke test 
>> folder are executed against xenserver/kvm/vmware and devcloud, some of them 
>> are failed, it's partly due to bugs introduced by our code, partly master 
>> branch itself has issue(e.g. resizevolume doesn't work). We want to fix 
>> these issues after merging into master.
>> 
>> The basic follow does work: create user vm, attach/detach volume, register 
>> template, create template from volume/snapshot, take snapshot, create volume 
>> from snapshot.
>>  It's a huge change, around 60k LOC patch, to review the code, you can try: 
>> git diff master..object_store, will show all the diff.
>>  Comments/feedback are welcome. Thanks.
>> 
>> 
> 
> 
> Given the amount of change, can we get at least a BVT run against your
> branch done before merge?
> 
> --David

Reply via email to