Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(248)

Side by Side Diff: appengine/findit/model/flake/master_flake_analysis.py

Issue 2438673004: [Findit] Post analysis results of flakes to bug filed by chromium-try-flakes. (Closed)
Patch Set: Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 # Copyright 2016 The Chromium Authors. All rights reserved. 1 # Copyright 2016 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 import base64 5 import base64
6 6
7 from google.appengine.ext import ndb 7 from google.appengine.ext import ndb
8 8
9 from model import analysis_status 9 from model import analysis_status
10 from model.base_analysis import BaseAnalysis 10 from model.base_analysis import BaseAnalysis
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
60 @classmethod 60 @classmethod
61 def GetVersion(cls, master_name, builder_name, build_number, step_name, 61 def GetVersion(cls, master_name, builder_name, build_number, step_name,
62 test_name, version=None): # pragma: no cover. 62 test_name, version=None): # pragma: no cover.
63 return super(MasterFlakeAnalysis, cls).GetVersion( 63 return super(MasterFlakeAnalysis, cls).GetVersion(
64 key=MasterFlakeAnalysis._CreateAnalysisId( 64 key=MasterFlakeAnalysis._CreateAnalysisId(
65 master_name, builder_name, build_number, step_name, test_name), 65 master_name, builder_name, build_number, step_name, test_name),
66 version=version) 66 version=version)
67 67
68 def Reset(self): 68 def Reset(self):
69 super(MasterFlakeAnalysis, self).Reset() 69 super(MasterFlakeAnalysis, self).Reset()
70 self.original_master_name = None
71 self.original_builder_name = None
72 self.original_build_number = None
73 self.original_step_name = None
74 self.original_test_name = None
75 self.bug_id = None
70 self.swarming_rerun_results = [] 76 self.swarming_rerun_results = []
71 self.error = None 77 self.error = None
72 self.correct_regression_range = None 78 self.correct_regression_range = None
73 self.correct_culprit = None 79 self.correct_culprit = None
74 self.algorithm_parameters = None 80 self.algorithm_parameters = None
75 self.suspected_flake_build_number = None 81 self.suspected_flake_build_number = None
76 self.data_points = [] 82 self.data_points = []
77 83
84 # The original build/step/test in which a flake actually occurred.
85 # A CQ trybot step has to be mapped to a Waterfall buildbot step.
86 # A gtest suite.PRE_PRE_test has to be normalized to suite.test.
87 original_master_name = ndb.StringProperty(indexed=True)
88 original_builder_name = ndb.StringProperty(indexed=True)
89 original_build_number = ndb.IntegerProperty(indexed=True)
90 original_step_name = ndb.StringProperty(indexed=True)
91 original_test_name = ndb.StringProperty(indexed=True)
92
93 # The bug id in which this flake is reported.
94 bug_id = ndb.IntegerProperty(indexed=True)
95
78 # A list of dicts containing information about each swarming rerun's results 96 # A list of dicts containing information about each swarming rerun's results
79 # that were involved in this analysis. The contents of this list will be used 97 # that were involved in this analysis. The contents of this list will be used
80 # for metrics, such as the number of cache hits this analysis benefited from, 98 # for metrics, such as the number of cache hits this analysis benefited from,
81 # the number of swarming tasks that were needed end-to-end to find the 99 # the number of swarming tasks that were needed end-to-end to find the
82 # regressed build number (if any), etc. See FlakeSwarmingTaskData for exact 100 # regressed build number (if any), etc. See FlakeSwarmingTaskData for exact
83 # fields. 101 # fields.
84 swarming_rerun_results = ndb.LocalStructuredProperty( 102 swarming_rerun_results = ndb.LocalStructuredProperty(
85 FlakeSwarmingTaskData, repeated=True, compressed=True) 103 FlakeSwarmingTaskData, repeated=True, compressed=True)
86 104
87 # Error code and message, if any. 105 # Error code and message, if any.
(...skipping 17 matching lines...) Expand all
105 # 'upper_flake_threshold': 0.98 123 # 'upper_flake_threshold': 0.98
106 # } 124 # }
107 algorithm_parameters = ndb.JsonProperty(indexed=False) 125 algorithm_parameters = ndb.JsonProperty(indexed=False)
108 126
109 # The suspected build number to have introduced the flakiness. 127 # The suspected build number to have introduced the flakiness.
110 suspected_flake_build_number = ndb.IntegerProperty() 128 suspected_flake_build_number = ndb.IntegerProperty()
111 129
112 # The data points used to plot the flakiness graph build over build. 130 # The data points used to plot the flakiness graph build over build.
113 data_points = ndb.LocalStructuredProperty( 131 data_points = ndb.LocalStructuredProperty(
114 DataPoint, repeated=True, compressed=True) 132 DataPoint, repeated=True, compressed=True)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698