From bc6ec06d8f8e154f386d7f36468a3eb6482e0424 Mon Sep 17 00:00:00 2001 From: Matthew Jones Date: Thu, 30 Jan 2014 15:09:49 -0500 Subject: [PATCH] Rollback and retry the task update status. Disable default idle timeouts on certain tasks --- awx/main/tasks.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/awx/main/tasks.py b/awx/main/tasks.py index 16cc6cd0a0..711b223121 100644 --- a/awx/main/tasks.py +++ b/awx/main/tasks.py @@ -105,7 +105,9 @@ class BaseTask(Task): transaction.commit() save_succeeded = True except DatabaseError as e: - logger.debug("Database error encountered, retrying: " + str(e)) + transaction.rollback() + logger.debug("Database error encountered, retrying in 5 seconds: " + str(e)) + time.sleep(5) save_succeeded = False finally: if save_succeeded: @@ -448,7 +450,7 @@ class RunJob(BaseTask): return cwd def get_idle_timeout(self): - return getattr(settings, 'JOB_RUN_IDLE_TIMEOUT', 300) + return getattr(settings, 'JOB_RUN_IDLE_TIMEOUT', None) def get_password_prompts(self): d = super(RunJob, self).get_password_prompts() @@ -818,7 +820,7 @@ class RunInventoryUpdate(BaseTask): return self.get_path_to('..', 'plugins', 'inventory') def get_idle_timeout(self): - return getattr(settings, 'INVENTORY_UPDATE_IDLE_TIMEOUT', 300) + return getattr(settings, 'INVENTORY_UPDATE_IDLE_TIMEOUT', None) def pre_run_check(self, inventory_update, **kwargs): '''