I am using libvirt and virsh for my application. I am trying to manage snapshots for my infrastructure. All virsh commands are working fine like snapshot-create, delete, list, revert, current.

But when I try to do the same using libvirt, I get out of memory error. Here are the commands that i execute on my host in a python shell...

import libvirt
conn = libvirt.open("qemu:///system")
dom = conn.lookupByName("vmtest")

snap = dom.snapshotCreateXML(None,0);

The error is as follows

libvir: Remote error : out of memory
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.6/dist-packages/libvirt.py", line 669, in snapshotCreateXML
    if ret is None:raise libvirtError('virDomainSnapshotCreateXML() failed', dom=self)
libvirt.libvirtError: out of memory