Description of problem: When python-reportlab is installed, xmlrpclib.getparser() returns an sgmlop-based parser instead of whatever else it uses. rhn_check attempts to access attribute _parser, which does not exist in this case. [Fri Nov 18 15:44:15 2011] up2date Traceback (most recent call last): File "/usr/sbin/rhn_check", line 373, in ? cli.run() File "/usr/share/rhn/up2date_client/rhncli.py", line 74, in run sys.exit(self.main() or 0) File "/usr/sbin/rhn_check", line 71, in main self.__run_remote_actions() File "/usr/sbin/rhn_check", line 175, in __run_remote_actions self.handle_action(action) File "/usr/sbin/rhn_check", line 234, in handle_action (method, params) = self.__parse_action_data(action) File "/usr/sbin/rhn_check", line 193, in __parse_action_data parser._parser.returns_unicode = 0 exceptions.AttributeError: SgmlopParser instance has no attribute '_parser' Version-Release number of selected component (if applicable): rhn-check-1.5.16-1.el5 (spacewalk client) python-reportlab-2.5-3.el5 (epel) python-libs-2.4.3-44.el5_7.1 (centos/rhel) How reproducible: Tried twice on different hosts and behavior was consistent. Steps to Reproduce: 1. yum install python-reportlab 2. schedule a package update from Spacewalk 3. rhn_check (or just wait) 4. check /var/log/up2date for failure 5. yum remove python-reportlab 6. rhn_check 7. check for success Actual results: Above-mentioned Python traceback results and no package is installed. Expected results: Package installs without error Additional info:
Created attachment 534526 [details] Possible fix The attached is one way to fix it; I don't really know how important the effect of 'returns_unicode' is.
Wil, I believe you can safely remove that line from /usr/bin/rhn_check altogether.
In Spacewalk master, I've actually reverted that d3fbbbec76e3c983bfd947ba4d6a4a0682508c81 commit which introduced it with 8502f33604f840a0262ce489bd39171c835543ea and added the ability to process unicode system_id on the server side with 8a107156a2d2f7f22f0f3b6f7c5a7dfb6f798bf4.
Spacewalk 1.6 has been released.