Proposal: stop holding composes for preupgrade bugs at Alpha and Beta phases
jreiser at bitwagon.com
Tue Apr 10 03:35:04 UTC 2012
On 04/09/2012 07:18 PM, Dan Mashal wrote:
> As I said in the meeting let's just deprecate it [in favor of yum+network].
The problems I have seen with using only yum+network to perform a distro
version upgrade are:
1. It's a poor idea to be running almost anything else on the box
at the same time as a distro version upgrade. It is quite likely
that an app will encounter difficulties because of mismatched versions
of the components on which it relies. [For instance, I've run across
situations where software-initiated reboot *hangs* after distro version
upgrade; I had to push the reset button.] Thus single user mode should
be considered a requirement for distro version upgrade via yum+network,
although often it happens to work in multi-user mode if the box
is "otherwise idle".
2. yum is stupidly slow about collecting the upgrade .rpms.
First there is downloading itself: yum downloading [of any kind]
is single threaded. Often this wastes 30% to 50% of available
bandwidth (at the server and/or in the pipe.)
A close-to-optimal strategy for typical cable modem ISP is:
1. Sort the download list by size of file to be downloaded.
2. Run two parallel threads. The first thread downloads
from large to small, the second from small to large.
Stop when the threads meet somewhere in the "middle".
[Debian has a two-thread download for "apt upgrade". It does not
use the optimal strategy, but it is still effective.]
Second, yum does not download the remaining .rpm (whose .drpm
are not available) while it is reconstituting the other .rpm
from .drpm. The waste can be significant for the common case
when there are enough .drpm for some large .rpms (kernel,
3. If distro version upgrade via yum+network fails (power failure,
network failure, configuration failure, operator error, ...),
then you have a big mess.
The .rpm are not saved, so re-downloading might be substantial.
If an expert is not available for hands-on analysis and repair,
then a fresh install might be the best choice to achieve
shortest down time.
Thus effective downtime can be reduced substantially if preupgrade
manages to parallelize the collection of the anticipated .rpms
(download .drpm and .rpm, reconstitute .rpm from .drpm)
with normal multi-user operation of the machine under the old
More information about the test