comparison pylons_app/lib/celerylib/tasks.py @ 504:d280aa1c85c6

removed pidlock from whoosh and added it as locked_task decorator
author Marcin Kuzminski <marcin@python-works.com>
date Sat, 25 Sep 2010 20:17:56 +0200
parents ac32a026c306
children d5efb83590ef
comparison
equal deleted inserted replaced
503:3d6d548ad3cc 504:d280aa1c85c6
64 settings[each.ui_section + '_' + k] = v 64 settings[each.ui_section + '_' + k] = v
65 65
66 return settings 66 return settings
67 67
68 @task 68 @task
69 @locked_task
69 def whoosh_index(repo_location, full_index): 70 def whoosh_index(repo_location, full_index):
70 log = whoosh_index.get_logger() 71 log = whoosh_index.get_logger()
71 from pylons_app.lib.pidlock import DaemonLock 72 from pylons_app.lib.indexers.daemon import WhooshIndexingDaemon
72 from pylons_app.lib.indexers.daemon import WhooshIndexingDaemon, LockHeld 73 WhooshIndexingDaemon(repo_location=repo_location).run(full_index=full_index)
73 try:
74 l = DaemonLock()
75 WhooshIndexingDaemon(repo_location=repo_location)\
76 .run(full_index=full_index)
77 l.release()
78 return 'Done'
79 except LockHeld:
80 log.info('LockHeld')
81 return 'LockHeld'
82
83 74
84 @task 75 @task
85 @locked_task 76 @locked_task
86 def get_commits_stats(repo_name, ts_min_y, ts_max_y): 77 def get_commits_stats(repo_name, ts_min_y, ts_max_y):
87 author_key_cleaner = lambda k: person(k).replace('"', "") #for js data compatibilty 78 author_key_cleaner = lambda k: person(k).replace('"', "") #for js data compatibilty