Package: python-libvirt
Version: 1.2.1-2~bpo70+1
Severity: normal

Dear Maintainer,

Python-libvirt package in wheezy-backports have a serious bug
that set-APIs just like virDomainSetBlkioParameters can not take
function. I believe this is caused by a bug which is fixed in
soucecode from libvirt community of version 1.2.4.

The fix patch seems to be "setPyVirTypedParameter: Copy full
field name"(commitid: 412c93a7b9111ad15c543e286f23bb5891749c42)
in libvirt git repository(git://libvirt.org/libvirt-python.git)

The steps to reporduce this bug are as following:
1) start a kvm vm
2) use ipython to call setBlkioParameters function as following:

root@libvirt-test-gq:~# ipython
Python 2.7.3 (default, Mar 13 2014, 11:03:55)
Type "copyright", "credits" or "license" for more information.

IPython 0.13.1 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details.

In [1]: import libvirt

In [2]: conn = libvirt.open()

In [3]: doms = conn.listAllDomains()

In [4]: doms
Out[4]: [<libvirt.virDomain at 0x26cb6d0>]

In [5]: dom = doms[0]

In [6]: dom.blkioParameters()
Out[6]:
{'device_read_bytes_sec': '',
'device_read_iops_sec': '',
'device_weight': '',
'device_write_bytes_sec': '',
'device_write_iops_sec': '',
'weight': 500}

In [7]: params = {'weight': 250}

In [8]: dom.setBlkioParameters(params, 0)
libvirt: error : argument unsupported: parameter '' not supported
---------------------------------------------------------------------------
libvirtError Traceback (most recent call last)
<ipython-input-8-d746a68b6973> in <module>()
----> 1 dom.setBlkioParameters(params, 0)

/usr/lib/python2.7/dist-packages/libvirt.pyc in setBlkioParameters(self,
params, flags)
1961 """Change the blkio tunables """
1962 ret = libvirtmod.virDomainSetBlkioParameters(self._o, params, flags)
-> 1963 if ret == -1: raise libvirtError ('virDomainSetBlkioParameters()
failed', dom=self)
1964 return ret
1965

libvirtError: argument unsupported: parameter '' not supported


Then I compiled and installed the python-libvirt from sourcecode
of 1.2.4 version and do the same operations as above,
it returned the right answer now:
root@libvirt-test-gq:~/github/libvirt-python# ipython
Python 2.7.3 (default, Mar 13 2014, 11:03:55)
Type "copyright", "credits" or "license" for more information.

IPython 0.13.1 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details.

In [1]: import libvirt

In [2]: conn = libvirt.open()

In [3]: dom = conn.listAllDomains()[0]

In [4]: params = {'weight': 250}

In [5]: dom.setBlkioParameters(params, 0)
Out[5]: 0

In [6]: dom.blkioParameters(0)
Out[6]:
{'device_read_bytes_sec': '',
'device_read_iops_sec': '',
'device_weight': '',
'device_write_bytes_sec': '',
'device_write_iops_sec': '',
'weight': 250}

Besides the virDomainSetBlkioParameters function, I believe many set-APIs
have the same problem in version 1.2.1. Can maintainer think about
to package a new version of python-libvirt, or backport the fix patch?

-- System Information:
Debian Release: 7.4
APT prefers stable
APT policy: (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 3.10.40-openstack-amd64 (SMP w/1 CPU core)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages python-libvirt depends on:
ii libc6 2.17-97
ii libvirt0 1.2.4-1~bpo70+1
ii python 2.7.3-4+deb7u1

Versions of packages python-libvirt recommends:
ii libvirt-bin 1.2.4-1~bpo70+1

python-libvirt suggests no packages.

-- no debconf information


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to