Bug 1313426 - gecko decision task: ValueError: No JSON object. fix SETA. r=dustin a=bustage-fix
authorJoel Maher <jmaher@mozilla.com>
Thu, 27 Oct 2016 15:12:33 -0400
changeset 319758 6d9707e3343f56e2f5a728c0214de4f724444d08
parent 319757 1ba788373d460f774c9cd1653510dc1765df58cc
child 319759 24e280ad35f725cdbf2764d2ba738b3c749a1b63
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, bustage-fix
bugs1313426
milestone52.0a1
Bug 1313426 - gecko decision task: ValueError: No JSON object. fix SETA. r=dustin a=bustage-fix 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]