You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficserver.apache.org by GitBox <gi...@apache.org> on 2020/09/15 21:39:56 UTC

[GitHub] [trafficserver] ezelkow1 commented on issue #5679: Parent Proxy sometimes lost Cache-Control header lines

ezelkow1 commented on issue #5679:
URL: https://github.com/apache/trafficserver/issues/5679#issuecomment-692994255


   > Looks like there's some code that's not checking for duplicate fields. There is a clear loss of information which is wrong.
   
   Yes thats exactly what it is. Im also not sure this is directly related to parent selection.  Testing here when it gets to
   HttpTransact::build_response, 
   `[Sep 15 21:14:09.652] [ET_NET 12] DEBUG: <MIME.h:1555 (value_append)> (evan) mimehdr val append creating, name: Etag, len: 4, value: "5f5faad3-1a"Cache-Controlmax-age=5, publicCache-Controlno-cache, len: 13
   [Sep 15 21:14:09.652] [ET_NET 12] DEBUG: <HttpTransact.cc:7866 (build_response)> (evan) [0] Appending field: Etag, len: 4, val: "5f5faad3-1a"Cache-Controlmax-age=5, publicCache-Controlno-cache, len: 13, total: 5
   [Sep 15 21:14:09.652] [ET_NET 12] DEBUG: <MIME.h:1555 (value_append)> (evan) mimehdr val append creating, name: Cache-Control, len: 13, value: max-age=5, publicCache-Controlno-cache, len: 17
   [Sep 15 21:14:09.652] [ET_NET 12] DEBUG: <HttpTransact.cc:7866 (build_response)> (evan) [0] Appending field: Cache-Control, len: 13, val: max-age=5, publicCache-Controlno-cache, len: 17, total: 5
   [Sep 15 21:14:09.652] [ET_NET 12] DEBUG: <MIME.h:1555 (value_append)> (evan) mimehdr val append creating, name: Via, len: 3, value: http/1.1 traffic_server (ApacheTrafficServer/10.0.0 [uIcSsNfUpNeN:t cCSpSs ] [http/1.1 tcp ipv4]), len: 97
   [Sep 15 21:14:09.652] [ET_NET 12] DEBUG: <HttpTransactHeaders.cc:1135 (add_server_header_to_response)> (http_trans) Adding Server: ATS/10.0.0
   +++++++++ Base Header for Building Response +++++++++
   -- State Machine Id: 0
   HTTP/1.1 200 OK
   Server: nginx/1.16.1
   Date: Tue, 15 Sep 2020 21:14:09 GMT
   Content-Type: text/plain
   Content-Length: 26
   Last-Modified: Mon, 14 Sep 2020 17:39:31 GMT
   Connection: keep-alive
   Accept-Ranges: bytes
   Etag: "5f5faad3-1a"
   Cache-Control: max-age=5, public
   Cache-Control: no-cache
   
   +++++++++ Proxy's Response 2 +++++++++
   -- State Machine Id: 0
   HTTP/1.1 304 Not Modified
   Date: Tue, 15 Sep 2020 21:14:09 GMT
   Etag: "5f5faad3-1a"
   Cache-Control: max-age=5, public
   Connection: keep-alive
   Via: http/1.1 traffic_server (ApacheTrafficServer/10.0.0 [uIcSsNfUpNeN:t cCSpSs ] [http/1.1 tcp ipv4])
   Server: ATS/10.0.0`
   
   So it gets stripped out in that function. The value passed in to the mime parsing there has both headers combined in the value but the length only covers the first one and doesnt know how to parse dupes
   
   Just throwing this in here, still looking in to it


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org