diff options
| author | Anssi Kääriäinen <akaariai@gmail.com> | 2013-03-17 11:26:27 +0200 |
|---|---|---|
| committer | Anssi Kääriäinen <akaariai@gmail.com> | 2013-03-17 11:28:52 +0200 |
| commit | 9bc8d887c76b987cc4c76c9a80760e1b315fc80e (patch) | |
| tree | 7af59c8a63037899a4765fbd5fb136814a00ed50 | |
| parent | 74a80a5169a1c870e6c2f78a18f67b366b0f60de (diff) | |
Fixed memory leak in tests
The AssertNumQueriesContext didn't reset connection's use_debug_cursor
in case there was an exception. This resulted in leaking query strings
into connection.queries. Maximum memory use pre-patch was around 700MB,
post-patch it is around 200MB for Django's test suite.
| -rw-r--r-- | django/test/testcases.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/django/test/testcases.py b/django/test/testcases.py index 83762ddee4..87779eabfd 100644 --- a/django/test/testcases.py +++ b/django/test/testcases.py @@ -162,9 +162,9 @@ class _AssertNumQueriesContext(CaptureQueriesContext): super(_AssertNumQueriesContext, self).__init__(connection) def __exit__(self, exc_type, exc_value, traceback): + super(_AssertNumQueriesContext, self).__exit__(exc_type, exc_value, traceback) if exc_type is not None: return - super(_AssertNumQueriesContext, self).__exit__(exc_type, exc_value, traceback) executed = len(self) self.test_case.assertEqual( executed, self.num, "%d queries executed, %d expected" % ( |
