[Piuparts-commits] [SCM] piuparts git repository branch, master, updated. 0.53-32-g1b2cc02
Holger Levsen
holger at layer-acht.org
Tue Jul 30 09:13:21 UTC 2013
The following commit has been merged in the master branch:
commit 068fb540ed154aa41b24daab7f3646f50bac266e
Author: David Steele <dsteele at gmail.com>
Date: Sat Jun 15 13:25:47 2013 -0400
piupartslib/packages.db - Prioritize by rdep chain len in reserve()
Use the rdep_chain_len metric to proportionally prioritize packages
returned by reserve() according to the length of the longest reverse
dependency chain length.
diff --git a/debian/changelog b/debian/changelog
index 73db490..5a20b02 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -13,6 +13,7 @@ piuparts (0.54) UNRELEASED; urgency=low
calculate on-demand. Access methods are moved from Package to
PackagesDB.
- Add a metric for the worst-case reverse-dependency chain length.
+ - Weight the reserved packages returned by this additional factor.
-- Holger Levsen <holger at debian.org> Tue, 11 Jun 2013 15:05:03 +0200
diff --git a/piupartslib/packagesdb.py b/piupartslib/packagesdb.py
index ab47ab7..21e53c2 100644
--- a/piupartslib/packagesdb.py
+++ b/piupartslib/packagesdb.py
@@ -666,7 +666,8 @@ class PackagesDB:
if not self._logdb.log_exists(p, [self._reserved]) or \
self._logdb.log_exists(p, [self._recycle])]
if len(self._candidates_for_testing) > 1:
- tuples = [(self.waiting_count(p), random.random(), p)
+ tuples = [(self.waiting_count(p) * self.rdep_chain_len(p),
+ random.random(), p)
for p in self._candidates_for_testing]
self._candidates_for_testing = [x[2]
for x in sorted(tuples, reverse = True)]
--
piuparts git repository
More information about the Piuparts-commits
mailing list