From: Zac Medico Date: Fri, 2 Nov 2007 06:25:08 +0000 (-0000) Subject: Optimize repoman to share portdbapi.cp_list() results X-Git-Tag: v2.1.3.19~37 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=c65e25b59f39ef07615374ee3bbbba2d14691254;p=portage.git Optimize repoman to share portdbapi.cp_list() results between all profiles since those results never change. The cached results also propagate to the xmatch match-all when appropriate (old-style virtuals are excluded since they are profile dependent). (trunk r8313) svn path=/main/branches/2.1.2/; revision=8368 --- diff --git a/bin/repoman b/bin/repoman index 9579903c5..499e4f720 100755 --- a/bin/repoman +++ b/bin/repoman @@ -889,6 +889,8 @@ if isCvs: dofail = 0 arch_caches={} arch_xmatch_caches = {} +shared_xmatch_caches = {"cp-list":{}} + for x in scanlist: #ebuilds and digests added to cvs respectively. if verbose: @@ -1567,6 +1569,7 @@ for x in scanlist: portdb.melt() portdb.freeze() xcache = portdb.xcache + xcache.update(shared_xmatch_caches) arch_xmatch_caches[xmatch_cache_key] = xcache trees["/"]["porttree"].settings = dep_settings