|
|
3604df |
From 8b41ad4af52ef1728df221dc506ef0ccd75472bb Mon Sep 17 00:00:00 2001
|
|
|
3604df |
From: Aravinda VK <avishwan@redhat.com>
|
|
|
3604df |
Date: Thu, 17 Nov 2016 17:07:36 +0530
|
|
|
3604df |
Subject: [PATCH 199/206] geo-rep: Handle ENOENT during unlink
|
|
|
3604df |
|
|
|
3604df |
Do not raise traceback if a file/dir not exists during
|
|
|
3604df |
unlink or rmdir
|
|
|
3604df |
|
|
|
3604df |
> Reviewed-on: http://review.gluster.org/15868
|
|
|
3604df |
> Smoke: Gluster Build System <jenkins@build.gluster.org>
|
|
|
3604df |
> NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
|
|
|
3604df |
> CentOS-regression: Gluster Build System <jenkins@build.gluster.org>
|
|
|
3604df |
> Reviewed-by: Vijay Bellur <vbellur@redhat.com>
|
|
|
3604df |
|
|
|
3604df |
BUG: 1385589
|
|
|
3604df |
Change-Id: Idd43ca1fa6ae6056c3cd493f0e2f151880a3968c
|
|
|
3604df |
Signed-off-by: Aravinda VK <avishwan@redhat.com>
|
|
|
3604df |
Reviewed-on: https://code.engineering.redhat.com/gerrit/91363
|
|
|
3604df |
Reviewed-by: Atin Mukherjee <amukherj@redhat.com>
|
|
|
3604df |
---
|
|
|
3604df |
geo-replication/syncdaemon/resource.py | 6 ++++--
|
|
|
3604df |
1 file changed, 4 insertions(+), 2 deletions(-)
|
|
|
3604df |
|
|
|
3604df |
diff --git a/geo-replication/syncdaemon/resource.py b/geo-replication/syncdaemon/resource.py
|
|
|
3604df |
index f3ce463..998fe27 100644
|
|
|
3604df |
--- a/geo-replication/syncdaemon/resource.py
|
|
|
3604df |
+++ b/geo-replication/syncdaemon/resource.py
|
|
|
3604df |
@@ -782,11 +782,13 @@ class Server(object):
|
|
|
3604df |
if st.st_ino == st1.st_ino:
|
|
|
3604df |
# we have a hard link, we can now unlink source
|
|
|
3604df |
try:
|
|
|
3604df |
- os.unlink(entry)
|
|
|
3604df |
+ errno_wrap(os.unlink, [entry],
|
|
|
3604df |
+ [ENOENT, ESTALE])
|
|
|
3604df |
except OSError as e:
|
|
|
3604df |
if e.errno == EISDIR:
|
|
|
3604df |
try:
|
|
|
3604df |
- os.rmdir(entry)
|
|
|
3604df |
+ errno_wrap(os.rmdir, [entry],
|
|
|
3604df |
+ [ENOENT, ESTALE])
|
|
|
3604df |
except OSError as e:
|
|
|
3604df |
if e.errno == ENOTEMPTY:
|
|
|
3604df |
logging.error(
|
|
|
3604df |
--
|
|
|
3604df |
2.9.3
|
|
|
3604df |
|