From d35377dac78a8fcc6e8acf0ffd92f47f44d70946 Mon Sep 17 00:00:00 2001 From: David Shrewsbury Date: Mon, 15 Aug 2016 13:29:06 -0400 Subject: [PATCH] Fix async logic when parsing fails (#17091) We want to NOT consider the async task as failed if the result is not parsed, which was the intent of: https://github.com/ansible/ansible/pull/16458 However, the logic doesn't actually do that because we default the 'parsed' value to True. It should default to False so that we continue waiting, as intended. (cherry picked from commit bf8c871801fe75557823cdeb8228da9d18ece599) --- lib/ansible/executor/task_executor.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/ansible/executor/task_executor.py b/lib/ansible/executor/task_executor.py index 63e06ea5846..d79479556c9 100644 --- a/lib/ansible/executor/task_executor.py +++ b/lib/ansible/executor/task_executor.py @@ -587,7 +587,7 @@ class TaskExecutor: # have issues which result in a half-written/unparseable result # file on disk, which manifests to the user as a timeout happening # before it's time to timeout. - if int(async_result.get('finished', 0)) == 1 or ('failed' in async_result and async_result.get('parsed', True)) or 'skipped' in async_result: + if int(async_result.get('finished', 0)) == 1 or ('failed' in async_result and async_result.get('parsed', False)) or 'skipped' in async_result: break time_left -= self._task.poll