diff options
author | Jeff Darcy <jdarcy@fb.com> | 2017-08-31 12:33:59 -0700 |
---|---|---|
committer | Jeff Darcy <jdarcy@fb.com> | 2017-08-31 12:33:59 -0700 |
commit | ed23e379ee397b3fed479c15b7551d2dbba9a05f (patch) | |
tree | fe9bc23b851e0ee5502a48f1362b3ef9b10052f3 /geo-replication/syncdaemon/syncdutils.py | |
parent | f2d57485d57e14a064c9ca6e83fe6c92131a8e37 (diff) | |
parent | d174f021a4e0667e60ce6abc038106ad9b74dc74 (diff) |
Merge remote-tracking branch 'origin/release-3.8' into release-3.8-fb
Change-Id: Ie35cd1c8c7808949ddf79b3189f1f8bf0ff70ed8
Diffstat (limited to 'geo-replication/syncdaemon/syncdutils.py')
-rw-r--r-- | geo-replication/syncdaemon/syncdutils.py | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/geo-replication/syncdaemon/syncdutils.py b/geo-replication/syncdaemon/syncdutils.py index 987e1bf186e..08450695a84 100644 --- a/geo-replication/syncdaemon/syncdutils.py +++ b/geo-replication/syncdaemon/syncdutils.py @@ -18,7 +18,7 @@ import logging import socket from threading import Lock, Thread as baseThread from errno import EACCES, EAGAIN, EPIPE, ENOTCONN, ECONNABORTED -from errno import EINTR, ENOENT, EPERM, ESTALE, errorcode +from errno import EINTR, ENOENT, EPERM, ESTALE, EBUSY, errorcode from signal import signal, SIGTERM import select as oselect from os import waitpid as owaitpid @@ -487,12 +487,12 @@ def errno_wrap(call, arg=[], errnos=[], retry_errnos=[]): # probably a screwed state, cannot do much... logging.warn('reached maximum retries (%s)...%s' % (repr(arg), ex)) - return ex.errno + raise time.sleep(0.250) # retry the call def lstat(e): - return errno_wrap(os.lstat, [e], [ENOENT], [ESTALE]) + return errno_wrap(os.lstat, [e], [ENOENT], [ESTALE, EBUSY]) class NoPurgeTimeAvailable(Exception): pass |