swift/doc/source/api
Tim Burke 77a8a4455d Let clients request heartbeats during SLO PUTs
An SLO PUT requires that we HEAD every referenced object; as a result, it
can be a very time-intensive operation. This makes it difficult as a
client to differentiate between a proxy-server that's still doing work and
one that's crashed but left the socket open.

Now, clients can opt-in to receiving heartbeats during long-running PUTs
by including the query parameter

    heartbeat=on

With heartbeating turned on, the proxy will start its response immediately
with 202 Accepted then send a single whitespace character periodically
until the request completes. At that point, a final summary chunk will be
sent which includes a "Response Status" key indicating success or failure
and (if successful) an "Etag" key indicating the Etag of the resulting SLO.

This mechanism is very similar to the way bulk extractions and deletions
work, and even the way SLO behaves for ?multipart-manifest=delete requests.

Note that this is opt-in: this prevents us from sending the 202 response
to existing clients that may mis-interpret it as an immediate indication
of success.

Co-Authored-By: Alistair Coles <alistairncoles@gmail.com>
Related-Bug: 1718811
Change-Id: I65cee5f629c87364e188aa05a06d563c3849c8f3
2017-11-03 09:42:48 +00:00
..
authentication.rst Add multiple reseller prefixes and composite tokens 2015-02-23 15:57:20 +00:00
container_quotas.rst Adds v1 API documentation to doc/source/api 2014-11-17 16:19:07 -06:00
discoverability.rst Adds v1 API documentation to doc/source/api 2014-11-17 16:19:07 -06:00
form_post_middleware.rst updated some weird whitespace character to a normal one 2016-02-24 09:48:57 -08:00
large_objects.rst Let clients request heartbeats during SLO PUTs 2017-11-03 09:42:48 +00:00
object_api_v1_overview.rst doc migration: update the doc link address[2/3] 2017-09-15 06:31:00 +00:00
object_versioning.rst Typo fix: curent => current 2017-02-07 13:36:50 +07:00
temporary_url_middleware.rst doc migration: update the doc link address[2/3] 2017-09-15 06:31:00 +00:00
use_content-encoding_metadata.rst updated some weird whitespace character to a normal one 2016-02-24 09:48:57 -08:00
use_the_content-disposition_metadata.rst Mirror X-Trans-Id to X-Openstack-Request-Id 2016-10-30 20:02:39 -07:00