[minor] add locking to scheduler

This commit is contained in:
Pratik Vyas 2013-12-01 13:06:24 +05:30 committed by Anand Doshi
parent ab536ecfb0
commit 4090932fca

View file

@ -6,6 +6,7 @@ class LockTimeoutError(Exception):
pass
def create_lock(name):
pre
lock_path = get_lock_path(name)
if not check_lock(lock_path):
return touch_file(lock_path)
@ -20,14 +21,14 @@ def touch_file(path):
def check_lock(path):
if not os.path.exists(path):
return False
if time() - os.path.getmtime(path) > 600:
if time() - os.path.mtime(path) > 600:
raise LockTimeoutError(path)
return True
def delete_lock(name):
lock_path = get_lock_path(name)
try:
os.remove(lock_path)
os.remove(path)
except OSError:
pass
return True