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

Leif Hedstrom commented on TS-2572:
-----------------------------------

Peter, it feels we've dropped the ball on some of your issues :-/. Sorry about 
that, lets get your issues into the queues again. Is this still something that 
needs to be investigated?

> Response header corruption when transforming cached objects
> -----------------------------------------------------------
>
>                 Key: TS-2572
>                 URL: https://issues.apache.org/jira/browse/TS-2572
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: Clustering
>            Reporter: Peter Walsh
>             Fix For: sometime
>
>
> I have a transform that caches the untransformed response, so that way I 
> perform the transformation for each subsequent cache hit of that document.  
> Whenever the response is peer fetched from another node in the cluster, the 
> response headers are partially overwritten by the response data.  This does 
> not happen when the response is NOT cached, and it does NOT happen when NOT 
> using cluster feature. 
> In my transform plugin I use TSIOBufferCreate to a create the buffer which
> gets written into by TSIOBufferWrite with the desired response body.
> When a response is peer fetched from cache, the address of the transformed
> response header's values (I'm printing address using
> TSHttpTxnTransformRespGet and other API's) starts halfway into the buffer
> allocated by TSIOBufferCreate.   So if I write about 2k into it, I
> overwrite my response transform headers.
> When the response is not from cache, or when the response is from cache
> and we're not in a cluster, this does NOT happen, ever. Could be
> coincidence, but its repeatable for response sizes varying from 5k to 10
> MB. 
> I don't know how the Transform response headers values can share the same
> memory as what I get from calling TSIOBufferCreate, but it does. My
> concern is that at a deeper level the memory is being mismanaged, and
> while I can check in my transform plugin if I'll overwrite my transform
> resp header buffer, but what about other parts of ATS that are utilizing
> buffers, or when I have multiple transforms happening at the same time?



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

Reply via email to