diff options
author | Zac Medico <zmedico@gentoo.org> | 2008-11-04 07:55:01 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2008-11-04 07:55:01 +0000 |
commit | 3d91f19f8afb8e2fa59518abd709ff677148f00c (patch) | |
tree | d73512522144c55af7e2a6cffbd6dd4569734155 | |
parent | 6dc2a3ef1ffac9eab3728d37a3f6e133ac34ab27 (diff) | |
download | portage-3d91f19f8afb8e2fa59518abd709ff677148f00c.tar.gz portage-3d91f19f8afb8e2fa59518abd709ff677148f00c.tar.bz2 portage-3d91f19f8afb8e2fa59518abd709ff677148f00c.zip |
Free some memory by clearing the LinkageMap cache when it's not needed.
svn path=/main/trunk/; revision=11807
-rw-r--r-- | pym/_emerge/__init__.py | 1 | ||||
-rw-r--r-- | pym/portage/__init__.py | 1 | ||||
-rw-r--r-- | pym/portage/dbapi/vartree.py | 1 |
3 files changed, 3 insertions, 0 deletions
diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index f65fda5dc..773c01d34 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -13464,6 +13464,7 @@ def clear_caches(trees): d["porttree"].dbapi._aux_cache.clear() d["bintree"].dbapi._aux_cache.clear() d["bintree"].dbapi._clear_cache() + d["vartree"].dbapi.linkmap._clear_cache() portage.dircache.clear() gc.collect() diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py index b269ea9e9..002bb4d6e 100644 --- a/pym/portage/__init__.py +++ b/pym/portage/__init__.py @@ -6091,6 +6091,7 @@ def unmerge(cat, pkg, myroot, mysettings, mytrimworld=1, vartree=None, return retval return os.EX_OK finally: + self.vartree.dbapi.linkmap._clear_cache() mylink.unlockdb() def getCPFromCPV(mycpv): diff --git a/pym/portage/dbapi/vartree.py b/pym/portage/dbapi/vartree.py index f88431ee0..418d87388 100644 --- a/pym/portage/dbapi/vartree.py +++ b/pym/portage/dbapi/vartree.py @@ -3767,6 +3767,7 @@ class dblink(object): self._scheduler.dblinkEbuildPhase( self, mydbapi, myebuild, "clean") finally: + self.vartree.dbapi.linkmap._clear_cache() self.unlockdb() return retval |