summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2013-06-08 04:47:01 -0700
committerZac Medico <zmedico@gentoo.org>2013-06-08 04:47:01 -0700
commitfe6c6665fac0a4f2257bd9e0c2171c9e182ebc8f (patch)
treed4d6b69f5552411779b796ef7fc6a58a1980ba39
parentclose_portdbapi_caches: portage.db atexit hook (diff)
downloadportage-fe6c6665fac0a4f2257bd9e0c2171c9e182ebc8f.tar.gz
portage-fe6c6665fac0a4f2257bd9e0c2171c9e182ebc8f.tar.bz2
portage-fe6c6665fac0a4f2257bd9e0c2171c9e182ebc8f.zip
emerge --metadata/regen: flush portdbapi cache
-rw-r--r--pym/_emerge/MetadataRegen.py2
-rw-r--r--pym/_emerge/actions.py1
2 files changed, 3 insertions, 0 deletions
diff --git a/pym/_emerge/MetadataRegen.py b/pym/_emerge/MetadataRegen.py
index bdf2fa7ea..d92b6a06e 100644
--- a/pym/_emerge/MetadataRegen.py
+++ b/pym/_emerge/MetadataRegen.py
@@ -86,6 +86,7 @@ class MetadataRegen(AsyncScheduler):
self._termination_check()
if self._terminated_tasks:
+ portdb.flush_cache()
self.returncode = self._cancelled_returncode
return self.returncode
@@ -130,6 +131,7 @@ class MetadataRegen(AsyncScheduler):
except (KeyError, CacheError):
pass
+ portdb.flush_cache()
return self.returncode
def _task_exit(self, metadata_process):
diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py
index d6e810084..1629d9280 100644
--- a/pym/_emerge/actions.py
+++ b/pym/_emerge/actions.py
@@ -1968,6 +1968,7 @@ def action_metadata(settings, portdb, myopts, porttrees=None):
print()
signal.signal(signal.SIGWINCH, signal.SIG_DFL)
+ portdb.flush_cache()
sys.stdout.flush()
os.umask(old_umask)