GitHub user jacksontj opened a pull request:

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

    TS-3959: requests are retryable only if bytes were sent and there was no 
connection error

    The root issue that TS-4328 and TS-3440 were trying to fix was that ATS was 
too aggressive in retries to origin (namely after the origin had already 
recieved the request). The previous patches attempted to have ATS not retry 
assuming bytes were sent on the wire-- sadly TS-4328 actually only checks that 
we set bytes to be written to the wire. To fix this we simply check if there 
was a connection failure to origin, if so we'll assume that it is retryable 
(since connection failures to origin should only be due to errors 
writing/connecting etc.).

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

    $ git pull https://github.com/jacksontj/trafficserver TS-3959

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

    https://github.com/apache/trafficserver/pull/658.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 #658
    
----
commit 7905b4d8be7370c4549369a74ada8eca6a63a85e
Author: Thomas Jackson <[email protected]>
Date:   2016-05-23T16:20:36Z

    TS-3959: requests are retryable only if bytes were sent and there was no 
connection error
    
    The root issue that TS-4328 and TS-3440 were trying to fix was that ATS was 
too aggressive in retries to origin (namely after the origin had already 
recieved the request). The previous patches attempted to have ATS not retry 
assuming bytes were sent on the wire-- sadly TS-4328 actually only checks that 
we set bytes to be written to the wire. To fix this we simply check if there 
was a connection failure to origin, if so we'll assume that it is retryable 
(since connection failures to origin should only be due to errors 
writing/connecting etc.).

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to