@@ -91,17 +91,17 @@ def __get_lockkey(func, *fargs, **fkwarg
return lockkey
def locked_task(func):
def __wrapper(func, *fargs, **fkwargs):
lockkey = __get_lockkey(func, *fargs, **fkwargs)
lockkey_path = dn(dn(dn(os.path.abspath(__file__))))
lockkey_path = config['here']
log.info('running task with lockkey %s', lockkey)
try:
l = DaemonLock(jn(lockkey_path, lockkey))
l = DaemonLock(file_=jn(lockkey_path, lockkey))
ret = func(*fargs, **fkwargs)
l.release()
return ret
except LockHeld:
log.info('LockHeld')
return 'Task with key %s already running' % lockkey
@@ -94,16 +94,17 @@ def get_commits_stats(repo_name, ts_min_
log = get_commits_stats.get_logger()
except:
log = logging.getLogger(__name__)
lockkey = __get_lockkey('get_commits_stats', repo_name, ts_min_y,
ts_max_y)
lockkey_path = dn(dn(dn(dn(os.path.abspath(__file__)))))
lock = l = DaemonLock(jn(lockkey_path, lockkey))
lock = l = DaemonLock(file_=jn(lockkey_path, lockkey))
#for js data compatibilty cleans the key for person from '
akc = lambda k: person(k).replace('"', "")
co_day_auth_aggr = {}
commits_by_day_aggregate = {}
@@ -98,13 +98,13 @@ class MakeIndex(BasePasterCommand):
#======================================================================
# WHOOSH DAEMON
from rhodecode.lib.pidlock import LockHeld, DaemonLock
from rhodecode.lib.indexers.daemon import WhooshIndexingDaemon
l = DaemonLock(file=jn(dn(dn(index_location)), 'make_index.lock'))
l = DaemonLock(file_=jn(dn(dn(index_location)), 'make_index.lock'))
WhooshIndexingDaemon(index_location=index_location,
repo_location=repo_location,
repo_list=repo_list)\
.run(full_index=self.options.full_index)
@@ -26,23 +26,23 @@ class LockHeld(Exception):
class DaemonLock(object):
"""daemon locking
USAGE:
l = DaemonLock(desc='test lock')
l = DaemonLock(file_='/path/tolockfile',desc='test lock')
main()
sys.exit(1)
"""
def __init__(self, file=None, callbackfn=None,
def __init__(self, file_=None, callbackfn=None,
desc='daemon lock', debug=False):
self.pidfile = file if file else os.path.join(
self.pidfile = file_ if file_ else os.path.join(
os.path.dirname(__file__),
'running.lock')
self.callbackfn = callbackfn
self.desc = desc
self.debug = debug
self.held = False
@@ -483,13 +483,13 @@ def create_test_index(repo_location, con
index_location = os.path.join(config['app_conf']['index_dir'])
if not os.path.exists(index_location):
os.makedirs(index_location)
l = DaemonLock(file=jn(dn(index_location), 'make_index.lock'))
l = DaemonLock(file_=jn(dn(index_location), 'make_index.lock'))
repo_location=repo_location)\
.run(full_index=full_index)
pass
Status change: