Print

Print


  Branch: refs/heads/master
  Home:   https://github.com/xrootd/xrootd
  Commit: 56b2bdee0af49cc33e359a1bb8a170d0ed84f40e
      https://github.com/xrootd/xrootd/commit/56b2bdee0af49cc33e359a1bb8a170d0ed84f40e
  Author: Brian P Bockelman <[log in to unmask]>
  Date:   2023-02-23 (Thu, 23 Feb 2023)

  Changed paths:
    M src/XrdHttp/XrdHttpExtHandler.cc
    M src/XrdHttp/XrdHttpProtocol.cc
    M src/XrdHttp/XrdHttpProtocol.hh
    M src/XrdHttp/XrdHttpReq.cc
    M src/XrdHttp/XrdHttpReq.hh

  Log Message:
  -----------
  Allow XRootD to return trailers indicating failure (#1912)

* Allow XRootD to return trailers indicating failure

HTTP provides a response to include a "trailer" in addition to the
better-known "header".  If a user sets the following headers in
the request:

```
X-Transfer-Status: true
TE: trailers
Transfer-Encoding: chunked
```

Then the response will used chunked encoding and indicate, on the
last returned chunk, whether an error has occurred.

Clients aware of these headers can now receive an error message from
XRootD if there's an IO error in the middle of the response.  This is
expected to be useful in XCache use cases where failure mid-response
is somewhat more common.

* Fixup: Also send trailers as requested for byte range reads

Additionally does some modest tidying of comments.

########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1