Explorar o código

delete DockerClientTestCase.client class attribute on tearDownClass

This is a docker.client.Client and therefore contains a connection pool, so
each subclass of DockerClientTestCase can end up holding on to up to 10 Unix
socket file descriptors after the tests contained in the sub-class are
complete.

Before this by the end of a test run I was seeing ~100 open file descriptors,
~80 of which were Unix domain sockets. By cleaning these up only 15 Unix
sockets remain at the end (out of ~25 fds, the rest of which are the Python
interpretter, opened libraries etc).

Signed-off-by: Ian Campbell <[email protected]>
Ian Campbell %!s(int64=9) %!d(string=hai) anos
pai
achega
0483bcb472
Modificáronse 1 ficheiros con 4 adicións e 0 borrados
  1. 4 0
      tests/integration/testcases.py

+ 4 - 0
tests/integration/testcases.py

@@ -63,6 +63,10 @@ class DockerClientTestCase(unittest.TestCase):
 
         cls.client = docker_client(Environment(), version)
 
+    @classmethod
+    def tearDownClass(cls):
+        del cls.client
+
     def tearDown(self):
         for c in self.client.containers(
                 all=True,