Noticed this failure in a recent patch: https://review.openstack.org/#/c/113378/
Full console log from jenkins run: http://logs.openstack.org/78/113378/1/gate/gate-tempest-dsvm-postgres-full/d90bf37/console.html
Looks very similar to https://bugs.launchpad.net/tempest/+bug/1344989 (marked as fix-released)
Snippet below:
2014-08-12 16:35:24.766 | ==============================
2014-08-12 16:35:24.766 | Failed 1 tests - output below:
2014-08-12 16:35:24.766 | ==============================
2014-08-12 16:35:24.766 |
2014-08-12 16:35:24.766 | tempest.api.orchestration.stacks.test_stacks.StacksTestJSON.test_stack_crud_no_resources[gate,smoke]
2014-08-12 16:35:24.766 | ----------------------------------------------------------------------------------------------------
2014-08-12 16:35:24.766 |
2014-08-12 16:35:24.766 | Captured traceback:
2014-08-12 16:35:24.767 | ~~~~~~~~~~~~~~~~~~~
2014-08-12 16:35:24.767 | Traceback (most recent call last):
2014-08-12 16:35:24.767 | File "tempest/api/orchestration/stacks/test_stacks.py", line 65, in test_stack_crud_no_resources
2014-08-12 16:35:24.767 | resp = self.client.delete_stack(stack_identifier)
2014-08-12 16:35:24.767 | File "tempest/services/orchestration/json/orchestration_client.py", line 142, in delete_stack
2014-08-12 16:35:24.767 | return self.delete("stacks/%s" % str(stack_identifier))
2014-08-12 16:35:24.767 | File "tempest/common/rest_client.py", line 224, in delete
2014-08-12 16:35:24.767 | return self.request('DELETE', url, extra_headers, headers, body)
2014-08-12 16:35:24.767 | File "tempest/common/rest_client.py", line 430, in request
2014-08-12 16:35:24.767 | resp, resp_body)
2014-08-12 16:35:24.768 | File "tempest/common/rest_client.py", line 484, in _error_checker
2014-08-12 16:35:24.768 | raise exceptions.Conflict(resp_body)
2014-08-12 16:35:24.768 | Conflict: An object with that identifier already exists
2014-08-12 16:35:24.768 | Details: {u'title': u'Conflict', u'explanation': u'There was a conflict when trying to complete your request.', u'code': 409, u'error': {u'message': u'Stack heat-178867617 already has an action (CREATE) in progress.', u'traceback': u'Traceback (most recent call last):\n\n File "/opt/stack/new/heat/heat/engine/service.py", line 63, in wrapped\n return func(self, ctx, *args, **kwargs)\n\n File "/opt/stack/new/heat/heat/engine/service.py", line 781, in delete_stack\n stack.delete)\n\n File "/opt/stack/new/heat/heat/engine/service.py", line 113, in start_with_lock\n with lock.thread_lock(stack.id):\n\n File "/usr/lib/python2.7/contextlib.py", line 17, in __enter__\n return self.gen.next()\n\n File "/opt/stack/new/heat/heat/engine/stack_lock.py", line 136, in thread_lock\n self.release(stack_id)\n\n File "/opt/stack/new/heat/heat/openstack/common/excutils.py", line 82, in __exit__\n six.reraise(self.type_, self.value, self.tb)\n\n File "/opt/stack/new/heat/heat/engine/stack_lock.py", line 132, in thread_lock\n self.acquire()\n\n File "/opt/stack/new/heat/heat/engine/stack_lock.py", line 81, in acquire\n action=self.stack.action)\n\nActionInProgress: Stack heat-178867617 already has an action (CREATE) in progress.\n', u'type': u'ActionInProgress'}}
Hmm, looks similar to bug #1344989 but isn't AFAICS - that one was because we were doing two deletes, but this one is failing saying we have a *create* in progress when we trigger the delete, despite the fact that we just checked the stack was CREATE_COMPLETE:
https:/ /github. com/openstack/ tempest/ blob/master/ tempest/ api/orchestrati on/stacks/ test_stacks. py#L45