On Sun, 2008-09-21 at 07:05 -0300, Alexandre Oliva wrote:
On Sep 11, 2008, Seth Vidal <skvidal(a)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(a)fedoraproject.org>
Fedora