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/backup.py


From: Andrew Ferguson
Subject: [Rdiff-backup-commits] rdiff-backup CHANGELOG rdiff_backup/backup.py
Date: Mon, 28 Jan 2008 04:33:55 +0000

CVSROOT:        /sources/rdiff-backup
Module name:    rdiff-backup
Changes by:     Andrew Ferguson <owsla> 08/01/28 04:33:55

Modified files:
        .              : CHANGELOG 
        rdiff_backup   : backup.py 

Log message:
        Try chmod'ing again if we can't open a file -- let's rdiff-backup work
        better in some AFS and NFS installs.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/rdiff-backup/CHANGELOG?cvsroot=rdiff-backup&r1=1.262&r2=1.263
http://cvs.savannah.gnu.org/viewcvs/rdiff-backup/rdiff_backup/backup.py?cvsroot=rdiff-backup&r1=1.44&r2=1.45

Patches:
Index: CHANGELOG
===================================================================
RCS file: /sources/rdiff-backup/rdiff-backup/CHANGELOG,v
retrieving revision 1.262
retrieving revision 1.263
diff -u -b -r1.262 -r1.263
--- CHANGELOG   26 Jan 2008 19:15:00 -0000      1.262
+++ CHANGELOG   28 Jan 2008 04:33:55 -0000      1.263
@@ -1,6 +1,10 @@
 New in v1.1.16 (????/??/??)
 ---------------------------
 
+Don't give up right away if we can't open a file. Try chmod'ing it even
+if we aren't root or don't own it, since that can sometimes work on AFS
+and NFS. Closes Savannah bug #21202. (Andrew Ferguson)
+
 Correctly handle updates to nested directories with unreadable permissions.
 Thanks to John Goerzen for the bug report. Closes Debian bugs #389134 and
 #411849. (Andrew Ferguson)

Index: rdiff_backup/backup.py
===================================================================
RCS file: /sources/rdiff-backup/rdiff-backup/rdiff_backup/backup.py,v
retrieving revision 1.44
retrieving revision 1.45
diff -u -b -r1.44 -r1.45
--- rdiff_backup/backup.py      26 Jan 2008 19:30:23 -0000      1.44
+++ rdiff_backup/backup.py      28 Jan 2008 04:33:55 -0000      1.45
@@ -212,6 +212,13 @@
                        return Rdiff.get_signature(dest_rp)
                except IOError, e:
                        if (e.errno == errno.EPERM):
+                               try:
+                                       # Try chmod'ing anyway -- This can work 
on NFS and AFS
+                                       # depending on the setup. We keep the 
if() statement
+                                       # above for performance reasons.
+                                       dest_rp.chmod(0400 | dest_rp.getperms())
+                                       return Rdiff.get_signature(dest_rp)
+                               except (IOError, OSError):
                                log.Log.FatalError("Could not open %s for 
reading. Check "
                                                "permissions on file." % 
(dest_rp.path,))
                        else:




reply via email to

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