[libvirt] [BUG?] "no domain with matching uuid" error, when vm restarts

Daniel P. Berrange berrange at redhat.com
Wed Jan 13 10:39:08 UTC 2010

On Tue, Jan 12, 2010 at 04:06:32PM -0800, su disheng wrote:
> Hi,
>     In the following libvirt API calling sequence, I always get an error "no
> domain with matching uuid"
>         Connect _conn = new Connect("qemu:///system", false);
>          _conn.domainDefineXML(kvm_guest_xml);
>          Domain dm = _conn.domainLookupByName(kvm_guest_name);
>          dm.create();
>          /* stop, undefine, and re-start the vm*/
>          dm.shutdown();
>          dm.undefine();
>          dm.domainDefineXML(kvm_guest_xml);
>          /****A****/
>          Domain dm = _conn.domainLookupByName(kvm_guest_name);
>          dm.create()  /********Error!!!!**/
>        if I close the connection, and re-connect qemu at the end of
> /****A****/, then everything is OK.

I think the first 'dm'  object you create is not being freed / garbage
collected. This means the underlying libvirt virDomainPtr object is
not released. And so when you then _conn.domainLookupByName() after
'****A****'  you are still getting an handle to the old object and
thus the stale UUID.

>        From the log, seems that uuid is not updated immediately, for this
> connection, the uuid is in the stale state?
>        I am using libvirt 0.6.3, if it's a bug, does it fixed in the latest
> code? or Have I need to close the connection for each vm shutdown/re-define?

You should not need to close the connection, provided you ensure all the
'Domain' objects are freed/garbage collected

Alternatively, if you wish to re-use the same name,then you could try
auto-generating the  UUID yourself, so you use the same UUID when
defining the domain for the second time

|: Red Hat, Engineering, London   -o-   http://people.redhat.com/berrange/ :|
|: http://libvirt.org  -o-  http://virt-manager.org  -o-  http://ovirt.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505  -o-  F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|

More information about the libvir-list mailing list