diff options
author | Colin Guthrie <colin@mageia.org> | 2013-05-19 14:53:11 +0000 |
---|---|---|
committer | Colin Guthrie <colin@mageia.org> | 2013-05-19 14:53:11 +0000 |
commit | 7e7a31e107b5819646ca26da408d70cfd5b0a836 (patch) | |
tree | 854b92613931fd473f58c2d0fb323c30efba4428 | |
parent | dd074e1eb2afc2e61b272c4b4ac47250a98a9f52 (diff) | |
download | urpmi-7e7a31e107b5819646ca26da408d70cfd5b0a836.tar urpmi-7e7a31e107b5819646ca26da408d70cfd5b0a836.tar.gz urpmi-7e7a31e107b5819646ca26da408d70cfd5b0a836.tar.bz2 urpmi-7e7a31e107b5819646ca26da408d70cfd5b0a836.tar.xz urpmi-7e7a31e107b5819646ca26da408d70cfd5b0a836.zip |
library: ensure priority updates are installed in a single transaction
This fix is needed in cases where rpm's libdb changes. If the priority updates
happen to be installed in more than one transaction, the %post script in rpm
which deletes the old index files (/var/lib/rpm/__db.*) may happen at the
end of the first of those transactions. This causes the indexes to be
regenerated by the *old* db version and causes the second transaction to fail.
By ensuring the priority updates are handled in a single transaction, the
indexes will be recreated after the urpmi restart and will thus use the
correct, new libdb to create the indexes.
Patch and fix from Thierry Vignaud
(Cherry picked from r8331)
-rw-r--r-- | NEWS | 3 | ||||
-rw-r--r-- | urpm/select.pm | 1 |
2 files changed, 4 insertions, 0 deletions
@@ -1,3 +1,6 @@ +- library: + o ensure priority updates are installed in a single transaction + Version 6.48.4 - 15 April 2012 - library: diff --git a/urpm/select.pm b/urpm/select.pm index 2ab00ce7..763df586 100644 --- a/urpm/select.pm +++ b/urpm/select.pm @@ -290,6 +290,7 @@ sub resolve_dependencies { $need_restart = _resolve_priority_upgrades($urpm, $db, $state, $state->{selected}, \@l, %options); } } + $urpm->{options}{'split-length'} = 0 if $need_restart; } $need_restart; } |