[libvirt] virGetLastError() disagrees with virConnGetLastError()

Daniel P. Berrange berrange at redhat.com
Tue Feb 3 11:14:24 UTC 2009


On Mon, Feb 02, 2009 at 03:10:23PM -0500, John Levon wrote:
> 
> If you edit virsh sources, you should find that on 'virsh dump Domain-0
> /var/tmp/foo', the conn error is correctly set, but the thread-load
> error is not set. Isn't this a bug?

I can't reproduce this problem with current CVS.

I made the following change to the 'dump' method in virsh.c

diff -u -p -u -r1.189 virsh.c
--- virsh.c	30 Jan 2009 15:43:05 -0000	1.189
+++ virsh.c	3 Feb 2009 11:12:13 -0000
@@ -1340,6 +1340,15 @@ cmdDump(vshControl *ctl, const vshCmd *c
         ret = FALSE;
     }
 
+    virErrorPtr err1 = virGetLastError();
+    virErrorPtr err2 = virConnGetLastError(ctl->conn);
+
+    fprintf(stderr, "%p %p\n", err1, err2);
+    if (err1)
+        fprintf(stderr, "%d %s\n", err1->code, err1->message);
+    if (err2)
+        fprintf(stderr, "%d %s\n", err2->code, err2->message);
+
     virDomainFree(dom);
     return ret;
 }



And when I run it, i see:

# ./virsh dump Domain-0 foo
libvir: Xen Daemon error : POST operation failed: xend_post: error from xen daemon: (xend.err 'Cannot dump core for privileged domain 0')
error: Failed to core dump domain Domain-0 to foo
0xa5c9450 0xa5c9248
11 POST operation failed: xend_post: error from xen daemon: (xend.err 'Cannot dump core for privileged domain 0')
11 POST operation failed: xend_post: error from xen daemon: (xend.err 'Cannot dump core for privileged domain 0')


So, AFAICT, both the global and per-connection error object are correctly
set.  Was that change I made to virsh.c the same thing you were testing ?

Regards,
Daniel
-- 
|: 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