Issue metadata
Sign in to add a comment
|
Error loading resources via HTTP/2 when cache is disabled
Reported by
dasa.pad...@gmail.com,
Feb 28 2017
|
||||||||||||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/604.1.6 (KHTML, like Gecko) Version/10.2 Safari/604.1.6 Steps to reproduce the problem: 1. Open https://jsbin.com/pugatehuxu/1/edit?html,output 2. Open dev tools 3. Disable cache onNetwork tab 4. Click "Run with JS" and wait for Output to show "Dojo Version: 1.12.1 (a1e2d9d)" 5. Click "Run with JS" again What is the expected behavior? Output show show "Dojo Version: 1.12.1 (a1e2d9d)" What went wrong? Output is blank and Dev tools console shows script errors and some show net::ERR_FAILED. The network tab shows about a dozen requests that have a status of cancelled and sometimes another dozen with a status of failed. Did this work before? N/A Chrome version: 56.0.2924.87 Channel: stable OS Version: OS X 10.12.3 Flash Version: 24.0.0.221 Example Net event log: 38665: URL_REQUEST https://js.arcgis.com/3.20/dojox/gfx/filters.js Start Time: 2017-02-27 16:23:16.471 t=2132 [st= 0] +REQUEST_ALIVE [dt=39] t=2133 [st= 1] URL_REQUEST_DELEGATE [dt=0] t=2133 [st= 1] +URL_REQUEST_START_JOB [dt=38] --> load_flags = 33026 (BYPASS_CACHE | MAYBE_USER_GESTURE | VERIFY_EV_CERT) --> method = "GET" --> priority = "LOWEST" --> url = "https://js.arcgis.com/3.20/dojox/gfx/filters.js" t=2133 [st= 1] URL_REQUEST_DELEGATE [dt=0] t=2133 [st= 1] HTTP_CACHE_GET_BACKEND [dt=0] t=2133 [st= 1] HTTP_CACHE_DOOM_ENTRY [dt=0] t=2133 [st= 1] HTTP_CACHE_CREATE_ENTRY [dt=0] t=2133 [st= 1] HTTP_CACHE_ADD_TO_ENTRY [dt=0] t=2133 [st= 1] +HTTP_STREAM_REQUEST [dt=1] t=2133 [st= 1] HTTP_STREAM_REQUEST_STARTED_JOB --> source_dependency = 38672 (HTTP_STREAM_JOB) t=2134 [st= 2] HTTP_STREAM_REQUEST_BOUND_TO_JOB --> source_dependency = 38672 (HTTP_STREAM_JOB) t=2134 [st= 2] -HTTP_STREAM_REQUEST t=2134 [st= 2] +HTTP_TRANSACTION_SEND_REQUEST [dt=0] t=2134 [st= 2] HTTP_TRANSACTION_HTTP2_SEND_REQUEST_HEADERS --> :authority: js.arcgis.com :method: GET :path: /3.20/dojox/gfx/filters.js :scheme: https accept: */* accept-encoding: gzip, deflate, sdch, br accept-language: en-US,en;q=0.8 cache-control: no-cache cookie: [221 bytes were stripped] pragma: no-cache referer: https://null.jsbin.com/runner user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36 t=2134 [st= 2] -HTTP_TRANSACTION_SEND_REQUEST t=2134 [st= 2] +HTTP_TRANSACTION_READ_HEADERS [dt=37] t=2171 [st=39] HTTP2_STREAM_ERROR --> description = "ABANDONED (stream_id=2001): https://js.arcgis.com/3.20/dojox/gfx/filters.js" --> status = -3 --> stream_id = 2001 t=2171 [st=39] -HTTP_TRANSACTION_READ_HEADERS --> net_error = -3 (ERR_ABORTED) t=2171 [st=39] -URL_REQUEST_START_JOB --> net_error = -3 (ERR_ABORTED) t=2171 [st=39] URL_REQUEST_DELEGATE [dt=0] t=2171 [st=39] -REQUEST_ALIVE --> net_error = -3 (ERR_ABORTED)
,
Feb 28 2017
This error also occurs on Windows and with Canary 58.
,
Feb 28 2017
This is not a problem when using HTTP/1.
,
Feb 28 2017
,
Feb 28 2017
,
Mar 2 2017
This is reproducible. Looks like there are tons of requests going out rapidly with cache disabled, and I see 1099 as the last opened stream. In the responses, I see only headers being received, but I don't see any response bodies. bnc: can you take a look at this?
,
Mar 2 2017
On 32585 HTTP2_SESSION, Chrome receives a GOAWAY frame from the server:
t=2170 [st=555] HTTP2_SESSION_GOAWAY
--> active_streams = 47
--> debug_data = "[0 bytes were stripped]"
--> last_accepted_stream_id = 1999
--> status = 0
--> unclaimed_streams = 0
The HTTP2_STREAM_ERROR immediately follows this in 38665 URL_REQUEST, so I suspect it is a direct consequence of the GOAWAY frame:
t=2171 [st=39] HTTP2_STREAM_ERROR
--> description = "ABANDONED (stream_id=2001): https://js.arcgis.com/3.20/dojox/gfx/filters.js"
--> status = -3
--> stream_id = 2001
There is no debug data in the GOAWAY frame, and the error code is NO_ERROR, which kind of means there is nothing wrong, just that the server feels like closing the connection.
1. Why would the server do this, and why does it only happen if cache is disabled? Maybe too rapid requests?
2. Chrome should retry the request on a new connection in this case.
,
Apr 17 2017
Merging into issue 681477 : Chrome should retry requests upon receiving a GOAWAY frame with error code NO_ERROR. |
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by dasa.pad...@gmail.com
, Feb 28 20176.2 MB
6.2 MB View Download