summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorColin Guthrie <colin@mageia.org>2013-05-19 10:12:48 +0000
committerColin Guthrie <colin@mageia.org>2013-05-19 10:12:48 +0000
commit852e03df3227a6958b799d998ed95b7321257de3 (patch)
treead807561fcf6b920f68c1471130a9712537ceb9d
parent5983020abf393dabe271a3159682b96d056ea014 (diff)
downloadurpmi-852e03df3227a6958b799d998ed95b7321257de3.tar
urpmi-852e03df3227a6958b799d998ed95b7321257de3.tar.gz
urpmi-852e03df3227a6958b799d998ed95b7321257de3.tar.bz2
urpmi-852e03df3227a6958b799d998ed95b7321257de3.tar.xz
urpmi-852e03df3227a6958b799d998ed95b7321257de3.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
-rw-r--r--NEWS3
-rw-r--r--urpm/select.pm1
2 files changed, 4 insertions, 0 deletions
diff --git a/NEWS b/NEWS
index 25a95779..7405fae0 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,6 @@
+- library:
+ o ensure priority updates are installed in a single transaction
+
Version 7.27.1 - 17 May 2013, by Thierry Vignaud
- library:
diff --git a/urpm/select.pm b/urpm/select.pm
index 1e462a5e..507f82c0 100644
--- a/urpm/select.pm
+++ b/urpm/select.pm
@@ -353,6 +353,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;
}