From ecd6da0a754f21909dbbd8189228f5a27a15df3e Mon Sep 17 00:00:00 2001 From: Aravinda VK Date: Thu, 17 Nov 2016 17:07:36 +0530 Subject: geo-rep: Handle ENOENT during unlink Do not raise traceback if a file/dir not exists during unlink or rmdir BUG: 1396062 Change-Id: Idd43ca1fa6ae6056c3cd493f0e2f151880a3968c Signed-off-by: Aravinda VK Reviewed-on: http://review.gluster.org/15868 Smoke: Gluster Build System NetBSD-regression: NetBSD Build System CentOS-regression: Gluster Build System Reviewed-by: Vijay Bellur --- geo-replication/syncdaemon/resource.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'geo-replication') diff --git a/geo-replication/syncdaemon/resource.py b/geo-replication/syncdaemon/resource.py index 0b756b750e7..8c490591849 100644 --- a/geo-replication/syncdaemon/resource.py +++ b/geo-replication/syncdaemon/resource.py @@ -818,11 +818,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( -- cgit