[yum-cvs] yum/yum __init__.py, 1.303, 1.304 packageSack.py, 1.27, 1.28 sqlitesack.py, 1.81, 1.82

Seth Vidal skvidal at linux.duke.edu
Sun Mar 4 21:34:12 UTC 2007


Update of /home/groups/yum/cvs/yum/yum
In directory login1.linux.duke.edu:/tmp/cvs-serv24993/yum

Modified Files:
	__init__.py packageSack.py sqlitesack.py 
Log Message:

kill performance hit on excludePackage() call by not referencing the same
information 4 times for no apparent reason.


Index: __init__.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/__init__.py,v
retrieving revision 1.303
retrieving revision 1.304
diff -u -r1.303 -r1.304
--- __init__.py	4 Mar 2007 18:48:44 -0000	1.303
+++ __init__.py	4 Mar 2007 21:34:10 -0000	1.304
@@ -578,14 +578,15 @@
         else:
             self.verbose_logger.log(logginglevels.INFO_2, 'Excluding Packages from %s',
                 repo.name)
-            
+        
         exactmatch, matched, unmatched = \
            parsePackages(self.pkgSack.returnPackages(repoid), excludelist, casematch=1)
-        
+
         for po in exactmatch + matched:
             self.verbose_logger.debug('Excluding %s', po)
-            self.pkgSack.delPackage(po)
-      
+            po.repo.sack.delPackage(po)
+            
+        
         self.verbose_logger.log(logginglevels.INFO_2, 'Finished')
 
     def includePackages(self, repo):

Index: packageSack.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/packageSack.py,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- packageSack.py	1 Mar 2007 05:54:45 -0000	1.27
+++ packageSack.py	4 Mar 2007 21:34:10 -0000	1.28
@@ -288,7 +288,7 @@
 
     def delPackage(self, obj):
         """Delete a pkgobject if it exists in every sub-sack."""
-        sack = self.sacks[obj.repoid]
+        sack = self.sacks[obj.repo.id]
         sack.delPackage(obj)
 
 

Index: sqlitesack.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/sqlitesack.py,v
retrieving revision 1.81
retrieving revision 1.82
diff -u -r1.81 -r1.82
--- sqlitesack.py	4 Mar 2007 18:48:44 -0000	1.81
+++ sqlitesack.py	4 Mar 2007 21:34:10 -0000	1.82
@@ -222,12 +222,11 @@
     # Because we don't want to remove a package from the database we just
     # add it to the exclude list
     def delPackage(self, obj):
-        repo = obj.repo
-        if not self.excludes.has_key(repo):
-            self.excludes[repo] = {}
-
-        self.excludes[repo][obj.pkgId] = 1
+        if not self.excludes.has_key(obj.repo):
+            self.excludes[obj.repo] = {}
+        self.excludes[obj.repo][obj.pkgId] = 1
         self.pkglist = None
+        
 
     def _excluded(self, repo, pkgId):
         if self.excludes.has_key(repo):




More information about the Yum-cvs-commits mailing list