Merge "ensure servers are deleted between tests"
diff --git a/tempest/tests/compute/servers/test_servers.py b/tempest/tests/compute/servers/test_servers.py
index e7a8ec7..fcf9975 100644
--- a/tempest/tests/compute/servers/test_servers.py
+++ b/tempest/tests/compute/servers/test_servers.py
@@ -166,9 +166,27 @@
         super(ServersTestJSON, cls).setUpClass()
         cls.client = cls.servers_client
 
+    def tearDown(self):
+        # clean up any remaining servers and wait for them to fully
+        # delete. This is done because delete calls are async, and if
+        # deletes are running slow we could very well overrun system
+        # memory
+        self.clear_servers()
+
+        super(ServersTestJSON, self).tearDown()
+
 
 class ServersTestXML(base.BaseComputeTestXML, ServersTestBase):
     @classmethod
     def setUpClass(cls):
         super(ServersTestXML, cls).setUpClass()
         cls.client = cls.servers_client
+
+    def tearDown(self):
+        # clean up any remaining servers and wait for them to fully
+        # delete. This is done because delete calls are async, and if
+        # deletes are running slow we could very well overrun system
+        # memory
+        self.clear_servers()
+
+        super(ServersTestXML, self).tearDown()