Network error when installing extension gets you stuck in "Checking" state /cannot install
Reported by
dart.j...@gmail.com,
Apr 20 2016
|
|||||||
Issue description
UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36
Steps to reproduce the problem:
1. set up network abort, I used fiddler to reproduce with the custom rule. this looks the same to the client as an aborted connection. note if using fiddler, you'll have to also set fiddler to capture/decrypt https with the generated trusted root cert, etc (note this happens in non-dev envs just to give you easy steps).
```
public static RulesOption("Stuck in Connecting")
BindPref("fiddlerscript.rules.StuckConnecting")
var m_StuckConnecting: boolean = false;
...
static function OnBeforeRequest(oSession: Session) {
...
if (m_StuckConnecting) {
if (oSession.fullUrl.IndexOf("https://clients2.googleusercontent.com") !== -1) {
oSession.utilCreateResponseAndBypassServer();
oSession.responseCode = 0;
oSession.oResponse.headers.HTTPResponseCode = 0;
oSession.oResponse.headers.HTTPResponseStatus = "0 Client Connection Dropped by script";
oSession.state = SessionStates.Aborted;
}
}
```
2. Go to chrome extension page
3. Turn on rule/ensure that the connection to https://clients2.googleusercontent.com will abort
4. Click Add to Chrome
5. See how it is stuck in "Checking" and doesn't report the error (bug 1)
6. Turn off fiddler rule (allow connections to clients2.googleusercontent.com)
7. Refresh the page to try and reset the scenario
8. Click Add to Chrome
9. See error message "An error has occurred
This item is already being downloaded and added into Chrome.
RELOADCLOSE
" ( bug 2 )
What is the expected behavior?
bug 1: when connection is aborted, I would expect an error message and to be forced to try the process again.
bug 2 : i would expect a page refresh to reset the state assuming 1 is just a bug in the web page, but I can see that this might be a bug in the state machine internal to the browser.
Currently, you can install again if you totally quit the browser.
What went wrong?
We originally got the report from one of our chromebook schools during an onsite visit. They were going around and installing on all machines in the classroom and were getting stuck on the "Checking" step on about 6 out of 20 machines. We then brought this back into our lab to isolate the cause (hence the fiddler rule).
The high level is that if the connection to clients2.googleusercontent.com gets aborted, you won't be able to install the extension as even a page refresh doesn't resolve it. Totally quitting the browser does seem to reset the state.
WebStore page:
Did this work before? N/A
Chrome version: 49.0.2623.112 Channel: stable
OS Version: 10.0
Flash Version: Shockwave Flash 21.0 r0
(sorry if this double posted, there wasnt a confirmation and I couldn't find it in crbug after submission
,
Apr 22 2016
asargent@, can you look into this and see if it's on the webstore end or the chrome end, and re-triage as appropriate?
,
Apr 26 2016
This is definitely a bug in chrome - so far I've been able to reproduce the bug using the Fiddler setup from the initial report, but one thing that isn't clear to me yet is whether we end up getting notified about the aborted request and just aren't handling that properly, or if the request should eventually time out but isn't. If we can solve the network handling problem, that will probably fix the issue of not being able to initiate another install, but it might be good for us to fix things so that you are allowed to initiate another download attempt (and cancel any existing one), because networks can often be slow, etc. and it would suck to make the user have to wait for a long timeout.
,
Sep 14 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/145c7c50d748e1ac00eacaedb412b2afa5cd4431 commit 145c7c50d748e1ac00eacaedb412b2afa5cd4431 Author: Antony Sargent <asargent@chromium.org> Date: Wed Sep 14 04:12:24 2016 Compile fix for merge of codereview.chromium.org/2299203004 Some code the test was written against had changed a method signature since the 2840 branch was cut. TBR=lazyboy@chromium.org BUG= 605228 Review URL: https://codereview.chromium.org/2337393002 . Cr-Commit-Position: refs/branch-heads/2840@{#355} Cr-Branched-From: 1ae106dbab4bddd85132d5b75c670794311f4c57-refs/heads/master@{#414607} [modify] https://crrev.com/145c7c50d748e1ac00eacaedb412b2afa5cd4431/chrome/browser/extensions/content_verifier_browsertest.cc
,
Sep 14 2016
Oops, I accidentally put this bug number in a totally unrelated codereview.
,
Sep 29 2016
Noteworthy about this issue, it's tagged as OS Windows, but this is a much bigger problem for chromebooks in terms of how it affects our customers. We have also seen a similar situation when admins are pushing out the extension via the chrome admin console (specifically chromebook - we dont have any windows schools deploying this way). The reason I think it is related is the extension will not be installed originally, and restarting the machine once or twice (the workaround we found on the chromebook machines when installing from the store) leads to it being installed. Should I file a new issue for the chromeos version of this?
,
Oct 27 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/145c7c50d748e1ac00eacaedb412b2afa5cd4431 commit 145c7c50d748e1ac00eacaedb412b2afa5cd4431 Author: Antony Sargent <asargent@chromium.org> Date: Wed Sep 14 04:12:24 2016 Compile fix for merge of codereview.chromium.org/2299203004 Some code the test was written against had changed a method signature since the 2840 branch was cut. TBR=lazyboy@chromium.org BUG= 605228 Review URL: https://codereview.chromium.org/2337393002 . Cr-Commit-Position: refs/branch-heads/2840@{#355} Cr-Branched-From: 1ae106dbab4bddd85132d5b75c670794311f4c57-refs/heads/master@{#414607} [modify] https://crrev.com/145c7c50d748e1ac00eacaedb412b2afa5cd4431/chrome/browser/extensions/content_verifier_browsertest.cc
,
May 15 2018
,
May 30 2018
Obsolete |
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by davidben@chromium.org
, Apr 20 2016