recover from broken yum transaction

James Antill james.antill at redhat.com
Sun Sep 21 21:27:06 UTC 2008


On Sun, 2008-09-21 at 07:05 -0300, Alexandre Oliva wrote:
> On Sep 11, 2008, Seth Vidal <skvidal at fedoraproject.org> wrote:
> 
> > On Thu, 2008-09-11 at 03:24 +0200, Ahmed Kamal wrote:
> >> Hi,
> >> I had my computer hang during a major yum upgrade.
> 
> > When this happens you should run:
> > yum-complete-transaction

 Also note that the latest yum will inform you to run the above, when
you need to.

> In a slightly different scenario: I often find that, if the ssh
> connection from which I start 'yum update' is broken for whatever
> reason (say the machine from which I started reboots or so), yum gets
> an error posting its progress reports, and then it starts removing
> lots and lots of packages to keep dependencies from being unmet.

 I haven't heard this before, and I don't see how yum could do that. I
assume you mean when the connection dies after the "Running transaction"
stage? At this point yum is really rpm.
 Although I'd still be surprised if rpm altered the running transaction
to remove a bunch of applications, it seems more plausible than yum
doing the same.

 The error I usually see is when the connection dies and yum/rpm
instantly die with it ... at which point rpm is some way through the
transaction and so for all the updates which have been done without the
corresponding cleanup you actually have two versions of those packages
installed. Due to version deps. this sometimes means that things don't
work.

> Wouldn't it be much nicer if, like, it ran to completion without
> regarding the stdout errors; recorded a recovery transaction to revert
> the removals, or at least recorded a transaction to complete the
> interrupted update?

 That's what yum-complete-transaction does. "running to completion"
would only really be possible if we compartmentalized the UI from the
backend (in different processes), which would be nice ... but is a lot
of work.

> I realize the latter is risky, for you may end up unable to start yum
> in the first place, but this unfortunately is also the case of the
> current code.  Last time I got this error, an elfutils update was part
> of the transaction, and it stopped at such an unfortunate time that
> elfutils got removed, and rpm would no longer run.  Oops :-)
> 
> Is this bug report material?

 If you have a reproducer feel free to report it and we'll investigate.

-- 
James Antill <james at fedoraproject.org>
Fedora
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <http://listman.redhat.com/archives/fedora-devel-list/attachments/20080921/673cbceb/attachment.sig>


More information about the fedora-devel-list mailing list