Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1089393

Summary: vdsm returns a value of "None" for systemFamily
Product: [Retired] oVirt Reporter: Andrew Kiebach <andrew.kiebach>
Component: vdsmAssignee: Dima Kuznetsov <dkuznets>
Status: CLOSED CURRENTRELEASE QA Contact: Gil Klein <gklein>
Severity: high Docs Contact:
Priority: unspecified    
Version: 4.0CC: acathrow, bazulay, bugs, dkuznets, gklein, iheim, mgoldboi, oourfali, yeylon
Target Milestone: ---   
Target Release: 3.4.3   
Hardware: x86_64   
OS: Linux   
Whiteboard: infra
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-07-18 09:32:11 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1114269    

Description Andrew Kiebach 2014-04-18 16:47:44 UTC
Description of problem:
vdsm returns a value of "None" for "systemFamily", which cannot be marshaled over standard xmlrpc. This in turn causes hosted-engine --deploy to fail on clean install of CentOS 6.5 and oVirt 3.4. Additionally, this error prevents such a machine from joining an existing oVirt 3.4 cluster. The error there is "Could not get hardware information for host".

Version-Release number of selected component (if applicable):
Package:       vdsm.x86_64
Release:       4.14.6-0.el6
Source:        ovirt-3.4-stable

How reproducible:
100% reproducible

Steps to Reproduce:
1. Install CentOS x86_64 6.5
2. sudo yum localinstall -y http://ovirt.org/releases/ovirt-release.noarch.rpm
3. sudo yum localinstall -y http://ftp.osuosl.org/pub/fedora-epel/6/i386/epel-release-6-8.noarch.rpm
4. sudo yum install -y ovirt-hosted-engine-setup screen
5. hosted-engine --deploy

Actual results:
hosted-engine terminates with the error:
type 'exceptions.TypeError'>:cannot marshal None unless allow_none is enabled"

Expected results:
hosted-engine configuration to begin.

Additional info:

[root@ovirt-host ~]# tail -2 /var/log/vdsm/vdsm.log
Thread-17::DEBUG::2014-04-18 12:06:05,642::BindingXMLRPC::1067::vds::(wrapper) client [127.0.0.1]::call getHardwareInfo with () {}
Thread-17::DEBUG::2014-04-18 12:06:05,660::BindingXMLRPC::1074::vds::(wrapper) return getHardwareInfo with {'status': {'message': 'Done', 'code': 0}, 'info': {'systemProductName': 'PowerEdge SC440', 'systemSerialNumber': '6KZ6LH1', 'systemFamily': None, 'systemVersion': 'Not Specified', 'systemUUID': '44454c4c-4b00-105a-8036-b6c04f4c4831', 'systemManufacturer': 'Dell Inc.'}}

[root@ovirt-host ~]# hosted-engine --deploy
[ INFO  ] Stage: Initializing
          Continuing will configure this host for serving as hypervisor and create a VM where you have to install oVirt Engine afterwards.
          Are you sure you want to continue? (Yes, No)[Yes]:
[ INFO  ] Generating a temporary VNC password.
[ INFO  ] Stage: Environment setup
          Configuration files: []
          Log file: /var/log/ovirt-hosted-engine-setup/ovirt-hosted-engine-setup-20140418120557.log
          Version: otopi-1.2.0 (otopi-1.2.0-1.el6)
[ INFO  ] Hardware supports virtualization
[ INFO  ] Bridge ovirtmgmt already created
[ INFO  ] Stage: Environment packages setup
[ INFO  ] Stage: Programs detection
[ INFO  ] Stage: Environment setup
[ ERROR ] Failed to execute stage 'Environment setup': <Fault 1: "<type 'exceptions.TypeError'>:cannot marshal None unless allow_none is enabled">
[ INFO  ] Stage: Clean up
[ INFO  ] Stage: Pre-termination
[ INFO  ] Stage: Termination

[root@ovirt-host ~]# vdsClient -s localhost getVdsHardwareInfo
Traceback (most recent call last):
  File "/usr/share/vdsm/vdsClient.py", line 2578, in <module>
    code, message = commands[command][0](commandArgs)
  File "/usr/share/vdsm/vdsClient.py", line 429, in do_getHardware
    return self.ExecAndExit(self.s.getVdsHardwareInfo())
  File "/usr/lib64/python2.6/xmlrpclib.py", line 1199, in __call__
    return self.__send(self.__name, args)
  File "/usr/lib64/python2.6/xmlrpclib.py", line 1489, in __request
    verbose=self.__verbose
  File "/usr/lib64/python2.6/xmlrpclib.py", line 1253, in request
    return self._parse_response(h.getfile(), sock)
  File "/usr/lib64/python2.6/xmlrpclib.py", line 1392, in _parse_response
    return u.close()
  File "/usr/lib64/python2.6/xmlrpclib.py", line 838, in close
    raise Fault(**self._stack[0])
Fault: <Fault 1: "<type 'exceptions.TypeError'>:cannot marshal None unless allow_none is enabled">

Comment 1 Yaniv Bronhaim 2014-04-22 10:28:08 UTC
I'm having troubles to reproduce it and check my patch. on my environment I get "Family: Not Specified", never saw that the value was not there. let me know if you can share your setup and I'll take a look

Comment 2 Sandro Bonazzola 2014-06-11 07:04:44 UTC
This is an automated message:
oVirt 3.4.2 has been released.
This bug has been re-targeted from 3.4.2 to 3.4.3 since priority or severity were high or urgent.

Comment 3 Sandro Bonazzola 2014-06-11 07:05:21 UTC
This is an automated message:
oVirt 3.4.2 has been released.
This bug has been re-targeted from 3.4.2 to 3.4.3 since priority or severity were high or urgent.

Comment 4 Sandro Bonazzola 2014-07-18 09:32:11 UTC
This is an automated message

oVirt 3.4.3 has been released:
 * should fix your issue
 * should be available at your local mirror within two days.

If problems still persist, please make note of it in this bug report.