You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficserver.apache.org by "Ben Reser (JIRA)" <ji...@apache.org> on 2012/11/07 13:11:12 UTC

[jira] [Comment Edited] (TS-871) Subversion (1.7) with serf fails with ATS in forward and reverse proxy mode

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

Ben Reser edited comment on TS-871 at 11/7/12 12:10 PM:
--------------------------------------------------------

I took a look at the patch Leif had attached here.  It did not apply cleanly so I worked through the issues.  In the process I removed some unnecessary whitespace changes and a change of a variable to a static that don't really seem to be related to this issue.  I'm attaching this updated patch as TS-871-20121107.diff.

This patch is able to function with Subversion 1.7 using Neon.  However it will not work with Subversion 1.8 which can only use serf (and probably won't work with Subversion clients using serf in general though I haven't tested that).

In verifying that the patch works I modified Subversion's test suite to run through a forward TS.  All tests pass (again with 1.7 using neon).

Now that I've looked at the code I can make one big observation. TS (without any patch) assumes that only POST and PUT can have request bodies.  It also rejects any method it does not know e.g. REPORT.  

It's not clear what the problem is with serf but for some reason the REPORT response body gets cut off when I do a checkout.  It's cut off in both the response back to TS and to the Subversion client.  So it'll take some more digging to understand what the problem is.  It's made more complicated by the fact that 1.8 is using pipelining.
                
      was (Author: breser):
    I took a look at the patch Leif had attached here.  It did not apply cleanly so I worked through the issues.  In the process I removed some unnecessary whitespace changes and a change of a variable to a const that don't really seem to be related to this issue.  I'm attaching this updated patch as TS-871-20121107.diff.

This patch is able to function with Subversion 1.7 using Neon.  However it will not work with Subversion 1.8 which can only use serf (and probably won't work with Subversion clients using serf in general though I haven't tested that).

In verifying that the patch works I modified Subversion's test suite to run through a forward TS.  All tests pass (again with 1.7 using neon).

Now that I've looked at the code I can make one big observation. TS (without any patch) assumes that only POST and PUT can have request bodies.  It also rejects any method it does not know e.g. REPORT.  

It's not clear what the problem is with serf but for some reason the REPORT response body gets cut off when I do a checkout.  It's cut off in both the response back to TS and to the Subversion client.  So it'll take some more digging to understand what the problem is.  It's made more complicated by the fact that 1.8 is using pipelining.
                  
> Subversion (1.7) with serf fails with ATS in forward and reverse proxy mode
> ---------------------------------------------------------------------------
>
>                 Key: TS-871
>                 URL: https://issues.apache.org/jira/browse/TS-871
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: HTTP
>    Affects Versions: 3.0.0
>            Reporter: Igor Galić
>            Assignee: Leif Hedstrom
>             Fix For: 3.3.1
>
>         Attachments: ats_Thttp.debug.notime.txt, ats_Thttp.debug.txt, revats_Thttp.debug.notime.txt, revats_Thttp.debug.txt, serf_proxy.cap, serf_revproxy.cap, stats.diff, TS-871-20121107.diff, TS-871.diff
>
>
> When accessing a remote subversion repository via http or https with svn 1.7, it will currently timeout:
> {noformat}
> igalic@tynix ~/src/asf % svn co http://svn.apache.org/repos/asf/trafficserver/plugins/stats_over_http/
> svn: E020014: Unable to connect to a repository at URL 'http://svn.apache.org/repos/asf/trafficserver/plugins/stats_over_http'
> svn: E020014: Unspecified error message: 504 Connection Timed Out
> 1 igalic@tynix ~/src/asf %
> {noformat}
> I have started traffic_server -Thttp and captured the output, which I'm attaching.
> There's also a capture from the network.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira