Chromium Code Reviews| OLD | NEW |
|---|---|
| 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 """Process crashes from Chrome crash server and find culprits for them.""" | 5 """Process crashes from Chrome crash server and find culprits for them.""" |
| 6 | 6 |
| 7 import logging | 7 import logging |
| 8 | 8 |
| 9 from common import chromium_deps | 9 from common import chromium_deps |
| 10 from crash import detect_regression_range | 10 from crash import detect_regression_range |
| (...skipping 18 matching lines...) Expand all Loading... | |
| 29 signature (str): The signature of a crash on the Chrome crash server. | 29 signature (str): The signature of a crash on the Chrome crash server. |
| 30 stack_trace (str): A string containing the stack trace of a crash. | 30 stack_trace (str): A string containing the stack trace of a crash. |
| 31 crash_version (str): The version of Chrome in which the crash occurred. | 31 crash_version (str): The version of Chrome in which the crash occurred. |
| 32 historic_metadata (list): list of dicts mapping from Chrome version to | 32 historic_metadata (list): list of dicts mapping from Chrome version to |
| 33 historic metadata. | 33 historic metadata. |
| 34 | 34 |
| 35 Returns: | 35 Returns: |
| 36 (analysis_result_dict, tag_dict) | 36 (analysis_result_dict, tag_dict) |
| 37 The analysis result is a dict like below: | 37 The analysis result is a dict like below: |
| 38 { | 38 { |
| 39 "found": true, # Indicate whether Findit found any suspects. | 39 "found": true, # Indicate whether Findit found any suspects. |
|
stgao
2016/09/27 23:14:52
As the definition of "found" is changed, we should
Sharu Jiang
2016/09/27 23:20:04
I will inform clients and update this in related d
| |
| 40 "suspected_project": "chromium-v8", # Which project is most suspected. | 40 "suspected_project": "chromium-v8", # Which project is most suspected. |
| 41 "feedback_url": "https://.." | 41 "feedback_url": "https://.." |
| 42 "suspected_cls": [ | 42 "suspected_cls": [ |
| 43 { | 43 { |
| 44 "revision": "commit-hash", | 44 "revision": "commit-hash", |
| 45 "url": "https://chromium.googlesource.com/chromium/src/+/ha...", | 45 "url": "https://chromium.googlesource.com/chromium/src/+/ha...", |
| 46 "review_url": "https://codereview.chromium.org/issue-number", | 46 "review_url": "https://codereview.chromium.org/issue-number", |
| 47 "project_path": "third_party/pdfium", | 47 "project_path": "third_party/pdfium", |
| 48 "author": "who@chromium.org", | 48 "author": "who@chromium.org", |
| 49 "time": "2015-08-17 03:38:16", | 49 "time": "2015-08-17 03:38:16", |
| (...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 123 suspected_components = ComponentClassifier().Classify( | 123 suspected_components = ComponentClassifier().Classify( |
| 124 culprit_results, crash_stack) | 124 culprit_results, crash_stack) |
| 125 | 125 |
| 126 # TODO(http://crbug.com/644411): the caller should convert things to | 126 # TODO(http://crbug.com/644411): the caller should convert things to |
| 127 # JSON, not us. | 127 # JSON, not us. |
| 128 culprit_results_list = [result.ToDict() for result in culprit_results] | 128 culprit_results_list = [result.ToDict() for result in culprit_results] |
| 129 | 129 |
| 130 return ( | 130 return ( |
| 131 { | 131 { |
| 132 'found': (bool(suspected_project) or bool(suspected_components) or | 132 'found': (bool(suspected_project) or bool(suspected_components) or |
| 133 bool(culprit_results_list)), | 133 bool(culprit_results_list) or bool(regression_versions)), |
| 134 'regression_range': regression_versions, | 134 'regression_range': regression_versions, |
| 135 'suspected_project': suspected_project, | 135 'suspected_project': suspected_project, |
| 136 'suspected_components': suspected_components, | 136 'suspected_components': suspected_components, |
| 137 'suspected_cls': culprit_results_list, | 137 'suspected_cls': culprit_results_list, |
| 138 }, | 138 }, |
| 139 { | 139 { |
| 140 'found_suspects': bool(culprit_results_list), | 140 'found_suspects': bool(culprit_results_list), |
| 141 'found_project': bool(suspected_project), | |
| 142 'found_components': bool(suspected_components), | |
| 141 'has_regression_range': bool(regression_versions), | 143 'has_regression_range': bool(regression_versions), |
| 142 'solution': 'core_algorithm', | 144 'solution': 'core_algorithm', |
| 143 } | 145 } |
| 144 ) | 146 ) |
| OLD | NEW |