To anyone who's been watching bugzilla, yum-updatesd continues to get
beat up on quite a bit.  Everything from resource usage, to just sitting
and hanging, to failures and other things.

seth, jbowes and I sat down last week with a helpful moderator (wwoods)
to try to figure out a way to improve the status quo.  We covered a lot
of ground starting with making yum-updatesd go back to just having a
cron job kicking off yum going all the way to making yum-updatesd a
massive service used by all the GUI tools for their installation needs.

In the end, we reached a bit of a middle ground.  A lot of the problems
seem to be related to the fact that yum-updatesd currently gets into
states where it's hung.  A lot of this felt like it could be resolved if
we could a) stop using threads and b) have the process accessing the
rpmdb + yum metadata actually _exit_.  From there, we came to the idea
of splitting things up into two pieces.
  1) yum-updatesd.  Daemon that sits on dbus brokering off requests
  2) yum-updatesd-helper.  Helper process that gets forked off to do
everything with the rpmdb.

After a couple days of just seeing if it's feasible, I've got something
now that looks like it works and fulfills most[1] of our more full list
of requirements[2].  To get it, you can currently do
  git clone http://katzj.fedorapeople.org/git/yum-updatesd.git
or grab the packages (epoch 1 so they upgrade what's in yum) from   
  http://katzj.fedorapeople.org/repos/yum-updatesd

Thoughts, comments, testing appreciated.  I think that post yum 3.2.2,
we want to think about just removing yum-updatesd from yum itself and
pointing people to use this new version instead.

Jeremy

[1] The big thing missing is that the daemon side is still written in
python because that's faster to do.  The advantage of moving it to C
will be a lower memory footprint which is probably worth it for a system
daemon.  But that can also be a second step.
[2] You can get the (somewhat condensed) version of this as
docs/new-yum-updatesd-design in the repo

_______________________________________________
Yum-devel mailing list
[email protected]
https://lists.dulug.duke.edu/mailman/listinfo/yum-devel

Reply via email to