OLD | NEW |
1 Identifying unlabeled network bugs on the tracker: | 1 Identifying unlabeled network bugs on the tracker: |
2 * Look at new uncomfirmed bugs since noon PST on the last triager's rotation: | 2 * Look at new uncomfirmed bugs since noon PST on the last triager's rotation: |
3 https://code.google.com/p/chromium/issues/list?can=2&q=status%3Aunconfirmed&
sort=-id&num=1000 | 3 https://code.google.com/p/chromium/issues/list?can=2&q=status%3Aunconfirmed&
sort=-id&num=1000 |
4 * Press "h" to bring up a preview of the bug text. | 4 * Press "h" to bring up a preview of the bug text. |
5 * Use "j" and "k" to advance through bugs. | 5 * Use "j" and "k" to advance through bugs. |
6 * If a bug looks like it might be network/download/safe-browsing related, middle | 6 * If a bug looks like it might be network/download/safe-browsing related, middle |
7 click [or command-click on OSX] to open in new tab. | 7 click [or command-click on OSX] to open in new tab. |
8 * If a user provides a crash ID for a crasher for a bug that could be | 8 * If a user provides a crash ID for a crasher for a bug that could be |
9 net-related, look at the crash stack at go/crash, and see if it looks to be | 9 net-related, look at the crash stack at go/crash, and see if it looks to be |
10 network related. Be sure to check if other bug reports have that stack | 10 network related. Be sure to check if other bug reports have that stack |
11 trace, and mark as a dupe if so. Even if the bug isn't network related, | 11 trace, and mark as a dupe if so. Even if the bug isn't network related, |
12 paste the stack trace in the bug, so no one else has to look up the crash | 12 paste the stack trace in the bug, so no one else has to look up the crash |
13 stack from the ID. | 13 stack from the ID. |
14 * If there's no other information than the crash ID, ask for more details and | 14 * If there's no other information than the crash ID, ask for more details and |
15 add the Needs-Feedback label. | 15 add the Needs-Feedback label. |
16 * If network causes are possible, ask for a net-internals log (If it's not a | 16 * If network causes are possible, ask for a net-internals log (If it's not a |
17 browser crash) and attach the most specific internals-network label that's | 17 browser crash) and attach the most specific internals-network label that's |
18 applicable. If there isn't an applicable narrower label, a clear owner for | 18 applicable. If there isn't an applicable narrower label, a clear owner for |
19 the issue, or there are multiple possibilities, attach the internals-network | 19 the issue, or there are multiple possibilities, attach the internals-network |
20 label and proceed with further investigation. | 20 label and proceed with further investigation. |
21 * If non-network causes also seem possible, attach those labels as well. | 21 * If non-network causes also seem possible, attach those labels as well. |
22 | 22 |
23 Investigating Cr-Internals-Network bugs: | 23 Investigating Cr-Internals-Network bugs: |
| 24 * It's recommended that while on triage duty, you subscribe to the |
| 25 Cr-Internals-Network label. To do this, go to |
| 26 https://code.google.com/p/chromium/issues/ and click on "Subscriptions". |
| 27 Enter Cr-Internals-Network and click submit. |
24 * Look through uncomfirmed and untriaged Cr-Internals-Network bugs, prioritizing | 28 * Look through uncomfirmed and untriaged Cr-Internals-Network bugs, prioritizing |
25 those updated within the last week: | 29 those updated within the last week: |
26 https://code.google.com/p/chromium/issues/list?can=2&q=Cr%3DInternals-Networ
k+-status%3AAssigned+-status%3AStarted+-status%3AAvailable+&sort=-modified | 30 https://code.google.com/p/chromium/issues/list?can=2&q=Cr%3DInternals-Networ
k+-status%3AAssigned+-status%3AStarted+-status%3AAvailable+&sort=-modified |
27 * While investigating a new issue, change the status to Untriaged. | 31 * While investigating a new issue, change the status to Untriaged. |
28 * If a bug is a potential security issue (Allows for code execution from remote | 32 * If a bug is a potential security issue (Allows for code execution from remote |
29 site, allows crossing security boundaries, unchecked array bounds, etc) mark | 33 site, allows crossing security boundaries, unchecked array bounds, etc) mark |
30 it Type-Bug-Security. If it has privacy implication (History, cookies | 34 it Type-Bug-Security. If it has privacy implication (History, cookies |
31 discoverable by an entity that shouldn't be able to do so, incognito state | 35 discoverable by an entity that shouldn't be able to do so, incognito state |
32 being saved in memory or on disk beyond the lifetime of incognito tabs, | 36 being saved in memory or on disk beyond the lifetime of incognito tabs, |
33 etc), mark it Cr-Privacy. | 37 etc), mark it Cr-Privacy. |
(...skipping 18 matching lines...) Expand all Loading... |
52 respond with more information, and remove it when not waiting on the user. | 56 respond with more information, and remove it when not waiting on the user. |
53 * Try to reproduce locally. If you can, and it's a regression, use | 57 * Try to reproduce locally. If you can, and it's a regression, use |
54 src/tools/bisect-builds.py to figure out when it regressed. | 58 src/tools/bisect-builds.py to figure out when it regressed. |
55 * Ask more data from the user as needed (net-internals dumps, repro case, | 59 * Ask more data from the user as needed (net-internals dumps, repro case, |
56 crash ID from about:crashes, run tests, etc). | 60 crash ID from about:crashes, run tests, etc). |
57 * If asking for an about:net-internals dump, provide this link: | 61 * If asking for an about:net-internals dump, provide this link: |
58 https://sites.google.com/a/chromium.org/dev/for-testers/providing-network-
details. | 62 https://sites.google.com/a/chromium.org/dev/for-testers/providing-network-
details. |
59 Can just grab the link from about:net-internals, as needed. | 63 Can just grab the link from about:net-internals, as needed. |
60 * Try to figure out what's going on, and which more specific network label is | 64 * Try to figure out what's going on, and which more specific network label is |
61 most appropriate. | 65 most appropriate. |
| 66 * If it's a regression, browse through the git history of relevant files to try |
| 67 and figure out when it regressed. CC authors / primary reviewers of any |
| 68 strongly suspect CLs. |
62 * If you are having trouble with an issue, particularly for help understanding | 69 * If you are having trouble with an issue, particularly for help understanding |
63 net-internals logs, email the public net-dev@chromium.org list for help | 70 net-internals logs, email the public net-dev@chromium.org list for help |
64 debugging. If it's a crasher, or for some other reason discussion needs to | 71 debugging. If it's a crasher, or for some other reason discussion needs to |
65 be done in private, use chrome-network-debugging@google.com. | 72 be done in private, use chrome-network-debugging@google.com. |
66 TODO(mmenke): Write up a net-internals tips and tricks docs. | 73 TODO(mmenke): Write up a net-internals tips and tricks docs. |
67 * If it appears to be a bug in the unowned core of the network stack (i.e. no | 74 * If it appears to be a bug in the unowned core of the network stack (i.e. no |
68 sublabel applies, or only the Cr-Internals-Network-HTTP sublabel applies, | 75 sublabel applies, or only the Cr-Internals-Network-HTTP sublabel applies, |
69 and there's no clear owner), try to figure out the exact cause. | 76 and there's no clear owner), try to figure out the exact cause. |
70 | 77 |
71 Look for new crashers: | 78 Look for new crashers: |
72 * Go to go/chromecrash. | 79 * Go to go/chromecrash. |
73 * For each platform, go to the latest canary. Click on browser -> limit 1000. | 80 * For each platform, go to the latest canary. Click on browser -> limit 1000. |
74 Search the page for "net::". Ignore crashes that only occur once, as | 81 Search the page for "net::". Ignore crashes that only occur once, as |
75 memory corruption can easily cause one-off failures when the sample size is | 82 memory corruption can easily cause one-off failures when the sample size is |
76 large enough. | 83 large enough. |
77 * Look at the stack trace to confirm it's a network bug. | 84 * Look at the stack trace to confirm it's a network bug. |
78 * If it is, and there's no associated bug filed, file a new bug directly from | 85 * If it is, and there's no associated bug filed, file a new bug directly from |
79 chromecrash, looking at earlier canaries to determine if it's a recent | 86 chromecrash, looking at earlier canaries to determine if it's a recent |
80 regression. Use the most specific label possible. | 87 regression. Use the most specific label possible. |
81 * The most recent Canary may not yet have a full day of crashes, so it may be | 88 * The most recent Canary may not yet have a full day of crashes, so it may be |
82 worth looking at more than one version. | 89 worth looking at more than one version. |
83 * If there's been a dev, beta, or stable release in the last couple days, should | 90 * If there's been a dev, beta, or stable release in the last couple days, should |
84 also look at those. | 91 also look at those. |
85 | 92 |
86 Investigating crashers: | 93 Investigating crashers: |
87 * Only investigate crashers that are still occurring, as identified by above | 94 * Only investigate crashers that are still occurring, as identified by above |
88 section. | 95 section. If a search on go/crash indicates a crasher is no longer |
| 96 occurring, mark it as WontFix. |
89 * Particularly for Windows, look for weird dlls associated with the crashes. | 97 * Particularly for Windows, look for weird dlls associated with the crashes. |
90 If there are some, it may be caused by malware. You can often figure out if | 98 If there are some, it may be caused by malware. You can often figure out if |
91 a dll is malware by a search, though it's harder to figure out if a dll is | 99 a dll is malware by a search, though it's harder to figure out if a dll is |
92 definitively not malware. | 100 definitively not malware. |
93 * See if the same users are repeatedly running into the same issue. This can be | 101 * See if the same users are repeatedly running into the same issue. This can be |
94 accomplished by search for (Or clicking on) the client ID associated with a | 102 accomplished by search for (Or clicking on) the client ID associated with a |
95 crash report, and seeing if there are multiple reports for the same crash. | 103 crash report, and seeing if there are multiple reports for the same crash. |
96 If this is the case, it may be also be malware, or an issue with an unusual | 104 If this is the case, it may be also be malware, or an issue with an unusual |
97 system/chrome/network config. | 105 system/chrome/network config. |
98 * Dig through crash reports to figure out when the crash first appeared, and dig | 106 * Dig through crash reports to figure out when the crash first appeared, and dig |
99 through revision history in related files to try and locate a suspect CL. | 107 through revision history in related files to try and locate a suspect CL. |
100 TODO(mmenke): Add more detail here. | 108 TODO(mmenke): Add more detail here. |
101 * Load crash dumps, try to figure out a cause. | 109 * Load crash dumps, try to figure out a cause. |
102 See http://www.chromium.org/developers/crash-reports for more information | 110 See http://www.chromium.org/developers/crash-reports for more information |
103 | 111 |
104 Dealing with old bugs: | 112 Dealing with old bugs: |
105 * For all network issues (Even those with owners, or a more specific labels): | 113 * For all network issues (Even those with owners, or a more specific labels): |
106 * If the issue has had the Needs-Feedback label for over two weeks, verify it | 114 * If the issue has had the Needs-Feedback label for over a month, verify it |
107 is waiting on feedback from the user. If not, remove the label. | 115 is waiting on feedback from the user. If not, remove the label. |
108 Otherwise, go ahead and mark the issue WontFix due to lack of response and | 116 Otherwise, go ahead and mark the issue WontFix due to lack of response and |
109 suggest the user file a new bug if the issue is still present. | 117 suggest the user file a new bug if the issue is still present. |
110 Needs-feedback issues: https://code.google.com/p/chromium/issues/list?can
=2&q=Cr=Internals-Network%20Needs=Feedback&sort=modified | 118 Old Needs-Feedback issues: https://code.google.com/p/chromium/issues/list
?can=2&q=Cr%3AInternals-Network%20Needs=Feedback+modified-before%3Atoday-30&sort
=-modified |
111 * If a bug is over 2 months old, and the underlying problem was never really | 119 * If a bug is over 2 months old, and the underlying problem was never |
112 understood, ask reporters if the issue is still present, and attach the | 120 reproduced or really understood: |
113 Needs-Feedback label. | 121 * If it's over a year old, go ahead and mark the issue as Archived. |
| 122 * Otherwise, ask reporters if the issue is still present, and attach the |
| 123 Needs-Feedback label. |
114 * Old unconfirmed or untriaged Cr-Internals-Network issues can be investigated | 124 * Old unconfirmed or untriaged Cr-Internals-Network issues can be investigated |
115 just like newer ones. Crashers should generally be given higher priority, | 125 just like newer ones. Crashers should generally be given higher priority, |
116 since we can verify if they still occur, and then newer issues, as they're | 126 since we can verify if they still occur, and then newer issues, as they're |
117 more likely to still be present, and more likely to have a still responsive | 127 more likely to still be present, and more likely to have a still responsive |
118 bug reporter. | 128 bug reporter. |
OLD | NEW |