go.chromium.org/luci@v0.0.0-20240309015107-7cdc2e660f33/analysis/proto/bq/failure_attribute_row.pb.go (about) 1 // Copyright 2023 The LUCI Authors. 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 15 // Code generated by protoc-gen-go. DO NOT EDIT. 16 // versions: 17 // protoc-gen-go v1.31.0 18 // protoc v3.21.7 19 // source: go.chromium.org/luci/analysis/proto/bq/failure_attribute_row.proto 20 21 package bqpb 22 23 import ( 24 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 25 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 26 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 27 reflect "reflect" 28 sync "sync" 29 ) 30 31 const ( 32 // Verify that this generated code is sufficiently up-to-date. 33 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 34 // Verify that runtime/protoimpl is sufficiently up-to-date. 35 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 36 ) 37 38 // FailureAttributeRow represents a row in a BigQuery table, 39 // `failure_attrbiutes`, that records the additional attributes of a test 40 // failure. 41 // Next ID: 7. 42 type FailureAttributeRow struct { 43 state protoimpl.MessageState 44 sizeCache protoimpl.SizeCache 45 unknownFields protoimpl.UnknownFields 46 47 // The LUCI project that the test failure belongs to. 48 Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"` 49 // The test results system from which the test originated. 50 // 51 // Currently, the only valid value is "resultdb". 52 TestResultSystem string `protobuf:"bytes,2,opt,name=test_result_system,json=testResultSystem,proto3" json:"test_result_system,omitempty"` 53 // The invocation from which this test result was ingested. This is 54 // the top-level invocation that was ingested, an "invocation" being 55 // a container of test results as identified by the source test result 56 // system. 57 // 58 // For ResultDB, LUCI Analysis ingests invocations corresponding to 59 // buildbucket builds. 60 // 61 // All test results ingested from the same invocation (i.e. with the 62 // same ingested_invocation_id) will have the same partition time. 63 IngestedInvocationId string `protobuf:"bytes,3,opt,name=ingested_invocation_id,json=ingestedInvocationId,proto3" json:"ingested_invocation_id,omitempty"` 64 // The identity of the test result in the test results system. Together 65 // with the test results sytstem, this uniquely identifies the test result 66 // that was clustered. 67 // 68 // For test results in ResultDB, the format is: 69 // "invocations/{INVOCATION_ID}/tests/{URL_ESCAPED_TEST_ID}/results/{RESULT_ID}" 70 // Where INVOCATION_ID, URL_ESCAPED_TEST_ID and RESULT_ID are values 71 // defined in ResultDB. 72 // 73 // Note that the test result ID is split over two fields (test_result_system, 74 // test_result_id), rather than as one field with a record type, so that 75 // BigQuery clustering can be defined over the ID (not possible if a 76 // record type was used). 77 TestResultId string `protobuf:"bytes,4,opt,name=test_result_id,json=testResultId,proto3" json:"test_result_id,omitempty"` 78 // The test result partition time identifies the beginning of the test 79 // result retention period, and corresponds approximately to the time 80 // the test result was produced. 81 // 82 // It is guaranteed that all test results from one presubmit run 83 // will have the same partition time. It is also guaranteed that all 84 // test results from one build will have the same partition time (in 85 // case of builds associated with presubmit runs this was implied by 86 // previous guarantee, but for testing that occurs outside presubmit 87 // this is an added guarantee). 88 PartitionTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=partition_time,json=partitionTime,proto3" json:"partition_time,omitempty"` 89 // The number of test runs that filtered out the test due to this failure. 90 // 91 // Conceptually, a test scheduler may decide to filter out certain tests when 92 // it sees the tests failed in some places. This field records the number of 93 // test runs that filerterd out the test due to this failure. The exact 94 // attribution rule (to determine which failures triggered the test filtering) 95 // is up to the implementation. 96 // 97 // For now, this field records the number of skipped runs caused by 98 // go/cros-test-filtering, and the attribution rule is defined in 99 // go/attribute-test-filtering-events-to-failures. 100 AttributedFilteredRunCount int64 `protobuf:"varint,6,opt,name=attributed_filtered_run_count,json=attributedFilteredRunCount,proto3" json:"attributed_filtered_run_count,omitempty"` 101 } 102 103 func (x *FailureAttributeRow) Reset() { 104 *x = FailureAttributeRow{} 105 if protoimpl.UnsafeEnabled { 106 mi := &file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_msgTypes[0] 107 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 108 ms.StoreMessageInfo(mi) 109 } 110 } 111 112 func (x *FailureAttributeRow) String() string { 113 return protoimpl.X.MessageStringOf(x) 114 } 115 116 func (*FailureAttributeRow) ProtoMessage() {} 117 118 func (x *FailureAttributeRow) ProtoReflect() protoreflect.Message { 119 mi := &file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_msgTypes[0] 120 if protoimpl.UnsafeEnabled && x != nil { 121 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 122 if ms.LoadMessageInfo() == nil { 123 ms.StoreMessageInfo(mi) 124 } 125 return ms 126 } 127 return mi.MessageOf(x) 128 } 129 130 // Deprecated: Use FailureAttributeRow.ProtoReflect.Descriptor instead. 131 func (*FailureAttributeRow) Descriptor() ([]byte, []int) { 132 return file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_rawDescGZIP(), []int{0} 133 } 134 135 func (x *FailureAttributeRow) GetProject() string { 136 if x != nil { 137 return x.Project 138 } 139 return "" 140 } 141 142 func (x *FailureAttributeRow) GetTestResultSystem() string { 143 if x != nil { 144 return x.TestResultSystem 145 } 146 return "" 147 } 148 149 func (x *FailureAttributeRow) GetIngestedInvocationId() string { 150 if x != nil { 151 return x.IngestedInvocationId 152 } 153 return "" 154 } 155 156 func (x *FailureAttributeRow) GetTestResultId() string { 157 if x != nil { 158 return x.TestResultId 159 } 160 return "" 161 } 162 163 func (x *FailureAttributeRow) GetPartitionTime() *timestamppb.Timestamp { 164 if x != nil { 165 return x.PartitionTime 166 } 167 return nil 168 } 169 170 func (x *FailureAttributeRow) GetAttributedFilteredRunCount() int64 { 171 if x != nil { 172 return x.AttributedFilteredRunCount 173 } 174 return 0 175 } 176 177 var File_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto protoreflect.FileDescriptor 178 179 var file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_rawDesc = []byte{ 180 0x0a, 0x42, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 181 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x2f, 182 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x62, 0x71, 0x2f, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 183 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x5f, 0x72, 0x6f, 0x77, 0x2e, 0x70, 184 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 185 0x73, 0x69, 0x73, 0x2e, 0x62, 0x71, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 186 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 187 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbf, 0x02, 0x0a, 0x13, 0x46, 0x61, 0x69, 0x6c, 188 0x75, 0x72, 0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x6f, 0x77, 0x12, 189 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 190 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x74, 0x65, 0x73, 191 0x74, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x18, 192 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 193 0x74, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x34, 0x0a, 0x16, 0x69, 0x6e, 0x67, 0x65, 0x73, 194 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 195 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x69, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x65, 196 0x64, 0x49, 0x6e, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x24, 0x0a, 197 0x0e, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x69, 0x64, 0x18, 198 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 199 0x74, 0x49, 0x64, 0x12, 0x41, 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 200 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 201 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 202 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 203 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x41, 0x0a, 0x1d, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 204 0x75, 0x74, 0x65, 0x64, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x72, 0x75, 205 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x1a, 0x61, 206 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x65, 207 0x64, 0x52, 0x75, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x2d, 0x5a, 0x2b, 0x67, 0x6f, 0x2e, 208 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 209 0x69, 0x2f, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 210 0x2f, 0x62, 0x71, 0x3b, 0x62, 0x71, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 211 } 212 213 var ( 214 file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_rawDescOnce sync.Once 215 file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_rawDescData = file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_rawDesc 216 ) 217 218 func file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_rawDescGZIP() []byte { 219 file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_rawDescOnce.Do(func() { 220 file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_rawDescData = protoimpl.X.CompressGZIP(file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_rawDescData) 221 }) 222 return file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_rawDescData 223 } 224 225 var file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_msgTypes = make([]protoimpl.MessageInfo, 1) 226 var file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_goTypes = []interface{}{ 227 (*FailureAttributeRow)(nil), // 0: luci.analysis.bq.FailureAttributeRow 228 (*timestamppb.Timestamp)(nil), // 1: google.protobuf.Timestamp 229 } 230 var file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_depIdxs = []int32{ 231 1, // 0: luci.analysis.bq.FailureAttributeRow.partition_time:type_name -> google.protobuf.Timestamp 232 1, // [1:1] is the sub-list for method output_type 233 1, // [1:1] is the sub-list for method input_type 234 1, // [1:1] is the sub-list for extension type_name 235 1, // [1:1] is the sub-list for extension extendee 236 0, // [0:1] is the sub-list for field type_name 237 } 238 239 func init() { file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_init() } 240 func file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_init() { 241 if File_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto != nil { 242 return 243 } 244 if !protoimpl.UnsafeEnabled { 245 file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 246 switch v := v.(*FailureAttributeRow); i { 247 case 0: 248 return &v.state 249 case 1: 250 return &v.sizeCache 251 case 2: 252 return &v.unknownFields 253 default: 254 return nil 255 } 256 } 257 } 258 type x struct{} 259 out := protoimpl.TypeBuilder{ 260 File: protoimpl.DescBuilder{ 261 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 262 RawDescriptor: file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_rawDesc, 263 NumEnums: 0, 264 NumMessages: 1, 265 NumExtensions: 0, 266 NumServices: 0, 267 }, 268 GoTypes: file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_goTypes, 269 DependencyIndexes: file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_depIdxs, 270 MessageInfos: file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_msgTypes, 271 }.Build() 272 File_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto = out.File 273 file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_rawDesc = nil 274 file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_goTypes = nil 275 file_go_chromium_org_luci_analysis_proto_bq_failure_attribute_row_proto_depIdxs = nil 276 }