summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorowsla <owsla@2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109>2008-12-23 18:24:13 +0000
committerowsla <owsla@2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109>2008-12-23 18:24:13 +0000
commit5941c9026bb06ed5aa666a7ace71e7c1f2af41c9 (patch)
treee850e1439c89ab08e90fd3bcd1891dc242b548d3
parent4a631e0ba92c7a7aea25dfeb36f645b55c51e856 (diff)
downloadrdiff-backup-5941c9026bb06ed5aa666a7ace71e7c1f2af41c9.tar.gz
Report that connection has dropped if filesystem operation returns ENOTCONN.
git-svn-id: http://svn.savannah.nongnu.org/svn/rdiff-backup/trunk@981 2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109
-rw-r--r--rdiff-backup/CHANGELOG3
-rw-r--r--rdiff-backup/rdiff_backup/robust.py2
2 files changed, 5 insertions, 0 deletions
diff --git a/rdiff-backup/CHANGELOG b/rdiff-backup/CHANGELOG
index 941ebc1..8285ced 100644
--- a/rdiff-backup/CHANGELOG
+++ b/rdiff-backup/CHANGELOG
@@ -1,6 +1,9 @@
New in v1.2.3 (????/??/??)
---------------------------
+Report that connection has dropped if filesystem operation returns ENOTCONN.
+Closes Ubuntu bug #219920. (Andrew Ferguson)
+
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
diff --git a/rdiff-backup/rdiff_backup/robust.py b/rdiff-backup/rdiff_backup/robust.py
index 0e8b41d..495cda3 100644
--- a/rdiff-backup/rdiff_backup/robust.py
+++ b/rdiff-backup/rdiff_backup/robust.py
@@ -74,6 +74,8 @@ def is_routine_fatal(exc):
return "Lost connection to the remote system"
elif isinstance(exc, SignalException):
return "Killed with signal %s" % (exc,)
+ elif isinstance(exc, EnvironmentError) and e.errno == errno.ENOTCONN:
+ return ("Filesystem reports connection failure:\n%s" % exc)
return None
def get_error_handler(error_type):