Bug 1313426 - gecko decision task: ValueError: No JSON object. fix SETA. r=dustin
authorJoel Maher <jmaher@mozilla.com>
Thu, 27 Oct 2016 15:12:33 -0400
changeset 319812 f1e994a312d241ef372508d79437e5c26194e3c7
parent 319811 a18f7b70b8089682aca7b3ae319b205f1b14869b
child 319813 3d6e90d77c8d84f3777cdd955793fef6921eea4f
push id20748
push userphilringnalda@gmail.com
push dateFri, 28 Oct 2016 03:39:55 +0000
treeherderfx-team@715360440695 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersdustin
bugs1313426
milestone52.0a1
Bug 1313426 - gecko decision task: ValueError: No JSON object. fix SETA. r=dustin MozReview-Commit-ID: F4V3VcDHMnW
taskcluster/taskgraph/util/seta.py
--- a/taskcluster/taskgraph/util/seta.py
+++ b/taskcluster/taskgraph/util/seta.py
@@ -59,16 +59,20 @@ class SETA(object):
         except exceptions.HTTPError:
             logger.warning("We got bad Http response from ouija,"
                            " we will treat all test tasks as high value.")
 
         # We just print the error out as a debug message if we failed to catch the exception above
         except exceptions.RequestException as error:
             logger.warning(error)
 
+        # When we get invalid JSON (i.e. 500 error), it results in a ValueError (bug 1313426)
+        except ValueError as error:
+            logger.warning("Invalid JSON, possible server error: {}".format(error))
+
         return low_value_tasks
 
     def is_low_value_task(self, label, project):
         # cache the low value tasks per project to avoid repeated SETA server queries
         if project not in self.low_value_tasks:
             self.low_value_tasks[project] = self.query_low_value_tasks(project)
         return label in self.low_value_tasks[project]