[Yum-devel] [PATCH 2/2] Use SQL rollback, on syncdb failure, even though it'll never happen anyway.

James Antill james at and.org
Tue Sep 20 15:58:41 UTC 2011


---
 yum/history.py |   13 ++++++++-----
 1 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/yum/history.py b/yum/history.py
index bbd9bf2..60a496d 100644
--- a/yum/history.py
+++ b/yum/history.py
@@ -738,6 +738,8 @@ class YumHistory:
         return self._conn.cursor()
     def _commit(self):
         return self._conn.commit()
+    def _rollback(self):
+        return self._conn.rollback()
 
     def close(self):
         if self._conn is not None:
@@ -1343,12 +1345,13 @@ class YumHistory:
 
     def sync_alldb(self, ipkg):
         """ Sync. all the data for rpmdb/yumdb for this installed pkg. """
-        if not self._wipe_anydb(ipkg, "rpm"):
+        if not (self._wipe_anydb(ipkg, "rpm") and
+                self._wipe_anydb(ipkg, "yum") and
+                self._save_rpmdb(ipkg) and
+                self._save_yumdb(ipkg)):
+            self._rollback()
             return False
-        self._wipe_anydb(ipkg, "yum")
-        if not self._save_rpmdb(ipkg):
-            return False
-        self._save_yumdb(ipkg)
+
         self._commit()
         return True
 
-- 
1.7.6.2



More information about the Yum-devel mailing list