shinrich opened a new issue #7590:
URL: https://github.com/apache/trafficserver/issues/7590


   As part of PR #7473, the Transfer-Encoding header was marked hop-by-hop.  
This means all Transfer-encoding headers were are removed before the proxy 
request is created.  Transfer-encoding headers are only added back as 
appropriate for the sending from ATS to the origin.
   
   This change was made to address issue #6907.
   
   The mozilla specification 
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Transfer-Encoding 
indicates that the Transfer-Encoding is a hop-by-hop header, so assuming we 
interpret the incoming transfer-encoding header the change in PR #7473 is 
correct and lines up with the spec.
   
   However @bryancall pointed out that ATS really only interprets the chunked 
value of the Transfer-Encoding header.  According to the Mozilla document there 
are several other values that deal with compressing the data as it is 
transferred.
   
   ```
   Transfer-Encoding: compress
   Transfer-Encoding: deflate
   Transfer-Encoding: gzip
   Transfer-Encoding: identity
   ```
   
   In addition in our logic to translate HTTP/1.1 headers to HTTP/2, the 
transfer-encoding header is stripped.  Which again is fine for chunked, but 
ignores any compression-oriented values of the header.
   
   It seems these days that the vast majority of uses of transfer-encoding 
headers are just chunked.  In fact it is very hard to find articles discussing 
the other options.  So we don't need a particularly efficient solution here.  
In fact it may be sufficient to just log warnings when we drop these headers.
   
   


----------------------------------------------------------------
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:
[email protected]


Reply via email to