[Spacewalk-list] rhnreg_ks failure with Python 3 on Fedora 23

Brian Buesker bbuesker at qti.qualcomm.com
Fri Jan 29 20:57:45 UTC 2016


I know Fedora 23 is not officially supported in Spacewalk 2.4, but I
wanted to provide another piece of feedback in my efforts to try to use
the client nightlies for Fedora 23 against a Spacewalk 2.4 server. I am
currently seeing an Internal Server Error when attempting to register
one of my machines (using rhnreg_ks). On the client side, the stack
trace was as follows:

[Wed Jan 27 08:40:37 2016] up2date A protocol error occurred: Internal
Server Error , attempt #1,
[Wed Jan 27 08:40:37 2016] up2date
Traceback (most recent call last):
  File "/sbin/rhnreg_ks", line 217, in <module>
    cli.run()
  File "/usr/share/rhn/up2date_client/rhncli.py", line 96, in run
    sys.exit(self.main() or 0)
  File "/sbin/rhnreg_ks", line 149, in main
    rhnreg.sendHardware(systemId, hardwareList)
  File "/usr/share/rhn/up2date_client/rhnreg.py", line 481, in sendHardware
    s.registration.add_hw_profile(systemId,
_encode_characters(hardwareList))
  File "/usr/share/rhn/up2date_client/rhnserver.py", line 67, in __call__
    return rpcServer.doCall(method, *args, **kwargs)
  File "/usr/share/rhn/up2date_client/rpcServer.py", line 290, in doCall
    raise_with_tb(up2dateErrors.CommunicationError(e.errmsg))
  File "/usr/lib/python3.4/site-packages/rhn/tb.py", line 25, in
raise_with_tb
    raise e
<class 'up2date_client.up2dateErrors.CommunicationError'>: rhn-plugin:
Error communicating with server. The message was:
Internal Server Error

I looked at the server side and have included its error_log below. What
I believe is happening rhnreg_ks is being run within /usr/bin/python3.
However, as far as I've been able to tell, there is no ethtool package
for python 3 available. I think this causes
up2date_client.hardware.read_network_interfaces() to not return any
NETINTERFACES. I haven't traced through all of the server code, but I'm
suspecting it is this lack of data that is causing an ISE.

While I can work around this by forcing rhnreg_ks to be run with
/usr/bin/python (the 2.7.x version), is there a plan to either get the
ethtool Python package ported to Python 3 or use something different in
the hardware module to resolve the network interfaces prior to the
Spacewalk 2.5 release?

Thanks,
Brian

Server log (parts redacted)
[Wed Jan 27 17:54:56 2016] [error] Spacewalk 369 2016/01/27 17:54:56
-07:00: ('Unhandled exception', UnboundLocalError("local variable
'primif' referenced before assignment",))
[Wed Jan 27 17:54:56 2016] [error] Exception reported from <redacted>
[Wed Jan 27 17:54:56 2016] [error] Time: Wed Jan 27 17:54:56 2016
[Wed Jan 27 17:54:56 2016] [error] Exception type <type
'exceptions.UnboundLocalError'>
[Wed Jan 27 17:54:56 2016] [error] Exception while handling function
registration.add_hw_profile
[Wed Jan 27 17:54:56 2016] [error] Request object information:
[Wed Jan 27 17:54:56 2016] [error] URI: /XMLRPC
[Wed Jan 27 17:54:56 2016] [error] Remote Host: <redacted>
[Wed Jan 27 17:54:56 2016] [error] Server Name: <redacted>
[Wed Jan 27 17:54:56 2016] [error] Headers passed in:
[Wed Jan 27 17:54:56 2016] [error] \tAccept-Encoding: identity
[Wed Jan 27 17:54:56 2016] [error] \tCONTENT_LENGTH: 30865
[Wed Jan 27 17:54:56 2016] [error] \tCONTENT_TYPE: text/xml
[Wed Jan 27 17:54:56 2016] [error] \tDOCUMENT_ROOT: /var/www/html
[Wed Jan 27 17:54:56 2016] [error] \tGATEWAY_INTERFACE: CGI/1.1
[Wed Jan 27 17:54:56 2016] [error] \tHTTPS: 1
[Wed Jan 27 17:54:56 2016] [error] \tHTTP_ACCEPT_ENCODING: identity
[Wed Jan 27 17:54:56 2016] [error] \tHTTP_HOST: <redacted>
[Wed Jan 27 17:54:56 2016] [error] \tHTTP_USER_AGENT:
rhn.rpclib.py/2.5.822.5.82-1.fc231.fc23
[Wed Jan 27 17:54:56 2016] [error] \tHTTP_X_CLIENT_VERSION: 1
[Wed Jan 27 17:54:56 2016] [error] \tHTTP_X_INFO: RPC Processor (C) Red
Hat, Inc (version 2.5.822.5.82-1.fc231.fc23)
[Wed Jan 27 17:54:56 2016] [error] \tHTTP_X_RHN_CLIENT_CAPABILITY:
packages.rollBack(1)=1,configfiles.diff(1)=1,caneatCheese(1)=1,packages.update(2)=2,kickstart_guest.initiate(1)=1,script.run(1)=1,configfiles.mtime_upload(1)=1,packages.verify(1)=1,kickstart.initiate(1)=1,packages.runTransaction(1)=1,configfiles.upload(1)=1,reboot.reboot(1)=1,packages.extended_profile(2)=1,configfiles.deploy(1)=1,configfiles.base64_enc(1)=1
[Wed Jan 27 17:54:56 2016] [error] \tHTTP_X_RHN_TRANSPORT_CAPABILITY:
follow-redirects=3
[Wed Jan 27 17:54:56 2016] [error] \tHTTP_X_TRANSPORT_INFO: Extended
Capabilities Transport (C) Red Hat, Inc (version 2.5.822.5.82-1.fc231.fc23)
[Wed Jan 27 17:54:56 2016] [error] \tHTTP_X_UP2DATE_VERSION:
2.5.9-1.moab.fc23
[Wed Jan 27 17:54:56 2016] [error] \tHost: <redacted>
[Wed Jan 27 17:54:56 2016] [error] \tPATH_INFO:
[Wed Jan 27 17:54:56 2016] [error] \tQUERY_STRING:
[Wed Jan 27 17:54:56 2016] [error] \tREMOTE_ADDR: <redacted>
[Wed Jan 27 17:54:56 2016] [error] \tREMOTE_PORT: 51334
[Wed Jan 27 17:54:56 2016] [error] \tREQUEST_METHOD: POST
[Wed Jan 27 17:54:56 2016] [error] \tREQUEST_URI: /XMLRPC
[Wed Jan 27 17:54:56 2016] [error] \tSCRIPT_FILENAME:
/usr/share/rhn/wsgi/xmlrpc.py
[Wed Jan 27 17:54:56 2016] [error] \tSCRIPT_NAME: /XMLRPC
[Wed Jan 27 17:54:56 2016] [error] \tSCRIPT_URI: https://<redacted>/XMLRPC
[Wed Jan 27 17:54:56 2016] [error] \tSCRIPT_URL: /XMLRPC
[Wed Jan 27 17:54:56 2016] [error] \tSERVER_ADDR: <redacted>
[Wed Jan 27 17:54:56 2016] [error] \tSERVER_ADMIN: root at localhost
[Wed Jan 27 17:54:56 2016] [error] \tSERVER_NAME: <redacted>
[Wed Jan 27 17:54:56 2016] [error] \tSERVER_PORT: 443
[Wed Jan 27 17:54:56 2016] [error] \tSERVER_PROTOCOL: HTTP/1.1
[Wed Jan 27 17:54:56 2016] [error] \tSERVER_SIGNATURE: <address>Apache
Server at <redacted> Port 443</address>
[Wed Jan 27 17:54:56 2016] [error]
[Wed Jan 27 17:54:56 2016] [error] \tSERVER_SOFTWARE: Apache
[Wed Jan 27 17:54:56 2016] [error] \tUser-Agent:
rhn.rpclib.py/2.5.822.5.82-1.fc231.fc23
[Wed Jan 27 17:54:56 2016] [error] \tX-Client-Version: 1
[Wed Jan 27 17:54:56 2016] [error] \tX-Info: RPC Processor (C) Red Hat,
Inc (version 2.5.822.5.82-1.fc231.fc23)
[Wed Jan 27 17:54:56 2016] [error] \tX-RHN-Client-Capability:
packages.rollBack(1)=1,configfiles.diff(1)=1,caneatCheese(1)=1,packages.update(2)=2,kickstart_guest.initiate(1)=1,script.run(1)=1,configfiles.mtime_upload(1)=1,packages.verify(1)=1,kickstart.initiate(1)=1,packages.runTransaction(1)=1,configfiles.upload(1)=1,reboot.reboot(1)=1,packages.extended_profile(2)=1,configfiles.deploy(1)=1,configfiles.base64_enc(1)=1
[Wed Jan 27 17:54:56 2016] [error] \tX-RHN-Transport-Capability:
follow-redirects=3
[Wed Jan 27 17:54:56 2016] [error] \tX-Transport-Info: Extended
Capabilities Transport (C) Red Hat, Inc (version 2.5.822.5.82-1.fc231.fc23)
[Wed Jan 27 17:54:56 2016] [error] \tX-Up2Date-Version: 2.5.9-1.fc23
[Wed Jan 27 17:54:56 2016] [error] \tmod_ssl.is_https: <built-in method
ssl_is_https of mod_wsgi.Adapter object at 0x7f4362e7d918>
[Wed Jan 27 17:54:56 2016] [error] \tmod_ssl.var_lookup: <built-in
method ssl_var_lookup of mod_wsgi.Adapter object at 0x7f4362e7d918>
[Wed Jan 27 17:54:56 2016] [error] \tmod_wsgi.application_group:
<redacted>|/xmlrpc
[Wed Jan 27 17:54:56 2016] [error] \tmod_wsgi.callable_object: application
[Wed Jan 27 17:54:56 2016] [error] \tmod_wsgi.handler_script:
[Wed Jan 27 17:54:56 2016] [error] \tmod_wsgi.input_chunked: 0
[Wed Jan 27 17:54:56 2016] [error] \tmod_wsgi.listener_host:
[Wed Jan 27 17:54:56 2016] [error] \tmod_wsgi.listener_port: 443
[Wed Jan 27 17:54:56 2016] [error] \tmod_wsgi.process_group:
[Wed Jan 27 17:54:56 2016] [error] \tmod_wsgi.request_handler: wsgi-script
[Wed Jan 27 17:54:56 2016] [error] \tmod_wsgi.script_reloading: 1
[Wed Jan 27 17:54:56 2016] [error] \tmod_wsgi.version: (3, 2)
[Wed Jan 27 17:54:56 2016] [error] \twsgi.errors: <mod_wsgi.Log object
at 0x7f4362e34c70>
[Wed Jan 27 17:54:56 2016] [error] \twsgi.file_wrapper: <built-in method
file_wrapper of mod_wsgi.Adapter object at 0x7f4362e7d918>
[Wed Jan 27 17:54:56 2016] [error] \twsgi.input: <mod_wsgi.Input object
at 0x7f4362e34c30>
[Wed Jan 27 17:54:56 2016] [error] \twsgi.multiprocess: True
[Wed Jan 27 17:54:56 2016] [error] \twsgi.multithread: False
[Wed Jan 27 17:54:56 2016] [error] \twsgi.run_once: False
[Wed Jan 27 17:54:56 2016] [error] \twsgi.url_scheme: https
[Wed Jan 27 17:54:56 2016] [error] \twsgi.version: (1, 1)
[Wed Jan 27 17:54:56 2016] [error]
[Wed Jan 27 17:54:56 2016] [error] Exception Handler Information
[Wed Jan 27 17:54:56 2016] [error] Traceback (most recent call last):
[Wed Jan 27 17:54:56 2016] [error]   File
"/usr/lib/python2.6/site-packages/spacewalk/server/apacheRequest.py",
line 129, in call_function
[Wed Jan 27 17:54:56 2016] [error]     response = func(*params)
[Wed Jan 27 17:54:56 2016] [error]   File
"/usr/share/rhn/server/handlers/xmlrpc/registration.py", line 1030, in
add_hw_profile
[Wed Jan 27 17:54:56 2016] [error]     if primif:
[Wed Jan 27 17:54:56 2016] [error] UnboundLocalError: local variable
'primif' referenced before assignment




More information about the Spacewalk-list mailing list