diff --git a/rhodecode/lib/celerylib/__init__.py b/rhodecode/lib/celerylib/__init__.py --- a/rhodecode/lib/celerylib/__init__.py +++ b/rhodecode/lib/celerylib/__init__.py @@ -94,11 +94,11 @@ def __get_lockkey(func, *fargs, **fkwarg 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 diff --git a/rhodecode/lib/celerylib/tasks.py b/rhodecode/lib/celerylib/tasks.py --- a/rhodecode/lib/celerylib/tasks.py +++ b/rhodecode/lib/celerylib/tasks.py @@ -97,10 +97,11 @@ def get_commits_stats(repo_name, ts_min_ lockkey = __get_lockkey('get_commits_stats', repo_name, ts_min_y, ts_max_y) - lockkey_path = dn(dn(dn(dn(os.path.abspath(__file__))))) + lockkey_path = config['here'] + log.info('running task with lockkey %s', lockkey) try: - 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('"', "") diff --git a/rhodecode/lib/indexers/__init__.py b/rhodecode/lib/indexers/__init__.py --- a/rhodecode/lib/indexers/__init__.py +++ b/rhodecode/lib/indexers/__init__.py @@ -101,7 +101,7 @@ class MakeIndex(BasePasterCommand): from rhodecode.lib.pidlock import LockHeld, DaemonLock from rhodecode.lib.indexers.daemon import WhooshIndexingDaemon try: - 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)\ diff --git a/rhodecode/lib/pidlock.py b/rhodecode/lib/pidlock.py --- a/rhodecode/lib/pidlock.py +++ b/rhodecode/lib/pidlock.py @@ -29,17 +29,17 @@ class DaemonLock(object): """daemon locking USAGE: try: - l = DaemonLock(desc='test lock') + l = DaemonLock(file_='/path/tolockfile',desc='test lock') main() l.release() except LockHeld: 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 diff --git a/rhodecode/lib/utils.py b/rhodecode/lib/utils.py --- a/rhodecode/lib/utils.py +++ b/rhodecode/lib/utils.py @@ -486,7 +486,7 @@ def create_test_index(repo_location, con os.makedirs(index_location) try: - l = DaemonLock(file=jn(dn(index_location), 'make_index.lock')) + l = DaemonLock(file_=jn(dn(index_location), 'make_index.lock')) WhooshIndexingDaemon(index_location=index_location, repo_location=repo_location)\ .run(full_index=full_index)