Bug 1378432

Summary: error: deprecated method, when we set two serverURL in up2date
Product: [Community] Spacewalk Reporter: Martin Korbel <mkorbel>
Component: ClientsAssignee: Jiří Dostál <jdostal>
Status: CLOSED CURRENTRELEASE QA Contact: Radovan Drazny <rdrazny>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 2.5CC: eherget, galtukho, jdostal, rdrazny
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 1395892 (view as bug list) Environment:
Last Closed: 2017-09-27 19:20:26 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:
Bug Depends On:    
Bug Blocks: 1395892, 1484117    

Description Martin Korbel 2016-09-22 12:08:26 UTC
Description of problem:
Problem with deprecated functions on Fedora 24, when we set two serverURL in up2date.


Version-Release number of selected component (if applicable):
rhn-client-tools-2.6.1-1.fc24

How reproducible:
100%


Steps to Reproduce:
1. We have got machine with F24 and try to register to SW or Sat5. We set up primary and secundary SW in serverURL in /etc/sysconfig/rhn/up2date
> echo "serverURL=https://does_not_exists.redhat.com/XMLRPC; https://elisha.brq.redhat.com/XMLRPC" >> /etc/sysconfig/rhn/up2date'
2. register
 > rhnreg_ks --activationkey=1-xxx
An error has occurred:
<class 'NameError'>
See /var/log/up2date for more information

> tail var/log/up2date
[Thu Sep 22 04:56:42 2016] up2date An error occurred talking to does_not_exists.redhat.com:
<class 'socket.gaierror'>
[Errno -2] Name or service not known
Trying the next serverURL: https://elisha.brq.redhat.com/XMLRPC

[Thu Sep 22 04:56:42 2016] up2date A socket error occurred: [Errno -2] Name or service not known, attempt #1
[Thu Sep 22 04:56:47 2016] up2date An error occurred talking to does_not_exists.redhat.com:
<class 'socket.gaierror'>
[Errno -2] Name or service not known
Trying the next serverURL: https://elisha.brq.redhat.com/XMLRPC

[Thu Sep 22 04:56:47 2016] up2date 
Traceback (most recent call last):
  File "/usr/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 "/usr/sbin/rhnreg_ks", line 95, in main
    rhnreg.getCaps()
  File "/usr/share/rhn/up2date_client/rhnreg.py", line 264, in getCaps
    s.capabilities.validate()
  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 220, in doCall
    ret = method(*args, **kwargs)
  File "/usr/lib64/python3.5/xmlrpc/client.py", line 1091, in __call__
    return self.__send(self.__name, args)
  File "/usr/share/rhn/up2date_client/rpcServer.py", line 82, in _request1
    typ, uri = urllib.splittype(self.serverList.server())
<class 'AttributeError'>: module 'urllib' has no attribute 'splittype'


Actual results:
  the setup don't work with two servers in serverURL in up2date on F24

Expected results:
  the registration pass without error.

Additional info:

Comment 3 Jiří Dostál 2016-09-23 11:21:16 UTC
spacewalk.git dc7ee6df8e4235799c27064c8b828f2b946bcc3d

Comment 4 Radovan Drazny 2016-11-14 10:45:50 UTC
Reproduced similar (and not quite same) behavior on rhn-client-tools-2.5.16-1.fc24 with the reproducer from the initial report. 

[Mon Nov 14 11:21:32 2016] up2date An error occurred talking to nonexistentserver.redhat.com:
<class 'socket.gaierror'>
[Errno -2] Name or service not known
Trying the next serverURL: https://ibm-x3650m4-03-vm10.lab.eng.brq.redhat.com/XMLRPC

[Mon Nov 14 11:21:32 2016] up2date A socket error occurred: [Errno -2] Name or service not known, attempt #1
[Mon Nov 14 11:21:32 2016] up2date 
Traceback (most recent call last):
  File "/usr/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 "/usr/sbin/rhnreg_ks", line 95, in main
    rhnreg.getCaps()
  File "/usr/share/rhn/up2date_client/rhnreg.py", line 264, in getCaps
    s.capabilities.validate()
  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 225, in doCall
    raise_with_tb(up2dateErrors.CommunicationError(e.args[1]))
  File "/usr/lib/python3.5/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:
Name or service not known

Updated to rhn-client-tools-2.6.6-1.fc24. There was no problem with using the fallback server in the /etc/sysconfig/up2date file, and the Fedora 24 system registered correctly to the Spacewalk server.

[Mon Nov 14 11:38:18 2016] up2date An error occurred talking to a-jeste-neco.redhat.com:
<class 'socket.gaierror'>
[Errno -2] Name or service not known
Trying the next serverURL: https://ibm-x3650m4-03-vm10.lab.eng.brq.redhat.com/XMLRPC

VERIFIED

Comment 5 Eric Herget 2017-09-27 19:20:26 UTC
This looks like it was fixed in previous release, but I'm closing it in this one.

Spacewalk 2.7 has been released.

https://github.com/spacewalkproject/spacewalk/wiki/ReleaseNotes27