Bug 1358818 - avoid symbolication server for non-Windows platforms r?jmaher draft
authorIonut Goldan <ionut.goldan@softvision.ro>
Thu, 29 Jun 2017 15:14:26 -0700
changeset 604173 f8a230f5b71e35258a733658aaa6ffc7cc644574
parent 602051 f3483af8ecf997453064201c49c48a682c7f3c29
child 636109 dd4a32eb7fd7126d0bc797494b3c0436f96571e1
push id66981
push userbmo:ionut.goldan@softvision.ro
push dateWed, 05 Jul 2017 13:21:53 +0000
reviewersjmaher
bugs1358818
milestone56.0a1
Bug 1358818 - avoid symbolication server for non-Windows platforms r?jmaher MozReview-Commit-ID: AsvJUUoU3W4
testing/talos/talos/gecko_profile.py
testing/talos/talos/profiler/symbolication.py
--- a/testing/talos/talos/gecko_profile.py
+++ b/testing/talos/talos/gecko_profile.py
@@ -131,17 +131,18 @@ class GeckoProfile(object):
             "prefetchMaxSymbolsPerLib": 3,
             # Default symbol lookup directories
             "defaultApp": "FIREFOX",
             "defaultOs": "WINDOWS",
             # Paths to .SYM files, expressed internally as a
             # mapping of app or platform names to directories
             # Note: App & OS names from requests are converted
             # to all-uppercase internally
-            "symbolPaths": self.symbol_paths
+            "symbolPaths": self.symbol_paths,
+            "platformsRequiringSymbols": ["Windows", "Microsoft"]
         })
 
         if self.browser_config['symbols_path']:
             if mozfile.is_url(self.browser_config['symbols_path']):
                 symbolicator.integrate_symbol_zip_from_url(
                     self.browser_config['symbols_path']
                 )
             else:
--- a/testing/talos/talos/profiler/symbolication.py
+++ b/testing/talos/talos/profiler/symbolication.py
@@ -132,18 +132,20 @@ class ProfileSymbolicator:
             if platform.system() == "Darwin":
                 return OSXSymbolDumper()
             elif platform.system() == "Linux":
                 return LinuxSymbolDumper()
         except SymbolError:
             return None
 
     def integrate_symbol_zip_from_url(self, symbol_zip_url):
-        if self.have_integrated(symbol_zip_url):
+        if platform.system() not in self.options['platformsRequiringSymbols']\
+                or self.have_integrated(symbol_zip_url):
             return
+
         LogMessage("Retrieving symbol zip from {symbol_zip_url}...".format(
             symbol_zip_url=symbol_zip_url))
         try:
             io = urllib2.urlopen(symbol_zip_url, None, 30)
             with zipfile.ZipFile(cStringIO.StringIO(io.read())) as zf:
                 self.integrate_symbol_zip(zf)
             self._create_file_if_not_exists(self._marker_file(symbol_zip_url))
         except IOError: