Retrigger new traversals after resource timeout

If a resource times out, we still need to check whether there is a new
traversal underway that we need to retrigger, otherwise the new traversal
will never complete.

Change-Id: I4ac7ac88797b7fb14046b5668649b2277ee55517
Closes-Bug: #1721654
diff --git a/functional/test_simultaneous_update.py b/functional/test_simultaneous_update.py
index 9f10a38..0c562c0 100644
--- a/functional/test_simultaneous_update.py
+++ b/functional/test_simultaneous_update.py
@@ -81,3 +81,13 @@
         time.sleep(10)
 
         self.update_stack(stack_id, after)
+
+    @test.requires_convergence
+    def test_retrigger_timeout(self):
+        before, after = get_templates(delay_s=70)
+        stack_id = self.stack_create(template=before,
+                                     expected_status='CREATE_IN_PROGRESS',
+                                     timeout=1)
+        time.sleep(50)
+
+        self.update_stack(stack_id, after)