diff --git a/VERSION b/VERSION index ea454a44..2065fe2c 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -Version 2.4.5-stable+timestamp.2013.04.03.14.45.24 +Version 2.4.5-stable+timestamp.2013.04.03.16.41.33 diff --git a/gluon/scheduler.py b/gluon/scheduler.py index 26c54089..6c5eafd2 100644 --- a/gluon/scheduler.py +++ b/gluon/scheduler.py @@ -563,16 +563,18 @@ class Scheduler(MetaScheduler): self.die() def wrapped_assign_tasks(self, db): + logger.debug('Assigning tasks...') db.commit() #db.commit() only for Mysql x = 0 while x < 10: try: self.assign_tasks(db) db.commit() + logger.debug('Tasks assigned...') break except: db.rollback() - logger.error('TICKER: error assigning tasks') + logger.error('TICKER: error assigning tasks (%s)', x) x += 1 time.sleep(0.5) @@ -766,7 +768,7 @@ class Scheduler(MetaScheduler): db(sw.worker_name == self.worker_name).update( last_heartbeat=now, status=ACTIVE) self.worker_status[1] = 1 # re-activating the process - if self.worker_status[0] <> RUNNING: + if self.worker_status[0] != RUNNING: self.worker_status[0] = ACTIVE self.do_assign_tasks = False @@ -786,13 +788,17 @@ class Scheduler(MetaScheduler): inactive_workers._select(sw.worker_name)))(st.status == RUNNING)\ .update(assigned_worker_name='', status=QUEUED) inactive_workers.delete() - self.is_a_ticker = self.being_a_ticker() + try: + self.is_a_ticker = self.being_a_ticker() + except: + logger.error('Error coordinating TICKER') if self.worker_status[0] == ACTIVE: self.do_assign_tasks = True except: - pass + logger.error('Error cleaning up') db.commit() except: + logger.error('Error retrieving status') db.rollback() self.adj_hibernation() self.sleep()