[
https://issues.apache.org/jira/browse/TS-4720?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Thomas Jackson updated TS-4720:
-------------------------------
Backport to Version: 6.2.1
Summary: ATS not properly closing origin connections in client
abort situationsounce L0proxy in ela4 and idb2 for memory leak (was: ATS not
properly closing origin connections in client abort situations)
> ATS not properly closing origin connections in client abort situationsounce
> L0proxy in ela4 and idb2 for memory leak
> --------------------------------------------------------------------------------------------------------------------
>
> Key: TS-4720
> URL: https://issues.apache.org/jira/browse/TS-4720
> Project: Traffic Server
> Issue Type: Bug
> Components: HTTP
> Reporter: Thomas Jackson
> Assignee: Thomas Jackson
> Fix For: 7.0.0
>
> Time Spent: 1h
> Remaining Estimate: 0h
>
> We've noticed that there are some scenarios that ATS doesn't close the origin
> connection when the client aborts. To reproduce I set up an http server which
> would return a text/stream sending a message every 10s. In this case, if I do
> a GET request to the endpoint and then immediately kill the client, the
> connection to the origin doesn't close until the transaction active timer
> kicks in.
> After digging into this, it seems that this is actually due to a bug in the
> HttpSM-- specifically in how it checks whether a request has a body. The
> default value for content-length is `-1`, but some checks are `== 0` -- which
> means that if the request had no content-length header it is treated as a
> request with a content-length.
> The particular place that was problematic was the section that enables the
> vio reader to watch for client aborts-- which specifically isn't enabled for
> POST/chunked requests as it is enabled later down the call chain (since it
> needs to handle the buffers itself).
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)