summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAravinda VK <avishwan@redhat.com>2016-11-17 17:07:36 +0530
committerAravinda VK <avishwan@redhat.com>2016-12-02 00:21:40 -0800
commite3f26f662c0cfb2c94afec84f2d2490db624f618 (patch)
tree48b2b0745e397d571244d65942c6b7a3d7e3b5b5
parent131790335f5cbc406a2043b49c06f604a7656649 (diff)
geo-rep: Handle ENOENT during unlink
Do not raise traceback if a file/dir not exists during unlink or rmdir > Reviewed-on: http://review.gluster.org/15868 > Smoke: Gluster Build System <jenkins@build.gluster.org> > NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org> > CentOS-regression: Gluster Build System <jenkins@build.gluster.org> > Reviewed-by: Vijay Bellur <vbellur@redhat.com> BUG: 1399090 Change-Id: Idd43ca1fa6ae6056c3cd493f0e2f151880a3968c Signed-off-by: Aravinda VK <avishwan@redhat.com> (cherry picked from commit ecd6da0a754f21909dbbd8189228f5a27a15df3e) Reviewed-on: http://review.gluster.org/15939 Smoke: Gluster Build System <jenkins@build.gluster.org> NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org> CentOS-regression: Gluster Build System <jenkins@build.gluster.org> Reviewed-by: Saravanakumar Arumugam <sarumuga@redhat.com>
-rw-r--r--geo-replication/syncdaemon/resource.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/geo-replication/syncdaemon/resource.py b/geo-replication/syncdaemon/resource.py
index 6d26a56a7bf..d284b8fb590 100644
--- a/geo-replication/syncdaemon/resource.py
+++ b/geo-replication/syncdaemon/resource.py
@@ -784,11 +784,13 @@ class Server(object):
if st.st_ino == st1.st_ino:
# we have a hard link, we can now unlink source
try:
- os.unlink(entry)
+ errno_wrap(os.unlink, [entry],
+ [ENOENT, ESTALE])
except OSError as e:
if e.errno == EISDIR:
try:
- os.rmdir(entry)
+ errno_wrap(os.rmdir, [entry],
+ [ENOENT, ESTALE])
except OSError as e:
if e.errno == ENOTEMPTY:
logging.error(