rdiff-backup-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Rdiff-backup-commits] rdiff-backup CHANGELOG rdiff_backup/Main.py


From: Andrew Ferguson
Subject: [Rdiff-backup-commits] rdiff-backup CHANGELOG rdiff_backup/Main.py
Date: Mon, 22 Dec 2008 19:25:07 +0000

CVSROOT:        /sources/rdiff-backup
Module name:    rdiff-backup
Changes by:     Andrew Ferguson <owsla> 08/12/22 19:25:07

Modified files:
        .              : CHANGELOG 
        rdiff_backup   : Main.py 

Log message:
        Print a more helpful message if we get an error while attempting to read
        an old current_mirror marker.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/rdiff-backup/CHANGELOG?cvsroot=rdiff-backup&r1=1.332&r2=1.333
http://cvs.savannah.gnu.org/viewcvs/rdiff-backup/rdiff_backup/Main.py?cvsroot=rdiff-backup&r1=1.126&r2=1.127

Patches:
Index: CHANGELOG
===================================================================
RCS file: /sources/rdiff-backup/rdiff-backup/CHANGELOG,v
retrieving revision 1.332
retrieving revision 1.333
diff -u -b -r1.332 -r1.333
--- CHANGELOG   22 Dec 2008 18:02:35 -0000      1.332
+++ CHANGELOG   22 Dec 2008 19:25:05 -0000      1.333
@@ -1,6 +1,11 @@
 New in v1.2.3 (????/??/??)
 ---------------------------
 
+Print a more helpful error message if we get an error while reading an old
+current_mirror marker. This can happen because it has been locked or deleted
+by a just-finished rdiff-backup process. Closes Ubuntu bugs #88140 and
+#284506. (Andrew Ferguson)
+
 Do not backup reparse points on native Windows. Thanks to John Covici for
 reporting the issue. (Andrew Ferguson)
 

Index: rdiff_backup/Main.py
===================================================================
RCS file: /sources/rdiff-backup/rdiff-backup/rdiff_backup/Main.py,v
retrieving revision 1.126
retrieving revision 1.127
diff -u -b -r1.126 -r1.127
--- rdiff_backup/Main.py        22 Dec 2008 17:08:56 -0000      1.126
+++ rdiff_backup/Main.py        22 Dec 2008 19:25:06 -0000      1.127
@@ -424,7 +424,10 @@
 def backup_set_rbdir(rpin, rpout):
        """Initialize data dir and logging"""
        global incdir
+       try:
        incdir = Globals.rbdir.append_path("increments")
+       except (OSError, IOError), exc:
+               Log.FatalError("Could not begin backup due to\n%s" % exc)
 
        assert rpout.lstat(), (rpout.path, rpout.lstat())
        if rpout.isdir() and not rpout.listdir(): # rpout is empty dir
@@ -543,7 +546,11 @@
                Log.FatalError("Could not find rdiff-backup repository at "
                                           + src_rp.path)
        restore_check_paths(src_rp, dest_rp, restore_as_of)
+       try:
        dest_rp.conn.fs_abilities.restore_set_globals(dest_rp)
+       except (OSError, IOError), exc:
+               print "\n"
+               Log.FatalError("Could not begin backup due to\n%s" % exc)
        init_user_group_mapping(dest_rp.conn)
        src_rp = restore_init_quoting(src_rp)
        restore_check_backup_dir(restore_root, src_rp, restore_as_of)
@@ -710,7 +717,7 @@
        try:
                
Globals.rbdir.conn.fs_abilities.single_set_globals(Globals.rbdir,
                                                                                
                                   read_only)
-       except IOError, exc:
+       except (OSError, IOError), exc:
                print("\n")
                Log.FatalError("Could not open rdiff-backup directory\n\n%s\n\n"
                                           "due to\n\n%s" % 
(Globals.rbdir.path, exc))
@@ -876,7 +883,12 @@
 """ % (Globals.rbdir.path,))
        elif len(curmir_incs) == 1: return 0
        else:
-               if not force: 
curmir_incs[0].conn.regress.check_pids(curmir_incs)
+               if not force:
+                       try:
+                               
curmir_incs[0].conn.regress.check_pids(curmir_incs)
+                       except (OSError, IOError), exc:
+                               Log.FatalError("Could not check if rdiff-backup 
is currently"
+                                                          "running due to\n%s" 
% exc)
                assert len(curmir_incs) == 2, "Found too many current_mirror 
incs!"
                return 1
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]