Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 # Chrome Network Bug Triage : Suggested Workflow | 1 # Chrome Network Bug Triage : Suggested Workflow |
| 2 | 2 |
| 3 [TOC] | 3 [TOC] |
| 4 | 4 |
| 5 ## Looking for new crashers | 5 ## Looking for new crashers |
| 6 | 6 |
| 7 1. Go to [go/chromecrash](https://goto.google.com/chromecrash). | 7 1. Go to [go/chromecrash](https://goto.google.com/chromecrash). |
| 8 | 8 |
| 9 2. For each platform, look through the releases for which releases to | 9 2. For each platform, look through the releases for which releases to |
| 10 investigate. As per bug-triage.txt, this should be the most recent canary, | 10 investigate. As per bug-triage.txt, this should be the most recent canary, |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 72 net-related, look at the crash stack at | 72 net-related, look at the crash stack at |
| 73 [go/crash](https://goto.google.com/crash), and see if it looks to be network | 73 [go/crash](https://goto.google.com/crash), and see if it looks to be network |
| 74 related. Be sure to check if other bug reports have that stack trace, and | 74 related. Be sure to check if other bug reports have that stack trace, and |
| 75 mark as a dupe if so. Even if the bug isn't network related, paste the stack | 75 mark as a dupe if so. Even if the bug isn't network related, paste the stack |
| 76 trace in the bug, so no one else has to look up the crash stack from the ID. | 76 trace in the bug, so no one else has to look up the crash stack from the ID. |
| 77 * If there's no other information than the crash ID, ask for more details | 77 * If there's no other information than the crash ID, ask for more details |
| 78 and add the Needs-Feedback label. | 78 and add the Needs-Feedback label. |
| 79 | 79 |
| 80 * If network causes are possible, ask for a net-internals log (If it's not a | 80 * If network causes are possible, ask for a net-internals log (If it's not a |
| 81 browser crash) and attach the most specific internals-network label that's | 81 browser crash) and attach the most specific internals-network label that's |
| 82 applicable. If there isn't an applicable narrower label, a clear owner for | 82 applicable. If there isn't an applicable narrower component, a clear owner fo r |
| 83 the issue, or there are multiple possibilities, attach the internals-network | 83 the issue, or there are multiple possibilities, attach the Internals>Network |
| 84 label and proceed with further investigation. | 84 component and proceed with further investigation. |
| 85 | 85 |
| 86 * If non-network causes also seem possible, attach those labels as well. | 86 * If non-network causes also seem possible, attach those components as well. |
| 87 | 87 |
| 88 ## Investigating Cr-Internals-Network bugs | 88 ## Investigating component=Internals>Network bugs |
| 89 | 89 |
| 90 * It's recommended that while on triage duty, you subscribe to the | 90 * It's recommended that while on triage duty, you subscribe to the |
| 91 Internals>Network component (but not its subcomponents). To do this, go | 91 Internals>Network component (but not its subcomponents). To do this, go |
| 92 to the issue tracker and then click "Saved Queries". | 92 to the issue tracker and then click "Saved Queries". |
| 93 Add a query with these settings: | 93 Add a query with these settings: |
| 94 * Saved query name: Network Bug Triage | 94 * Saved query name: Network Bug Triage |
| 95 * Project: chromium | 95 * Project: chromium |
| 96 * Query: component=Internals>Network | 96 * Query: component=Internals>Network |
| 97 * Subscription options: Notify Immediately | 97 * Subscription options: Notify Immediately |
| 98 | 98 |
| 99 * Look through uncomfirmed and untriaged Cr-Internals-Network bugs, | 99 * Look through uncomfirmed and untriaged component=Internals>Network bugs, |
| 100 prioritizing those updated within the last week. [Use this issue tracker | 100 prioritizing those updated within the last week. [Use this issue tracker |
| 101 query](https://code.google.com/p/chromium/issues/list?can=2&q=Cr%3DInternals-N etwork+-status%3AAssigned+-status%3AStarted+-status%3AAvailable+&sort=-modified) . | 101 query](https://bugs.chromium.org/p/chromium/issues/list?can=2&q=component%3DIn ternals%3ENetwork+-status%3AAssigned+-status%3AStarted+-status%3AAvailable&sort= -modified&colspec=ID+Pri+M+Stars+ReleaseBlock+Component+Status+Owner+Summary+OS+ Modified&x=m&y=releaseblock&cells=ids). |
| 102 | 102 |
| 103 * If more information is needed from the reporter, ask for it and add the | 103 * If more information is needed from the reporter, ask for it and add the |
| 104 Needs-Feedback label. If the reporter has answered an earlier request for | 104 Needs-Feedback label. If the reporter has answered an earlier request for |
| 105 information, remove that label. | 105 information, remove that label. |
| 106 | 106 |
| 107 * While investigating a new issue, change the status to Untriaged. | 107 * While investigating a new issue, change the status to Untriaged. |
| 108 | 108 |
| 109 * If a bug is a potential security issue (Allows for code execution from remote | 109 * If a bug is a potential security issue (Allows for code execution from remote |
| 110 site, allows crossing security boundaries, unchecked array bounds, etc) mark | 110 site, allows crossing security boundaries, unchecked array bounds, etc) mark |
| 111 it Type-Bug-Security. If it has privacy implication (History, cookies | 111 it Type-Bug-Security. If it has privacy implication (History, cookies |
| 112 discoverable by an entity that shouldn't be able to do so, incognito state | 112 discoverable by an entity that shouldn't be able to do so, incognito state |
| 113 being saved in memory or on disk beyond the lifetime of incognito tabs, etc), | 113 being saved in memory or on disk beyond the lifetime of incognito tabs, etc), |
| 114 mark it Cr-Privacy. | 114 mark it with component Privacy. |
|
eroman
2016/02/22 19:22:31
Kind of weird, but seems how we have done it.
mmenke
2016/02/22 19:28:01
Seems very broken. But ok, I guess?
| |
| 115 | 115 |
| 116 * For bugs that already have a more specific network label, go ahead and remove | 116 * For bugs that already have a more specific network component, go ahead and rem ove |
| 117 the Cr-Internals-Network label and move on. | 117 the Internals>Network component and move on. |
| 118 | 118 |
| 119 * Try to figure out if it's really a network bug. See common non-network | 119 * Try to figure out if it's really a network bug. See common non-network |
| 120 labels section for description of common labels needed for issues incorrectly | 120 components section for description of common components for issues incorrectly |
| 121 tagged as Cr-Internals-Network. | 121 tagged as Internals>Network. |
| 122 | 122 |
| 123 * If it's not, attach appropriate labels and go no further. | 123 * If it's not, attach appropriate labels/components and go no further. |
| 124 | 124 |
| 125 * If it may be a network bug, attach additional possibly relevant labels if | 125 * If it may be a network bug, attach additional possibly relevant component if |
| 126 any, and continue investigating. Once you either determine it's a | 126 any, and continue investigating. Once you either determine it's a |
| 127 non-network bug, or figure out accurate more specific network labels, your | 127 non-network bug, or figure out accurate more specific network components, your |
| 128 job is done, though you should still ask for a net-internals dump if it seems | 128 job is done, though you should still ask for a net-internals dump if it seems |
| 129 likely to be useful. | 129 likely to be useful. |
| 130 | 130 |
| 131 * Note that ChromeOS-specific network-related code (Captive portal detection, | 131 * Note that ChromeOS-specific network-related code (Captive portal detection, |
| 132 connectivity detection, login, etc) may not all have appropriate more | 132 connectivity detection, login, etc) may not all have appropriate more |
| 133 specific labels, but are not in areas handled by the network stack team. | 133 specific subcomponents, but are not in areas handled by the network stack team . |
| 134 Just make sure those have the OS-Chrome label, and any more specific labels | 134 Just make sure those have the OS-Chrome label, and any more specific labels |
| 135 if applicable, and then move on. | 135 if applicable, and then move on. |
| 136 | 136 |
| 137 * Gather data and investigate. | 137 * Gather data and investigate. |
| 138 * Remember to add the Needs-Feedback label whenever waiting for the user to | 138 * Remember to add the Needs-Feedback label whenever waiting for the user to |
| 139 respond with more information, and remove it when not waiting on the | 139 respond with more information, and remove it when not waiting on the |
| 140 user. | 140 user. |
| 141 * Try to reproduce locally. If you can, and it's a regression, use | 141 * Try to reproduce locally. If you can, and it's a regression, use |
| 142 src/tools/bisect-builds.py to figure out when it regressed. | 142 src/tools/bisect-builds.py to figure out when it regressed. |
| 143 * Ask more data from the user as needed (net-internals dumps, repro case, | 143 * Ask more data from the user as needed (net-internals dumps, repro case, |
| 144 crash ID from about:crashes, run tests, etc). | 144 crash ID from about:crashes, run tests, etc). |
| 145 * If asking for an about:net-internals dump, provide this link: | 145 * If asking for an about:net-internals dump, provide this link: |
| 146 https://sites.google.com/a/chromium.org/dev/for-testers/providing-network- details. | 146 https://sites.google.com/a/chromium.org/dev/for-testers/providing-network- details. |
| 147 Can just grab the link from about:net-internals, as needed. | 147 Can just grab the link from about:net-internals, as needed. |
| 148 | 148 |
| 149 * Try to figure out what's going on, and which more specific network label is | 149 * Try to figure out what's going on, and which more specific network component i s |
| 150 most appropriate. | 150 most appropriate. |
| 151 | 151 |
| 152 * If it's a regression, browse through the git history of relevant files to try | 152 * If it's a regression, browse through the git history of relevant files to try |
| 153 and figure out when it regressed. CC authors / primary reviewers of any | 153 and figure out when it regressed. CC authors / primary reviewers of any |
| 154 strongly suspect CLs. | 154 strongly suspect CLs. |
| 155 | 155 |
| 156 * If you are having trouble with an issue, particularly for help understanding | 156 * If you are having trouble with an issue, particularly for help understanding |
| 157 net-internals logs, email the public net-dev@chromium.org list for help | 157 net-internals logs, email the public net-dev@chromium.org list for help |
| 158 debugging. If it's a crasher, or for some other reason discussion needs to | 158 debugging. If it's a crasher, or for some other reason discussion needs to |
| 159 be done in private, use chrome-network-debugging@google.com. TODO(mmenke): | 159 be done in private, use chrome-network-debugging@google.com. TODO(mmenke): |
| 160 Write up a net-internals tips and tricks docs. | 160 Write up a net-internals tips and tricks docs. |
| 161 | 161 |
| 162 * If it appears to be a bug in the unowned core of the network stack (i.e. no | 162 * If it appears to be a bug in the unowned core of the network stack (i.e. no |
| 163 sublabel applies, or only the Cr-Internals-Network-HTTP sublabel applies, and | 163 subcomponent applies, or only the Internals>Network>HTTP subcomponent |
| 164 there's no clear owner), try to figure out the exact cause. | 164 applies, and there's no clear owner), try to figure out the exact cause. |
| 165 | 165 |
| 166 ## Monitoring UMA histograms and Chirp/Gasper alerts | 166 ## Monitoring UMA histograms and Chirp/Gasper alerts |
| 167 | 167 |
| 168 Sign up to chrome-network-debugging@google.com mailing list to receive automated | 168 Sign up to chrome-network-debugging@google.com mailing list to receive automated |
| 169 e-mails about UMA alerts. Chirp is the new alert system, sending automated | 169 e-mails about UMA alerts. Chirp is the new alert system, sending automated |
| 170 e-mails with sender address finch-chirp@google.com. Gasper is the old alert | 170 e-mails with sender address finch-chirp@google.com. Gasper is the old alert |
| 171 system, sending automated e-mails with sender address gasper-alerts@google.com. | 171 system, sending automated e-mails with sender address gasper-alerts@google.com. |
| 172 While Chirp is of higher priority, Gasper is not deprecated yet, so both alerts | 172 While Chirp is of higher priority, Gasper is not deprecated yet, so both alerts |
| 173 should be monitored for the time being. | 173 should be monitored for the time being. |
| 174 | 174 |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 219 | 219 |
| 220 * Dig through crash reports to figure out when the crash first appeared, and | 220 * Dig through crash reports to figure out when the crash first appeared, and |
| 221 dig through revision history in related files to try and locate a suspect CL. | 221 dig through revision history in related files to try and locate a suspect CL. |
| 222 TODO(mmenke): Add more detail here. | 222 TODO(mmenke): Add more detail here. |
| 223 | 223 |
| 224 * Load crash dumps, try to figure out a cause. See | 224 * Load crash dumps, try to figure out a cause. See |
| 225 http://www.chromium.org/developers/crash-reports for more information | 225 http://www.chromium.org/developers/crash-reports for more information |
| 226 | 226 |
| 227 ## Dealing with old bugs | 227 ## Dealing with old bugs |
| 228 | 228 |
| 229 * For all network issues (Even those with owners, or a more specific labels): | 229 * For all network issues (Even those with owners, or a more specific component): |
| 230 | 230 |
| 231 * If the issue has had the Needs-Feedback label for over a month, verify it | 231 * If the issue has had the Needs-Feedback label for over a month, verify it |
| 232 is waiting on feedback from the user. If not, remove the label. | 232 is waiting on feedback from the user. If not, remove the label. |
| 233 Otherwise, go ahead and mark the issue WontFix due to lack of response | 233 Otherwise, go ahead and mark the issue WontFix due to lack of response |
| 234 and suggest the user file a new bug if the issue is still present. [Use | 234 and suggest the user file a new bug if the issue is still present. [Use |
| 235 this issue tracker query for old Needs-Feedback | 235 this issue tracker query for old Needs-Feedback |
| 236 issues](https://code.google.com/p/chromium/issues/list?can=2&q=Cr%3AIntern als-Network%20Needs=Feedback+modified-before%3Atoday-30&sort=-modified). | 236 issues](https://code.google.com/p/chromium/issues/list?can=2&q=Cr%3AIntern als-Network%20Needs=Feedback+modified-before%3Atoday-30&sort=-modified). |
| 237 | 237 |
| 238 * If a bug is over 2 months old, and the underlying problem was never | 238 * If a bug is over 2 months old, and the underlying problem was never |
| 239 reproduced or really understood: | 239 reproduced or really understood: |
| 240 * If it's over a year old, go ahead and mark the issue as Archived. | 240 * If it's over a year old, go ahead and mark the issue as Archived. |
| 241 * Otherwise, ask reporters if the issue is still present, and attach | 241 * Otherwise, ask reporters if the issue is still present, and attach |
| 242 the Needs-Feedback label. | 242 the Needs-Feedback label. |
| 243 | 243 |
| 244 * Old unconfirmed or untriaged Cr-Internals-Network issues can be investigated | 244 * Old unconfirmed or untriaged Internals>Network issues can be investigated |
| 245 just like newer ones. Crashers should generally be given higher priority, | 245 just like newer ones. Crashers should generally be given higher priority, |
| 246 since we can verify if they still occur, and then newer issues, as they're | 246 since we can verify if they still occur, and then newer issues, as they're |
| 247 more likely to still be present, and more likely to have a still responsive | 247 more likely to still be present, and more likely to have a still responsive |
| 248 bug reporter. | 248 bug reporter. |
| OLD | NEW |