[ 
https://issues.apache.org/jira/browse/TS-1125?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14580152#comment-14580152
 ] 

ASF GitHub Bot commented on TS-1125:
------------------------------------

GitHub user ffcai opened a pull request:

    https://github.com/apache/trafficserver/pull/216

    TS-1125: handle "Expect: 100-continue" header in 
state_read_client_request_header

    Currently, ATS handles `"Expect: 100-continue"` header in 
`HttpSM::state_send_server_request_header`. In intercept plugin case, ATS may 
have no chance to run into this logic, it handles the header in a later point - 
`HttpSM::state_send_server_request_header`. I did not take this into account 
when I wrote the first patch. Now we have an intercept plugin use case in 
yahoo, and I think we need to move the handle logic some earlier, right after 
finish parsing the client request header.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/ffcai/trafficserver expect_100_continue

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/trafficserver/pull/216.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #216
    
----
commit 34d6a4203d7399aa85daeeb88abafe5ee85f21b5
Author: Feifei Cai <ff...@yahoo-inc.com>
Date:   2015-06-10T07:06:24Z

    handle Expect: 100-continue header in state_read_client_request_header

----


> POST's with Expect: 100-continue are slowed by delayed 100 response.
> --------------------------------------------------------------------
>
>                 Key: TS-1125
>                 URL: https://issues.apache.org/jira/browse/TS-1125
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: HTTP
>    Affects Versions: 3.0.2
>         Environment: TS 3.0.2 going to Apache 2.2 web server
>            Reporter: William Bardwell
>            Assignee: Bryan Call
>            Priority: Minor
>              Labels: yahoo
>             Fix For: 5.0.0
>
>         Attachments: TS-1125.diff, TS-1125.diff, ts1125.diff, ts1125.diff, 
> ts1125.diff
>
>
> Sending a post like:
> POST / HTTP/1.1
> Host: www.example.com
> Content-Length: 10
> Expect: 100-continue
> directly to the web server immediately sends back:
> HTTP/1.1 100 Continue
> And then when the post data is sent, a status 200 response comes back.
> But when going through ATS the "HTTP/1.1 100 Continue" is not sent 
> immediately, and instead is sent after the POST data has been received.  This 
> is legal, but it makes clients that are hoping for a 100 continue to wait a 
> little while hoping to get that, ATS should forward that response through 
> immediately.
> Note: I see curl using "Expect: 100-continue" with > 1024 bytes of post data, 
> but web searching indicates that some Microsoft products also use it.



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

Reply via email to