[ 
https://issues.apache.org/jira/browse/TS-5092?focusedWorklogId=34466&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-34466
 ]

ASF GitHub Bot logged work on TS-5092:
--------------------------------------

                Author: ASF GitHub Bot
            Created on: 01/Jan/17 16:53
            Start Date: 01/Jan/17 16:53
    Worklog Time Spent: 10m 
      Work Description: Github user maskit commented on a diff in the pull 
request:

    https://github.com/apache/trafficserver/pull/1262#discussion_r94285648
  
    --- Diff: proxy/http2/Http2ConnectionState.cc ---
    @@ -127,10 +128,11 @@ rcv_data_frame(Http2ConnectionState &cstate, const 
Http2Frame &frame)
     
       // Check whether Window Size is acceptable
       if (cstate.server_rwnd < payload_length) {
    -    return Http2Error(HTTP2_ERROR_CLASS_CONNECTION, 
HTTP2_ERROR_FLOW_CONTROL_ERROR);
    +    return Http2Error(HTTP2_ERROR_CLASS_CONNECTION, 
HTTP2_ERROR_FLOW_CONTROL_ERROR,
    +                      "recv data cstate.server_rwnd < payload_length");
       }
       if (stream->server_rwnd < payload_length) {
    -    return Http2Error(HTTP2_ERROR_CLASS_STREAM, 
HTTP2_ERROR_FLOW_CONTROL_ERROR);
    +    return Http2Error(HTTP2_ERROR_CLASS_STREAM, 
HTTP2_ERROR_FLOW_CONTROL_ERROR, "recvdata stream->server_rwnd < 
payload_length");
    --- End diff --
    
    "recv data" -- please add a space.


Issue Time Tracking
-------------------

    Worklog Id:     (was: 34466)
    Time Spent: 40m  (was: 0.5h)

> ATS handling of too many concurrent streams too agressive and maybe out of 
> spec
> -------------------------------------------------------------------------------
>
>                 Key: TS-5092
>                 URL: https://issues.apache.org/jira/browse/TS-5092
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: HTTP/2
>            Reporter: Susan Hinrichs
>            Assignee: Susan Hinrichs
>             Fix For: 7.1.0
>
>          Time Spent: 40m
>  Remaining Estimate: 0h
>
> This issue was identified while debugging new errors seen by an internal team 
> after they enabled HTTP/2 in their client. On the backend, they saw an 
> increase in the cases were ATS sends the origin the POST header but no POST 
> body and then closes the connection.
> With the addition of Error() messages we were able to see a case where the 
> client is trying to open the 101'st stream on a session. This is beyond the 
> 100 max concurrent stream limit, so ATS shuts down the session which kills 
> the previous 100 streams.
> A closer reading of section 5.1.2 of the spec 
> (https://tools.ietf.org/html/rfc7540#section-5.1.2) indicates that this 
> should be a stream error and not a connection error. Bryan Call, Masaori, and 
> Maskit confirmed this interpretation. Maskit also noted that the other error 
> case in the current createStream method must be treated as a connection error.
> Presumably the client library is expecting the refused stream case so it can 
> try again later.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to