summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEdward Hervey <edward@centricular.com>2017-12-18 10:51:05 +0100
committerEdward Hervey <bilboed@bilboed.com>2017-12-18 10:51:05 +0100
commitd71d28523d13cffb1a4a4cc06f9968f9281a84eb (patch)
tree6e5cdc79645dbf2b890f55cef635b4bf585a3dab
parentcb04515cbd8cd7c8dc0650360b1a3672228507e9 (diff)
validate/baseclasses: Release un-needed data when test ends
This was keeping around 500-700kB of data for each test, which was gradually raising memory usage of a full run by 100MB+ The reports are definitely not needed, and we only need to keep information from the subprocess env variable that we might need later on for final reporting
-rw-r--r--validate/launcher/baseclasses.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/validate/launcher/baseclasses.py b/validate/launcher/baseclasses.py
index 8c16bd3..125524f 100644
--- a/validate/launcher/baseclasses.py
+++ b/validate/launcher/baseclasses.py
@@ -519,6 +519,16 @@ class Test(Loggable):
if self.result is not Result.PASSED:
self._dump_log_files()
+ # Only keep around env variables we need later
+ clean_env = {}
+ for n in self.__env_variable:
+ clean_env[n] = self.proc_env.get(n, None)
+ self.proc_env = clean_env
+
+ # Don't keep around JSON report objects, they were processed
+ # in check_results already
+ self.reports = []
+
return self.result
class GstValidateTCPServer(socketserver.ThreadingMixIn, socketserver.TCPServer):