Description of problem: Upgrading python from 2.3.2-9 to 2.3.3-1 results in up2date 4.3.1 terminating with the following traceback: Traceback (most recent call last): File "/usr/sbin/up2date-nox", line 1259, in ? sys.exit(main() or 0) File "/usr/sbin/up2date-nox", line 688, in main up2dateAuth.updateLoginInfo() File "up2dateAuth.py", line 141, in updateLoginInfo File "up2dateAuth.py", line 113, in login File "rpcServer.py", line 112, in doCall File "/usr/lib/python2.3/xmlrpclib.py", line 1029, in __call__ return self.__send(self.__name, args) File "/usr/lib/python2.3/site-packages/rhn/rpclib.py", line 302, in _request verbose=self._verbose File "/usr/lib/python2.3/site-packages/rhn/transports.py", line 167, in request headers, fd = req.send_http(host, handler) File "/usr/lib/python2.3/site-packages/rhn/transports.py", line 688, in send_http headers=self.headers) File "/usr/lib/python2.3/httplib.py", line 718, in request self._send_request(method, url, body, headers) File "/usr/lib/python2.3/httplib.py", line 730, in _send_request if 'host' in [k.lower() for k in headers]: AttributeError: 'NoneType' object has no attribute 'lower' Version-Release number of selected component (if applicable): up2date-4.3.1-2 How reproducible: Always Steps to Reproduce: 1. rpm -Fvh python-2.3.3* 2. up2date-nox -l 3. Actual results: See trace above Expected results: Should work :)
And yes, up2date works again if I downgrade from python 2.3.3 to 2.3.2.
I'm 90% sure I was seeing this trace earlier with python 2.3.3, up2date 4.3.1-2 (on ppc) however - I just went to retest and it's working. Only thing I have done since is to blow away /var/spool/up2date/* Could you try and see if this fixes?
Linux imac.eridu 2.4.22-2f #1 Sun Nov 9 16:49:49 EST 2003 ppc ppc ppc GNU/Linux python-2.3.3-1 rpm-4.3-0.7 up2date-4.3.1-2 [pauln@imac isys]$ sudo up2date-nox -l Fetching Obsoletes list for channel: ydl-ruff... Fetching Obsoletes list for channel: duke-devel... Fetching rpm headers... Name Version Rel ---------------------------------------------------------- up2date to install a package works here too.
Fragging /var/spool/up2date doesn't help. % rpm -q python rhnlib rhpl up2date rpm rpm-python python-2.3.3-1 rhnlib-1.4-10 rhpl-0.122.2-1 up2date-4.3.1-2 rpm-4.3-0.7 rpm-python-4.3-0.7 % rpm -V rhpl % rpm -V rpm-python % rpm -V python % rpm -V rhnlib % rpm -V up2date SM?....T c /etc/sysconfig/rhn/up2date ..?..... c /etc/sysconfig/rhn/up2date-keyring.gpg S.?....T c /etc/sysconfig/rhn/up2date-uuid SM5....T /usr/share/rhn/up2date_client/distrotype.pyc SM5....T /usr/share/rhn/up2date_client/repoBackends/__init__.pyc SM5....T /usr/share/rhn/up2date_client/repoBackends/genericSolveDep.pyc SM5....T /usr/share/rhn/up2date_client/up2dateUtils.pyc %
This would be against a up2date repository.
The yum repository code does work with python 2.3.3. I put "yum arjanv-2-6 http://people.redhat.com/arjanv/2.5" in /etc/sysconfig/rhn/sources and did "up2date-nox --showall": % up2date-nox --showall device-mapper-1.00.07-1.i386 device-mapper-debuginfo-1.00.07-1.i386 hotplug-2003_08_05-1.i386 hotplug-debuginfo-2003_08_05-1.i386 initscripts-7.28-1.i386 initscripts-debuginfo-7.28-1.i386 kernel-2.6.1-1.129.i686 kernel-doc-2.6.1-1.129.i386 kernel-smp-2.6.1-1.129.i686 kernel-smp-unsupported-modules-2.6.1-1.129.i686 kernel-source-2.6.1-1.129.i386 kernel-unsupported-modules-2.6.1-1.129.i686 lvm-1.0.3-17.i386 lvm-debuginfo-1.0.3-17.i386 lvm2-2.00.08-2.i386 lvm2-debuginfo-2.00.08-2.i386 mkinitrd-3.5.15.1-2.i386 mkinitrd-debuginfo-3.5.16.1-1.i386 modutils-2.4.25-10.i386 modutils-debuginfo-2.4.25-10.i386 modutils-devel-2.4.25-10.i386 nfs-utils-1.0.5-1.i386 nfs-utils-debuginfo-1.0.5-1.i386 oprofile-0.5.4-3.i386 oprofile-debuginfo-0.5.4-3.i386 oprofile-devel-0.5.4-3.i386
Problem exists with 4.3.6, too.
Created attachment 97042 [details] httplib.py differences between python 2.3.2 and 2.3.3 Python CVS diff before and after the part that breaks up2date <http://cvs.sourceforge.net/viewcvs.py/python/python/dist/src/Lib/httplib.py?r1=1.79.8.1&r2=1.79.8.2>. It was fixed because of a bug report <http://sourceforge.net/tracker/?group_id=5470&atid=105470&func=detail&aid=831271>
lovely... leaving open as a reminder to either workaround it (gah...) or just patch or version of 2.3.3, or wait for 2.3.4
I guess most people won't encounter the bug as it only affects up2date repos. It would be nice to get it working before FC2 as the development tree now has python 2.3.3 in it. Thanks.
Adrian, Is there anything here I can help you out with?
Hmmm, looks like this one got fixed somewhere between 4.3.11 and 4.3.15.
there was a change to rhnlib that fixed this
I'll just close this then.. Thanks :)
Replacing the line: if 'host' in [k.lower() for k in headers] with: if 'host' in [k.lower() for k in headers if k] in /usr/lib/python2.3/httplib.py, method _send_request(), is a quick workaround for this.