[yum-cvs] yum/yum __init__.py, 1.323, 1.324 repos.py, 1.104, 1.105 sqlitesack.py, 1.96, 1.97 yumRepo.py, 1.43, 1.44
Jeremy Katz
katzj at linux.duke.edu
Wed Apr 25 18:28:34 UTC 2007
Update of /home/groups/yum/cvs/yum/yum
In directory login1.linux.duke.edu:/tmp/cvs-serv12950/yum
Modified Files:
__init__.py repos.py sqlitesack.py yumRepo.py
Log Message:
add close methods so that sqlite dbs get closed (Mark McLoughlin, rh#236409)
Index: __init__.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/__init__.py,v
retrieving revision 1.323
retrieving revision 1.324
diff -u -r1.323 -r1.324
--- __init__.py 25 Apr 2007 18:18:24 -0000 1.323
+++ __init__.py 25 Apr 2007 18:28:31 -0000 1.324
@@ -79,7 +79,13 @@
self.localPackages = [] # for local package handling
self.mediagrabber = None
-
+
+ def __del__(self):
+ self.close()
+
+ def close(self):
+ if self._repos:
+ self._repos.close()
def _transactionDataFactory(self):
"""Factory method returning TransactionData object"""
Index: repos.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/repos.py,v
retrieving revision 1.104
retrieving revision 1.105
diff -u -r1.104 -r1.105
--- repos.py 22 Jan 2007 04:33:22 -0000 1.104
+++ repos.py 25 Apr 2007 18:28:31 -0000 1.105
@@ -37,7 +37,13 @@
def __str__(self):
return str(self.repos.keys())
-
+
+ def __del__(self):
+ self.close()
+
+ def close(self):
+ for repo in self.repos.values():
+ repo.close()
def add(self, repoobj):
if self.repos.has_key(repoobj.id):
@@ -222,6 +228,12 @@
def __hash__(self):
return hash(self.id)
+ def __del__(self):
+ self.close()
+
+ def close(self):
+ pass
+
def setAttribute(self, key, value):
"""sets a generic attribute of this repository"""
setattr(self, key, value)
Index: sqlitesack.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/sqlitesack.py,v
retrieving revision 1.96
retrieving revision 1.97
diff -u -r1.96 -r1.97
--- sqlitesack.py 24 Apr 2007 21:13:06 -0000 1.96
+++ sqlitesack.py 25 Apr 2007 18:28:31 -0000 1.97
@@ -211,6 +211,13 @@
executeSQL(cur, "select count(pkgId) from packages")
return cur.fetchone()[0]
+ def close(self):
+ for dataobj in self.primarydb.values() + \
+ self.filelistsdb.values() + \
+ self.otherdb.values():
+ dataobj.close()
+ yumRepo.YumPackageSack.close(self)
+
def buildIndexes(self):
# We don't need these
return
Index: yumRepo.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/yumRepo.py,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -r1.43 -r1.44
--- yumRepo.py 19 Apr 2007 23:10:32 -0000 1.43
+++ yumRepo.py 25 Apr 2007 18:28:31 -0000 1.44
@@ -45,6 +45,12 @@
self.pc = packageClass
self.added = {}
+ def __del__(self):
+ self.close()
+
+ def close(self):
+ pass
+
def addDict(self, repo, datatype, dataobj, callback=None):
if self.added.has_key(repo):
if datatype in self.added[repo]:
@@ -241,6 +247,10 @@
self._grabfunc = None
self._grab = None
+ def close(self):
+ self.sack.close()
+ Repository.close(self)
+
def __getProxyDict(self):
self.doProxyDict()
if self._proxy_dict:
More information about the Yum-cvs-commits
mailing list