Bug 1313426 - gecko decision task: ValueError: No JSON object. fix SETA. r=dustin r=bustage-fix a=bustage-fix
authorJoel Maher <jmaher@mozilla.com>
Thu, 27 Oct 2016 15:12:33 -0400
changeset 346839 9272c247ecf1fc24a72b4ef3181d95c12b2063d2
parent 346400 9888f1a23001fde6435e1a9ed7e6d3af8dd988d8
child 346840 71536044069576fc877bf7ef0ba13a4ada793706
push id10298
push userraliiev@mozilla.com
push dateMon, 14 Nov 2016 12:33:03 +0000
treeherdermozilla-aurora@7e29173b1641 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersdustin, bustage-fix, bustage-fix
bugs1313426
milestone52.0a1
Bug 1313426 - gecko decision task: ValueError: No JSON object. fix SETA. r=dustin r=bustage-fix 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]