---
yum/transactioninfo.py | 9 +++++++++
1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/yum/transactioninfo.py b/yum/transactioninfo.py
index b0c7ddd..55643ce 100644
--- a/yum/transactioninfo.py
+++ b/yum/transactioninfo.py
@@ -104,6 +104,8 @@ class TransactionData:
self.depupdated = []
self.reinstalled = []
self.downgraded = []
+
+ self._future_rpmdbv = None
def __len__(self):
return len(self.pkgdict)
@@ -618,6 +620,12 @@ class TransactionData:
""" Return a simple version for the future rpmdb. Works like
rpmdb.simpleVersion(main_only=True)[0], but for the state the rpmdb
will be in after the transaction. """
+
+ if self._future_rpmdbv is not None:
+ sc, ret = self._future_rpmdbv
+ if sc == self.state_counter:
+ return ret
+
pkgs = self.rpmdb.returnPackages()
_reinstalled_pkgtups = {}
for txmbr in self.getMembersWithState(None, TS_INSTALL_STATES):
@@ -657,6 +665,7 @@ class TransactionData:
self.rpmdb.transactionCachePackageChecksums(pkg_checksum_tups)
+ self._future_rpmdbv = (self.state_counter, main)
return main
def findObsoletedByThisMember(self, txmbr):
--
1.7.3.4
_______________________________________________
Yum-devel mailing list
[email protected]
http://lists.baseurl.org/mailman/listinfo/yum-devel