From 9db2826cd8dbcc0fb58f5434c21d00ca5c15c491 Mon Sep 17 00:00:00 2001 From: Aravinda VK Date: Tue, 6 Sep 2016 12:02:02 +0530 Subject: geo-rep: Fix ESTALE/EINVAL issue during set_{xtime,stime} Setfattr may get ESTALE/EINVAL if a file is being unlinked. To prevent worker crashing, added retry for these error messages. On second retry it will get ENOENT and that error is handled by ignoring. BUG: 1373373 Change-Id: Ic660fa13208366d57c8d3d492bbef611475e45b7 Signed-off-by: Aravinda VK Reviewed-on: http://review.gluster.org/15404 Reviewed-by: Saravanakumar Arumugam NetBSD-regression: NetBSD Build System CentOS-regression: Gluster Build System Reviewed-by: Kotresh HR Smoke: Gluster Build System --- geo-replication/syncdaemon/resource.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'geo-replication/syncdaemon/resource.py') diff --git a/geo-replication/syncdaemon/resource.py b/geo-replication/syncdaemon/resource.py index ddbf19688c5..0004a839e69 100644 --- a/geo-replication/syncdaemon/resource.py +++ b/geo-replication/syncdaemon/resource.py @@ -568,7 +568,8 @@ class Server(object): [path, '.'.join([cls.GX_NSPACE, uuid, 'stime']), struct.pack('!II', *mark)], - [ENOENT]) + [ENOENT], + [ESTALE, EINVAL]) @classmethod @_pathguard @@ -578,7 +579,8 @@ class Server(object): [path, '.'.join([cls.GX_NSPACE, uuid, 'entry_stime']), struct.pack('!II', *mark)], - [ENOENT]) + [ENOENT], + [ESTALE, EINVAL]) @classmethod @_pathguard @@ -588,7 +590,8 @@ class Server(object): [path, '.'.join([cls.GX_NSPACE, uuid, 'xtime']), struct.pack('!II', *mark)], - [ENOENT]) + [ENOENT], + [ESTALE, EINVAL]) @classmethod @_pathguard -- cgit