Bug 480339

Summary: puplet does not show updates
Product: Red Hat Enterprise Linux 5 Reporter: Cameron Meadors <cmeadors>
Component: dbus-pythonAssignee: Colin Walters <walters>
Status: CLOSED CURRENTRELEASE QA Contact: Desktop QE <desktop-qa-list>
Severity: high Docs Contact:
Priority: urgent    
Version: 5.3CC: a.gormanly, anton.fang, atodorov, bkearney, briang, bugzilla, bugzilla, gkhachik, jplans, kbsingh, ma, marcobillpeter, mclasen, mpoole, philip.r.schaffner, pm-rhel, pvine, ruben, syeghiay, tao, tpelka, vbenes, zcerza
Target Milestone: rcKeywords: Regression, ZStream
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 532142 (view as bug list) Environment:
Last Closed: 2013-09-23 07:10:45 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Bug Depends On:    
Bug Blocks: 499522, 807971, 532142    

Description Cameron Meadors 2009-01-16 10:09:36 EST
On an x86_64 install of RHEL 5.3 RC1 I noticed that puplet seemed to be missing from my panel.  When I looked to see if it was running, it was, but not doing anything.  Yum and pup both showed that there were updates.  I manually killed puplet and restarted it from a terminal.  This is what i got:

Introspect error: The name edu.duke.linux.yum was not provided by any .service f
iles
Traceback (most recent call last):
  File "/usr/bin/puplet", line 467, in ?
    main()
  File "/usr/bin/puplet", line 464, in main
    p.run()
  File "/usr/bin/puplet", line 451, in run
    self._refreshInfo()
  File "/usr/bin/puplet", line 191, in _refreshInfo
    if self.updatesObject is not None and \
AttributeError: DBusException instance has no attribute '_dbus_error_name'

I then discovered that yum-updatesd was not running.  After restarting yum-updatesd and then restarting puplet, I noticed the yum-updatesd was dying when I ran puplet.  Then I grabbed the updates for RC2 using yum and rebooted.

Now I am still not seeing any update notification from puplet, but it is running and so is yum-updatesd.  If yum would actually log anything this would be much easier.  I will file a bug for that.
Comment 1 James Antill 2009-01-16 10:36:26 EST
 This is weird because yum-updatesd and pirut haven't changed in 5.3. Yum logs what it installed/removed/updated into /var/log/yum.log ... do you mean debug like logging?
 But maybe you mean yum-updatesd doesn't do any debug logging? You can run it in non-daemon mode and it'll spit out info. to stderr ... certainly it'd be good to find out why it's dying.
Comment 2 Cameron Meadors 2009-01-16 11:40:54 EST
# yum-updatesd --no-fork
Loaded plugins: rhnplugin
process 10930: arguments to dbus_message_iter_open_container() were incorrect, assertion "(type == DBUS_TYPE_STRUCT && contained_signature == NULL) || (type == DBUS_TYPE_DICT_ENTRY && contained_signature == NULL) || (type == DBUS_TYPE_VARIANT && contained_signature != NULL) || (type == DBUS_TYPE_ARRAY && contained_signature != NULL)" failed in file dbus-message.c line 2356.
This is normally a bug in some application using the D-Bus library.
process 10930: dbus message iterator looks uninitialized or corrupted
process 10930: arguments to dbus_message_iter_append_basic() were incorrect, assertion "_dbus_message_iter_append_check (real)" failed in file dbus-message.c line 2239.
This is normally a bug in some application using the D-Bus library.
process 10930: dbus message iterator looks uninitialized or corrupted
process 10930: arguments to dbus_message_iter_close_container() were incorrect, assertion "_dbus_message_iter_append_check (real_sub)" failed in file dbus-message.c line 2414.
This is normally a bug in some application using the D-Bus library.
process 10922: Array or variant type requires that type array be written, but end_struct was written.
The overall signature expected here was 'a(a{ss}a{ss})' and we are on byte 7 of that signature.

$ puplet 
Error getting update info: Message did not receive a reply (timeout by message bus)
Introspect error: The name edu.duke.linux.yum was not provided by any .service files
Traceback (most recent call last):
  File "/usr/bin/puplet", line 191, in _refreshInfo
    if self.updatesObject is not None and \
AttributeError: DBusException instance has no attribute '_dbus_error_name'
Comment 3 James Antill 2009-01-16 13:22:17 EST
Given that yum-updatesd hasn't changed, I can only assume dbus changed in some way that broke it.
Comment 4 Fang Wenqi 2009-02-12 08:56:02 EST
(Pdb) bt
 
/data/dist/turbo/yum-updatesd/0.9/BUILD/yum-updatesd-0.9/yum-updatesd-helper(670)?()
-> main()
 
/data/dist/turbo/yum-updatesd/0.9/BUILD/yum-updatesd-0.9/yum-updatesd-helper(645)main()
-> updd.emitAvailable()
 
/data/dist/turbo/yum-updatesd/0.9/BUILD/yum-updatesd-0.9/yum-updatesd-helper(550)emitAvailable()
-> map(lambda x: x.updatesAvailable(self.updateInfo), self.emitters)
 
/data/dist/turbo/yum-updatesd/0.9/BUILD/yum-updatesd-0.9/yum-updatesd-helper(550)<lambda>()
-> map(lambda x: x.updatesAvailable(self.updateInfo), self.emitters)
 
/data/dist/turbo/yum-updatesd/0.9/BUILD/yum-updatesd-0.9/yum-updatesd-helper(257)updatesAvailable()
-> self.dbusintf.UpdatesAvailableSignal(msg)
> /usr/lib/python2.4/site-packages/dbus/decorators.py(60)emit_signal()
-> self._connection.send(message)

(Pdb) l
 55                  else:
 56                      for arg in args:
 57                          iter.append(arg)
 58      
 59                  pdb.set_trace()
 60  ->                self._connection.send(message)
 61      
 62              args = inspect.getargspec(func)[0]
 63              args.pop(0)
 64      
 65              if signature:

(Pdb) a message
self = <dbus.service.Object /UpdatesAvail on <dbus.service.BusName
edu.duke.linux.yum on <dbus.Bus on SYSTEM at 0xa018ccc> at 0xa018dac> at
0xa018dcc>
args = ('1',)
keywords = {}

(Pdb) s 
--Return--
> /usr/lib/python2.4/site-packages/dbus/decorators.py(60)emit_signal()->None
-> self._connection.send(message)
(Pdb) process 19653: Array or variant type requires that type array be written,
but end_struct was written.
The overall signature expected here was 'a(a{ss}a{ss})' and we are on byte 7 of
that signature.
Comment 5 Fang Wenqi 2009-02-12 09:04:25 EST
# rpm -qf /usr/lib/python2.4/site-packages/dbus/decorators.py
dbus-python-0.70-7

Looks like the issue comes from the obsolete dbus-python-0.70-7,
it should be updated according to the new dbus in RHEL 5.3(dbus-libs-1.1.2-12).

I've tried the one from ftp://download.fedora.redhat.com/pub/fedora/linux/releases/9/Fedora/source/SRPMS/dbus-python-0.82.4-2.fc9.src.rpm. 
With this new release, yum-updatesd/puplet works well.
Comment 8 Gerrit Slomma 2009-06-11 17:07:02 EDT
I have the same issue.
Is there a plan to fix this?
Comment 9 Andrew Gormanly 2009-06-17 06:53:54 EDT
What a good question.  It's been 5 months now.
Comment 10 Frank B├╝ttner 2009-06-18 02:18:20 EDT
As an workaround you can tell yum-updatesd to send the notifications via email or syslog.
Comment 11 Fang Wenqi 2009-06-25 22:10:15 EDT
(In reply to comment #8)
> I have the same issue.
> Is there a plan to fix this?  

It's caused by obsolete dbus-python.
If this issue is really troubling you, you can rebuild a newer dbus-python for your system:
  # rpmbuild --rebuild ftp://download.fedora.redhat.com/pub/fedora/linux/releases/9/Fedora/source/SRPMS/dbus-python-0.82.4-2.fc9.src.rpm

  # rpm -Uvh /usr/src/redhat/RPMS/i386/dbus-python-0.82.4-2.el5.i386.rpm
Comment 12 Gerrit Slomma 2009-06-27 05:44:09 EDT
Since i use RHEL with an active subscription i would rather have Red Hat build a backport. I think i file a service request via Red Hat Network.
Awkward that no more persons have this problem.
Comment 13 Alexander Todorov 2009-07-01 07:02:19 EDT
*** Bug 500410 has been marked as a duplicate of this bug. ***
Comment 15 Alexander Todorov 2009-07-01 07:07:51 EDT
*** Bug 508840 has been marked as a duplicate of this bug. ***
Comment 17 Chris Schanzle 2009-07-16 06:35:35 EDT
Is this queued for 5.4?  Anyone checked the beta?
Comment 18 Gerrit Slomma 2009-07-16 08:40:23 EDT
Apparently not

# rpm -q dbus-python redhat-release
dbus-python-0.70-7.el5
redhat-release-5Server-5.4.0.2

A puplet issued on the console therefore gives the same error-message.

But i have a ticket open - the last status was that a working dbus-pyhton-0.82 would be passed to engineering and integrated or backported into the next release.
Comment 24 Gerrit Slomma 2009-09-26 08:34:41 EDT
I is currently not in RHEL5.4

# rpm -q dbus-python redhat-release
dbus-python-0.70-7.el5
redhat-release-5Client-5.4.0.3

Any update? What does the "Blocks 499522(GSS_5_5_proposed)" mean that was attached to this bug?
Comment 25 Christopher Aillon 2009-10-06 14:43:36 EDT
Richard, can you please take a look at this?
Comment 26 Richard Hughes 2009-10-07 09:35:23 EDT
(In reply to comment #25)
> Richard, can you please take a look at this?  

I've never looked at the code for puplet, or even used it since F7ish, so I think I'm really the wrong person to tackle this. If you really want me to take the time to get up to speed anyway, that's fine with me.

From initial view, it looks like there are two problems here, one to do with the error handling in puplet, and one to cause the error in the first place. It looks like the dbus-python has fixed the second problem (and thus the first), but new versions were not pushed out to 5.4 -- is this correct?
Comment 27 Martin Poole 2009-10-07 09:38:38 EDT
(In reply to comment #26)
> 
> From initial view, it looks like there are two problems here, one to do with
> the error handling in puplet, and one to cause the error in the first place. It
> looks like the dbus-python has fixed the second problem (and thus the first),
> but new versions were not pushed out to 5.4 -- is this correct?  

Yup, the primary issue that needs addressing asap is just to get the updated dbus-python.
Comment 44 Martin Poole 2009-11-09 06:45:01 EST
An advisory has been issued which should help the problem
described in this bug report. 

http://rhn.redhat.com/errata/RHBA-2009-1559.html
Comment 45 Issue Tracker 2009-11-09 09:18:56 EST
Event posted on 2009-11-09 23:18 JST by fuchi

Dear All,

I have confirmed that the latest release is working. 
So I'm going to close this ticket. Thank you so much!!  

Regards,
Fuchi


This event sent from IssueTracker by fuchi 
 issue 313266
Comment 47 Gerrit Slomma 2009-11-10 00:20:08 EST
Yes i do confirm that it is working now!
Thanks from me.
Comment 62 Karel Srot 2012-04-24 03:37:55 EDT
*** Bug 442015 has been marked as a duplicate of this bug. ***