From bf8c871801fe75557823cdeb8228da9d18ece599 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. --- 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 3faaee7e82f..7d82910b57f 100644 --- a/lib/ansible/executor/task_executor.py +++ b/lib/ansible/executor/task_executor.py @@ -594,7 +594,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