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

Susan Hinrichs commented on TS-3777:
------------------------------------

I've tracked this issue down to the HttpSM::tunnel_handler_ua() function.  In 
particular the part where it sets the half_close_flag if the event was write 
complete and the request was a non-internal post or a pipeline_possible client.

If I comment out the ua_session->set_half_close_flag(), then Daniel's plugin 
works properly.  Otherwise, it stalls out in the post case (works in the get 
case).

I'm not understanding the need for the logic, but I know there is a need.  When 
I removed the post check for TS-3640 [~sudheerv] found scenarios with large 
memory leaks.

By setting the half_close flag, the following do_io_close only does a 
shutdown_write on the client VC.  Presumably this leaves the client VC around 
to drain more post response.  But if we did get a WRITE_COMPLETE it isn't clear 
to me what post data remains to drain.

[~briang] and [~jacksontj] also made changes in this area for TS-3404 so 
perhaps they could lend some guidance as well.

What is the memory leak caused by not doing the half_close_write for the post 
on this case?

> TSHttpConnect and POST request does not fire TS_VCONN_READ_COMPLETE nor 
> TS_VCONN_EOS
> ------------------------------------------------------------------------------------
>
>                 Key: TS-3777
>                 URL: https://issues.apache.org/jira/browse/TS-3777
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: TS API
>            Reporter: Daniel Vitor Morilha
>            Assignee: Susan Hinrichs
>              Labels: yahoo
>             Fix For: 6.1.0
>
>
> When using TSHttpConnect to connect to ATS itself (internal vconnection), 
> sending a POST request and receiving a CHUNKED response. ATS does not fire 
> neither TS_VCONN_READ_COMPLETE nor TS_VCONN_EOS.
> Trying to close the vconnection from the plug-in after receiving the last 
> chunk ("\r\n0\r\n") results into the PluginVC repeating the following message:
> {noformat}
> [Jul 14 21:24:06.094] Server {0x7ffff7fbe800} DEBUG: (pvc_event) [0] Passive: 
> Received event 1
> {noformat}
> I am glad to provide an example if that helps.



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

Reply via email to