WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] Many same managed domain

>On Sun, Jul 22, 2007 at 02:09:01PM +0900, Masaki Kanno wrote:
>> Hi,
>> 
>> When I tested xm new command without uuid parameter repeatedly, 
>> I saw many same managed domain as follows. 
>> 
>> # xm list
>> Name                                        ID   Mem VCPUs      State   
>> Time(s)
>> Domain-0                                     0   941     2     r-----    
>>  51.9
>> # xm new /xen/vm1.conf 
>> Using config file "/xen/vm1.conf".
>> # xm new /xen/vm1.conf 
>> Using config file "/xen/vm1.conf".
>> # xm new /xen/vm1.conf 
>> Using config file "/xen/vm1.conf".
>> # xm list
>> Name                                        ID   Mem VCPUs      State   
>> Time(s)
>> Domain-0                                     0   941     2     r-----    
>>  56.3
>> vm1                                              256     1               
>>   0.0
>> vm1                                              256     1               
>>   0.0
>> vm1                                              256     1               
>>   0.0
>> 
>> 
>> But, when I tested xm new command with uuid parameter repeatedly, 
>> I did not see same managed domain as follows. 
>> 
>> # xm list
>> Name                                        ID   Mem VCPUs      State   
>> Time(s)
>> Domain-0                                     0   941     2     r-----    
>>  69.9
>> # xm new /xen/vm1.conf uuid="aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
>> Using config file "/xen/vm1.conf".
>> # xm new /xen/vm1.conf uuid="aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
>> Using config file "/xen/vm1.conf".
>> # xm new /xen/vm1.conf uuid="aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
>> Using config file "/xen/vm1.conf".
>> # xm list
>> Name                                        ID   Mem VCPUs      State   
>> Time(s)
>> Domain-0                                     0   941     2     r-----    
>>  74.4
>> vm1                                              256     1               
>>   0.0
>> 
>> 
>> I think that xm new command should cause a command error if without 
>> uuid parameter.  What do you think?
>
>No that would break backwards compatability for user who rely on Xen 
>autogenerating the UUID. 
>
>In order to maintain back-compatability with existing use cases, the user
>needs to be able to update the existing VM config with 'xm new' if the name
>or UUID match, while preventing multiple VMs with same name. So the the 
>rules 
>when defining a new VM need to follow this logic
>
>  - If the UUID is not specified
>        - If a VM with same name exists
>            => Update the config for that existing VM
>        - Else no vm with same name exists
>            => Define a brand new VM with auto-generated UUID
>  - Else UUID is specified
>        - If a VM with same UUID exists
>              - If name is different
>                    => Error
>              - Else if name is same
>                    => Update the config for that existing VM
>       - Else no VM with same UUID exists
>            => Define a branch new VM with that name

Thanks for your explanation. 
I have a question to your logic.  I think that the logic need a VM 
name check when no VM with same UUID exists.  Am I right?

  - If the UUID is not specified
        - If a VM with same name exists
            => Update the config for that existing VM
        - Else no vm with same name exists
            => Define a brand new VM with auto-generated UUID
  - Else UUID is specified
        - If a VM with same UUID exists
              - If name is different
                    => Error
              - Else if name is same
                    => Update the config for that existing VM
        - Else no VM with same UUID exists
-           => Define a branch new VM with that name
+             - If name is different
+                   => Define a branch new VM with that name
+             - Else if name is same
+                   => Error

Best regards,
 Kan



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel