Kaydet (Commit) 914bafa9 authored tarafından Your Name's avatar Your Name

revdep update action only init when needed (first init time decreased for…

revdep update action only init when needed (first init time decreased for revdep-independend actions)
üst 188010c6
...@@ -87,7 +87,8 @@ class InstallDB(lazydb.LazyDB): ...@@ -87,7 +87,8 @@ class InstallDB(lazydb.LazyDB):
def init(self): def init(self):
self.__generate_inode_cache() # TODO: Needs look it up. self.__generate_inode_cache() # TODO: Needs look it up.
self.rev_deps_db = self.__generate_revdeps() self.rev_deps_db = None
#self.rev_deps_db = self.__generate_revdeps()
self.installed_extra = self.__generate_installed_extra() self.installed_extra = self.__generate_installed_extra()
def __generate_inode_cache(self): def __generate_inode_cache(self):
...@@ -410,7 +411,8 @@ class InstallDB(lazydb.LazyDB): ...@@ -410,7 +411,8 @@ class InstallDB(lazydb.LazyDB):
def get_rev_deps(self, name): def get_rev_deps(self, name):
rev_deps = [] rev_deps = []
if not self.rev_deps_db:
self.rev_deps_db =self.__generate_revdeps()
package_revdeps = self.rev_deps_db.get(name) package_revdeps = self.rev_deps_db.get(name)
if package_revdeps: if package_revdeps:
for pkg, dep in list(package_revdeps.items()): for pkg, dep in list(package_revdeps.items()):
...@@ -421,7 +423,8 @@ class InstallDB(lazydb.LazyDB): ...@@ -421,7 +423,8 @@ class InstallDB(lazydb.LazyDB):
def get_rev_dep_names(self, name): def get_rev_dep_names(self, name):
rev_deps = [] rev_deps = []
if not self.rev_deps_db:
self.rev_deps_db = self.__generate_revdeps()
package_revdeps = self.rev_deps_db.get(name) package_revdeps = self.rev_deps_db.get(name)
if package_revdeps: if package_revdeps:
for pkg in list(package_revdeps.items()): for pkg in list(package_revdeps.items()):
...@@ -519,6 +522,8 @@ class InstallDB(lazydb.LazyDB): ...@@ -519,6 +522,8 @@ class InstallDB(lazydb.LazyDB):
def add_package(self, pkginfo): def add_package(self, pkginfo):
# Cleanup old revdep info # Cleanup old revdep info
if not self.rev_deps_db:
self.rev_deps_db = self.__generate_revdeps()
for revdep_info in list(self.rev_deps_db.values()): for revdep_info in list(self.rev_deps_db.values()):
if pkginfo.name in revdep_info: if pkginfo.name in revdep_info:
del revdep_info[pkginfo.name] del revdep_info[pkginfo.name]
...@@ -531,6 +536,8 @@ class InstallDB(lazydb.LazyDB): ...@@ -531,6 +536,8 @@ class InstallDB(lazydb.LazyDB):
if package_name in self.installed_db: if package_name in self.installed_db:
del self.installed_db[package_name] del self.installed_db[package_name]
if not self.rev_deps_db:
self.rev_deps_db = self.__generate_revdeps()
# Cleanup revdep info # Cleanup revdep info
for revdep_info in list(self.rev_deps_db.values()): for revdep_info in list(self.rev_deps_db.values()):
if package_name in revdep_info: if package_name in revdep_info:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment