Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
| 2 <head> | 2 <head> |
| 3 <title>Build Failure</title> | 3 <title>Build Failure</title> |
| 4 <meta charset="utf-8"> | 4 <meta charset="utf-8"> |
| 5 <link rel="stylesheet" href="/common.css"> | 5 <link rel="stylesheet" href="/common.css"> |
| 6 <style> | 6 <style> |
| 7 .running { | 7 .running { |
| 8 color: #666666; | 8 color: #666666; |
| 9 background-color: #fffc6c; | 9 background-color: #fffc6c; |
| 10 border-color: #c5c56d; | 10 border-color: #c5c56d; |
| (...skipping 235 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 246 | 246 |
| 247 tableString += generateHeuristicCulpritCls(result.heuristic_analysis.s uspected_cls, result.supported); | 247 tableString += generateHeuristicCulpritCls(result.heuristic_analysis.s uspected_cls, result.supported); |
| 248 tableString += '</tr>'; | 248 tableString += '</tr>'; |
| 249 }); | 249 }); |
| 250 | 250 |
| 251 $('#reliable_failures_table tbody').append(tableString); | 251 $('#reliable_failures_table tbody').append(tableString); |
| 252 $('#reliable_failures').removeClass('not-display'); | 252 $('#reliable_failures').removeClass('not-display'); |
| 253 } | 253 } |
| 254 } | 254 } |
| 255 | 255 |
| 256 function displayReliableFailuresToSheriffs(step_name, results) { | |
| 257 if (!jQuery.isEmptyObject(results)) { | |
| 258 var tableString = ''; | |
| 259 $.each(results, function(index, result) { | |
| 260 tableString += '<tr>'; | |
| 261 | |
| 262 var tryJob = result.try_job; | |
| 263 var tryJobCulprit = tryJob.culprit; | |
| 264 var rowspan = 1; | |
| 265 | |
| 266 if (jQuery.isEmptyObject(tryJobCulprit)) { | |
| 267 rowspan = result.heuristic_analysis.suspected_cls.length > 0 ? resul t.heuristic_analysis.suspected_cls.length : 1; | |
| 268 } | |
| 269 tableString += generateCommonCellsForAllCategories(step_name, 'determi ned', index, result.tests, result.first_failure, result.last_pass, 1); | |
| 270 | |
| 271 if (! jQuery.isEmptyObject(tryJobCulprit)) { | |
| 272 tableString += '<td rowspan="' + rowspan + '">Try Job</td>'; | |
| 273 var build_number = result.try_job.try_job_key.split('/')[2]; // try _job_key would look like: 'master_name/builder_name/build_number'. | |
|
stgao
2016/05/26 01:02:22
This is not related to this CL.
It seems not good
chanli
2016/05/26 20:15:13
I removed the comments, though I'm not sure exactl
stgao
2016/05/26 20:27:08
It's better for the try_job_key format to be restr
chanli
2016/05/26 21:22:25
Got it. I'll make the change in a separate CL.
| |
| 274 tableString += '<td rowspan="' + rowspan + '"><a href="' + findit.bu ilderUrl + '/builds/' + build_number + '">' + build_number + '</a></td>'; | |
| 275 var review_url = tryJobCulprit.url || tryJobCulprit.review_url || (f indit.defaultGitBaseUrl + tryJobCulprit.revision); | |
| 276 tableString += '<td rowspan="' + rowspan + '"><a href="' + review_ur l + '">' + tryJobCulprit.commit_position || tryJobCulprit.revision + '</a></td>' ; | |
| 277 // Right now this cell is only for scores of heuristic results, plac eholder for confidence in the future. | |
| 278 tableString += '<td rowspan="' + rowspan + '">N/A</td>'; | |
| 279 tableString += '<td rowspan="' + rowspan + '">'; | |
| 280 tableString += '<li>Reliable failure: <a href="' + tryJob.task_url+ '">' + tryJob.task_id + '</a></li>'; | |
| 281 if (tryJob.try_job_url) { | |
| 282 tableString += '<li>For try job details: <a href="' + tryJob.try_j ob_url+ '">' + tryJob.try_job_build_number + '</a></li>'; | |
| 283 } | |
| 284 tableString += '</td>'; | |
| 285 tableString += '<td rowspan="' + rowspan + '">Try job completed succ essfully.</td>'; | |
| 286 | |
| 287 } else { | |
| 288 if (result.heuristic_analysis.suspected_cls.length > 0) { | |
| 289 tableString += '<td rowspan="' + rowspan + '">Heuristic Analysis</ td>'; | |
| 290 tableString += generateHeuristicCulpritCls(result.heuristic_analys is.suspected_cls, result.supported); | |
| 291 } else { | |
| 292 var no_result_reason = 'Not Found'; | |
| 293 if (! result.supported) { | |
| 294 no_result_reason = 'Not Supported'; | |
| 295 } | |
| 296 tableString += '<td colspan="5" rowspan="' + rowspan + '">' + no_r esult_reason + '</td>'; | |
| 297 } | |
| 298 tableString += '<td rowspan="' + rowspan + '">' + findit.tryjobStatu sMessageMap[tryJob.status] + '</td>'; | |
| 299 } | |
| 300 | |
| 301 tableString += '</tr>'; | |
| 302 }); | |
| 303 | |
| 304 $('#reliable_failures_sheriffs_table tbody').append(tableString); | |
| 305 $('#reliable_failures_sheriffs').removeClass('not-display'); | |
| 306 } | |
| 307 } | |
| 308 | |
| 256 function displayFlakyFailures(step_name, results) { | 309 function displayFlakyFailures(step_name, results) { |
| 257 if (!jQuery.isEmptyObject(results)) { | 310 if (!jQuery.isEmptyObject(results)) { |
| 258 var tableString = ''; | 311 var tableString = ''; |
| 259 $.each(results, function(index, result) { | 312 $.each(results, function(index, result) { |
| 260 tableString += '<tr>'; | 313 tableString += '<tr>'; |
| 261 var rowspan = result.heuristic_analysis.suspected_cls.length > 0 ? res ult.heuristic_analysis.suspected_cls.length : 1; | 314 var rowspan = result.heuristic_analysis.suspected_cls.length > 0 ? res ult.heuristic_analysis.suspected_cls.length : 1; |
| 262 tableString += generateCommonCellsForAllCategories(step_name, 'flaky', index, result.tests, result.first_failure, result.last_pass, rowspan); | 315 tableString += generateCommonCellsForAllCategories(step_name, 'flaky', index, result.tests, result.first_failure, result.last_pass, rowspan); |
| 263 | 316 |
| 264 tableString += '<td rowspan="' + rowspan + '"><a href="' + result.try_ job.task_url + '">' + result.try_job.task_id + '</a></td>'; | 317 tableString += '<td rowspan="' + rowspan + '"><a href="' + result.try_ job.task_url + '">' + result.try_job.task_id + '</a></td>'; |
| 265 | 318 |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 311 // TODO: use another style when no culprit CL is found. | 364 // TODO: use another style when no culprit CL is found. |
| 312 $('#status_message').text('completed'); | 365 $('#status_message').text('completed'); |
| 313 $('#status_message').attr('class', 'completed'); | 366 $('#status_message').attr('class', 'completed'); |
| 314 | 367 |
| 315 $('.triage').click(triageAnalysisResult); | 368 $('.triage').click(triageAnalysisResult); |
| 316 | 369 |
| 317 if (!jQuery.isEmptyObject(findit.analysisResult)) { | 370 if (!jQuery.isEmptyObject(findit.analysisResult)) { |
| 318 $.each(findit.analysisResult, function(step_name, step_results) { | 371 $.each(findit.analysisResult, function(step_name, step_results) { |
| 319 $.each(step_results.results, function(category, results) { | 372 $.each(step_results.results, function(category, results) { |
| 320 if (category == 'reliable_failures') { | 373 if (category == 'reliable_failures') { |
| 374 {% if show_debug_info %} | |
| 321 displayReliableFailures(step_name, results); | 375 displayReliableFailures(step_name, results); |
| 376 {% else %} | |
| 377 displayReliableFailuresToSheriffs(step_name, results); | |
| 378 {% endif %} | |
| 322 } else if (category == 'unclassified_failures') { | 379 } else if (category == 'unclassified_failures') { |
| 323 displayUnclassifiedFailures(step_name, results); | 380 displayUnclassifiedFailures(step_name, results); |
| 324 } else if (category == 'flaky_failures') { | 381 } else if (category == 'flaky_failures') { |
| 325 displayFlakyFailures(step_name, results); | 382 displayFlakyFailures(step_name, results); |
| 326 } else { | 383 } else { |
| 327 alert('Unrecongnizable category of test results, please file a bug for it.'); | 384 alert('Unrecongnizable category of test results, please file a bug for it.'); |
| 328 } | 385 } |
| 329 }); | 386 }); |
| 330 }); | 387 }); |
| 331 } else { | 388 } else { |
| (...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 404 <thead> | 461 <thead> |
| 405 <tr> | 462 <tr> |
| 406 <th rowspan="3" title="Failed step name" width="150px">Step</t h> | 463 <th rowspan="3" title="Failed step name" width="150px">Step</t h> |
| 407 <th rowspan="3" title="Failed test name" width="300px">Test(s) </th> | 464 <th rowspan="3" title="Failed test name" width="300px">Test(s) </th> |
| 408 <th rowspan="3" title="The build cycle in which the step start ed to fail">First Failure</th> | 465 <th rowspan="3" title="The build cycle in which the step start ed to fail">First Failure</th> |
| 409 <th rowspan="3" title="The last build cycle in which the step passed">Last Pass<br>Before Failure</th> | 466 <th rowspan="3" title="The last build cycle in which the step passed">Last Pass<br>Before Failure</th> |
| 410 <th colspan="8">Suspected CLs</th> | 467 <th colspan="8">Suspected CLs</th> |
| 411 </tr> | 468 </tr> |
| 412 <tr> | 469 <tr> |
| 413 <th colspan="3">Try Job Result</th> | 470 <th colspan="3">Try Job Result</th> |
| 414 <th colspan="4">Heuristic Analysis Result</th> | 471 <th colspan="5">Heuristic Analysis Result</th> |
| 415 </tr> | 472 </tr> |
| 416 <tr> | 473 <tr> |
| 417 <th title="The build cycle in which the CL was built or tested for the first time">Build Number</th> | 474 <th title="The build cycle in which the CL was built or tested for the first time">Build Number</th> |
| 418 <th title="Git commit position/hash">Commit</th> | 475 <th title="Git commit position/hash">Commit</th> |
| 419 <th title="Information about related swarming rerun and try jo b">Swarming rerun and<br>Try Job Info</th> | 476 <th title="Information about related swarming rerun and try jo b">Swarming rerun and<br>Try Job Info</th> |
| 420 <th title="The build cycle in which the CL was built or tested for the first time">Build Number</th> | 477 <th title="The build cycle in which the CL was built or tested for the first time">Build Number</th> |
| 421 <th title="Git commit position/hash">Commit</th> | 478 <th title="Git commit position/hash">Commit</th> |
| 422 <th title="The higher score, the more suspected">Score (<a cla ss="score-info" href="javascript:">?</a>)</th> | 479 <th title="The higher score, the more suspected">Score (<a cla ss="score-info" href="javascript:">?</a>)</th> |
| 423 <th title="Why this CL is related to the failure">Hints</th> | 480 <th title="Why this CL is related to the failure">Hints</th> |
| 424 </tr> | 481 </tr> |
| 425 </thead> | 482 </thead> |
| 426 <tbody> | 483 <tbody> |
| 427 </tbody> | 484 </tbody> |
| 428 </table> | 485 </table> |
| 429 <br> | 486 <br> |
| 430 </div> | 487 </div> |
| 431 | 488 |
| 489 <div id="reliable_failures_sheriffs" class='not-display'> | |
| 490 <b>Reliable failures</b> | |
| 491 <table id="reliable_failures_sheriffs_table"> | |
| 492 <thead> | |
| 493 <tr> | |
| 494 <th rowspan="2" title="Failed step name" width="150px">Step</t h> | |
| 495 <th rowspan="2" title="Failed test name" width="300px">Test(s) </th> | |
| 496 <th rowspan="2" title="The build cycle in which the step start ed to fail">First Failure</th> | |
| 497 <th rowspan="2" title="The last build cycle in which the step passed">Last Pass<br>Before Failure</th> | |
| 498 <th colspan="6">Suspected CLs</th> | |
| 499 </tr> | |
| 500 <tr> | |
| 501 <th title="The source of result: Try Job or Heuristic Analysis .">Result Source</th> | |
|
stgao
2016/05/26 01:02:22
"Result Source" --> "Analysis approach"? It would
chanli
2016/05/26 20:15:13
Done.
| |
| 502 <th title="The build cycle in which the CL was built or tested for the first time">Build Number</th> | |
| 503 <th title="Git commit position/hash">Commit</th> | |
| 504 <th title="The higher score, the more suspected">Score (<a cla ss="score-info" href="javascript:">?</a>)</th> | |
| 505 <th title="Why this CL is related to the failure">Reason</th> | |
| 506 <th title="Additional information such as the status of try jo b.">Note</th> | |
| 507 </tr> | |
| 508 </thead> | |
| 509 <tbody> | |
| 510 </tbody> | |
| 511 </table> | |
| 512 <br> | |
| 513 </div> | |
| 514 | |
| 432 <div id="flaky_failures" class='not-display'> | 515 <div id="flaky_failures" class='not-display'> |
| 433 <b>Flaky failures</b> | 516 <b>Flaky failures</b> |
| 434 <table id="flaky_failures_table"> | 517 <table id="flaky_failures_table"> |
| 435 <thead> | 518 <thead> |
| 436 <tr> | 519 <tr> |
| 437 <th rowspan="3" title="Failed step name" width="150px">Step</t h> | 520 <th rowspan="2" title="Failed step name" width="150px">Step</t h> |
|
stgao
2016/05/26 01:02:22
Should we show that the result is from heuristic?
chanli
2016/05/26 20:15:13
Done.
| |
| 438 <th rowspan="3" title="Failed test name" width="300px">Test(s) </th> | 521 <th rowspan="2" title="Failed test name" width="300px">Test(s) </th> |
| 439 <th rowspan="3" title="The build cycle in which the step start ed to fail">First Failure</th> | 522 <th rowspan="2" title="The build cycle in which the step start ed to fail">First Failure</th> |
| 440 <th rowspan="3" title="The last build cycle in which the step passed">Last Pass<br>Before Failure</th> | 523 <th rowspan="2" title="The last build cycle in which the step passed">Last Pass<br>Before Failure</th> |
| 441 <th rowspan="3" title="link to swarming rerun">Swarming Rerun< /th> | 524 <th rowspan="2" title="link to swarming rerun">Swarming Rerun< /th> |
| 442 <th colspan="4">Suspected CLs</th> | 525 <th colspan="4">Suspected CLs</th> |
| 443 </tr> | 526 </tr> |
| 444 <tr> | 527 <tr> |
| 445 <th colspan="4">Heuristic Analysis Result</th> | |
| 446 </tr> | |
| 447 <tr> | |
| 448 <th title="The build cycle in which the CL was built or tested for the first time">Build Number</th> | 528 <th title="The build cycle in which the CL was built or tested for the first time">Build Number</th> |
| 449 <th title="Git commit position/hash">Commit</th> | 529 <th title="Git commit position/hash">Commit</th> |
| 450 <th title="The higher score, the more suspected">Score (<a cla ss="score-info" href="javascript:">?</a>)</th> | 530 <th title="The higher score, the more suspected">Score (<a cla ss="score-info" href="javascript:">?</a>)</th> |
| 451 <th title="Why this CL is related to the failure">Hints</th> | 531 <th title="Why this CL is related to the failure">Hints</th> |
| 452 </tr> | 532 </tr> |
| 453 </thead> | 533 </thead> |
| 454 <tbody> | 534 <tbody> |
| 455 </tbody> | 535 </tbody> |
| 456 </table> | 536 </table> |
| 457 <br> | 537 <br> |
| 458 </div> | 538 </div> |
| 459 | 539 |
| 460 <div id="unclassified_failures" class='not-display'> | 540 <div id="unclassified_failures" class='not-display'> |
| 461 <b>Unclassified failures</b> | 541 <b>Unclassified failures</b> |
| 462 <table id="unclassified_failures_table"> | 542 <table id="unclassified_failures_table"> |
| 463 <thead> | 543 <thead> |
| 464 <tr> | 544 <tr> |
| 465 <th rowspan="3" title="Failed step name" width="150px">Step</t h> | 545 <th rowspan="2" title="Failed step name" width="150px">Step</t h> |
| 466 <th rowspan="3" title="Failed test name" width="300px">Test(s) </th> | 546 <th rowspan="2" title="Failed test name" width="300px">Test(s) </th> |
| 467 <th rowspan="3" title="The build cycle in which the step start ed to fail">First Failure</th> | 547 <th rowspan="2" title="The build cycle in which the step start ed to fail">First Failure</th> |
| 468 <th rowspan="3" title="The last build cycle in which the step passed">Last Pass<br>Before Failure</th> | 548 <th rowspan="2" title="The last build cycle in which the step passed">Last Pass<br>Before Failure</th> |
| 469 <th rowspan="3" title="The reason why we're not sure about thi s result">Reason</th> | 549 <th rowspan="2" title="The reason why we're not sure about thi s result">Reason</th> |
| 470 <th colspan="4">Suspected CLs</th> | 550 <th colspan="4">Suspected CLs</th> |
| 471 </tr> | 551 </tr> |
| 472 <tr> | 552 <tr> |
| 473 <th colspan="4">Heuristic Analysis Result</th> | |
| 474 </tr> | |
| 475 <tr> | |
| 476 <th title="The build cycle in which the CL was built or tested for the first time">Build Number</th> | 553 <th title="The build cycle in which the CL was built or tested for the first time">Build Number</th> |
| 477 <th title="Git commit position/hash">Commit</th> | 554 <th title="Git commit position/hash">Commit</th> |
| 478 <th title="The higher score, the more suspected">Score (<a cla ss="score-info" href="javascript:">?</a>)</th> | 555 <th title="The higher score, the more suspected">Score (<a cla ss="score-info" href="javascript:">?</a>)</th> |
| 479 <th title="Why this CL is related to the failure">Hints</th> | 556 <th title="Why this CL is related to the failure">Hints</th> |
| 480 </tr> | 557 </tr> |
| 481 </thead> | 558 </thead> |
| 482 <tbody> | 559 <tbody> |
| 483 </tbody> | 560 </tbody> |
| 484 </table> | 561 </table> |
| 562 <br> | |
| 485 </div> | 563 </div> |
| 486 </div> | 564 </div> |
| 487 <br> | 565 |
| 488 <div class="thumbs-up-down"> | 566 <div class="thumbs-up-down"> |
| 489 <b>Feedback on Findit result:</b><br> | 567 <b>Feedback on Findit result:</b><br> |
| 490 <div class="triage thumb-up">Correct <img src="https://www.gstatic.com /images/icons/material/system/1x/thumb_up_black_24dp.png"/></div> | 568 <div class="triage thumb-up">Correct <img src="https://www.gstatic.com /images/icons/material/system/1x/thumb_up_black_24dp.png"/></div> |
| 491 <div class="triage thumb-down"><img src="https://www.gstatic.com/image s/icons/material/system/1x/thumb_down_black_24dp.png"/> Incorrect</div> | 569 <div class="triage thumb-down"><img src="https://www.gstatic.com/image s/icons/material/system/1x/thumb_down_black_24dp.png"/> Incorrect</div> |
| 492 </div> | 570 </div> |
| 493 </div> | 571 </div> |
| 494 {% endif %} | 572 {% endif %} |
| 495 {% endif %} | 573 {% endif %} |
| 496 | 574 |
| 497 {% if show_triage_help_button %} | 575 {% if show_triage_help_button %} |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 534 appearing in the failure log. (eg: file.h was changed and | 612 appearing in the failure log. (eg: file.h was changed and |
| 535 file_unittest.cc or file_impl.cc appeared in the log.)</li> | 613 file_unittest.cc or file_impl.cc appeared in the log.)</li> |
| 536 <li>1: The CL rolled a dependency within src/DEPS and a file of that | 614 <li>1: The CL rolled a dependency within src/DEPS and a file of that |
| 537 dependency appears in the failure log. (eg: third_party/dep | 615 dependency appears in the failure log. (eg: third_party/dep |
| 538 was changed in src/DEPS and third_party/dep/f.cpp appeared | 616 was changed in src/DEPS and third_party/dep/f.cpp appeared |
| 539 in the log.)</li> | 617 in the log.)</li> |
| 540 </ul> | 618 </ul> |
| 541 (More rules will be added when implemented.) | 619 (More rules will be added when implemented.) |
| 542 </div> | 620 </div> |
| 543 </body> | 621 </body> |
| OLD | NEW |