On Sat, 7 Aug 2010, M A Young wrote:
If I try xm list (with xen-4.0.0) I get the following traceback
Unexpected error: <type 'exceptions.AttributeError'>
Please report to xen-devel@xxxxxxxxxxxxxxxxxxx
Traceback (most recent call last):
File "/usr/sbin/xm", line 7, in <module>
main.main(sys.argv)
File "/usr/lib64/python2.7/site-packages/xen/xm/main.py", line 3616, in
main
_, rc = _run_cmd(cmd, cmd_name, args)
File "/usr/lib64/python2.7/site-packages/xen/xm/main.py", line 3640, in
_run_c
md
return True, cmd(args)
File "/usr/lib64/python2.7/site-packages/xen/xm/main.py", line 969, in
xm_list
doms = getDomains(params, state, use_long)
File "/usr/lib64/python2.7/site-packages/xen/xm/main.py", line 933, in
getDoma
ins
return server.xend.domains_with_state(True, state, full)
File "/usr/lib64/python2.7/xmlrpclib.py", line 1224, in __call__
return self.__send(self.__name, args)
File "/usr/lib64/python2.7/site-packages/xen/util/xmlrpcclient.py", line
118,
in __request
response = xmlrpclib.ServerProxy.__request(self, methodname, params)
File "/usr/lib64/python2.7/xmlrpclib.py", line 1570, in __request
verbose=self.__verbose
File "/usr/lib64/python2.7/site-packages/xen/util/xmlrpcclient.py", line
55, i
n request
request_body, verbose)
File "/usr/lib64/python2.7/xmlrpclib.py", line 1264, in request
return self.single_request(host, handler, request_body, verbose)
File "/usr/lib64/python2.7/xmlrpclib.py", line 1294, in single_request
response = h.getresponse(buffering=True)
AttributeError: HTTPUnix instance has no attribute 'getresponse'
I eventually tracked this down to xmlrpc changes in python 2.7 . The patch
below fixes the xm problem, and a xend problem serving xmlrpc. Note that
the first part won't work as written with earlier versions of python,
though the second part is probably safe as disable_nagle_algorithm was
introduced in python 2.7.
Michael Young
--- xen-4.0.1/tools/python/xen/util/xmlrpcclient.py.orig 2010-02-02
20:43:01.000000000 +0000
+++ xen-4.0.1/tools/python/xen/util/xmlrpcclient.py 2010-08-15
22:52:22.000000000 +0100
@@ -54,7 +54,7 @@
return xmlrpclib.Transport.request(self, host, '/RPC2',
request_body, verbose)
def make_connection(self, host):
- return HTTPUnix(self.__handler)
+ return HTTPUnixConnection(self.__handler)
# We need our own transport for HTTPS, because xmlrpclib.SafeTransport is
--- xen-4.0.1/tools/python/xen/util/xmlrpclib2.py.orig 2010-02-02
20:43:01.000000000 +0000
+++ xen-4.0.1/tools/python/xen/util/xmlrpclib2.py 2010-08-17
23:56:26.000000000 +0100
@@ -61,6 +61,7 @@
def __init__(self, hosts_allowed, request, client_address, server):
self.hosts_allowed = hosts_allowed
+ self.disable_nagle_algorithm = False
SimpleXMLRPCRequestHandler.__init__(self, request, client_address,
server)
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|