Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

The SCSP SEND method applies to both named and unnamed objects. The SEND request lets you explicitly transmit a newly written object from a source cluster to a remote one, such as for keeping two clusters immediately synchronized. As of Swarm 11.2, the feed SEND method works with any feed type, so that it can force synchronous processing of a specific object on one or more of those feeds.

Best practice — Use this feature with a replication feed, which will act acts as a catch-up mechanism if the intracluster network is down or the SEND command should fail. 

...

SEND Requests

With a SEND request, you give provide the path or UUID for the Swarm object to be sent to one or more feeds. Swarm checks the destination cluster to verify whether the object already exists there. 

...

  • Feed-<id>-Status — (The same value as a verbose HEAD/GET request.) The ID refers to the Swarm-assigned ID field in the feed definition. 

    • 0 is a success, meaning that no writes remain to be completed.

    • 1 is a timeout.

    • Any other positive number is a failure.

  • Feed-<id>-StatusTime — (The same value as a verbose HEAD/GET request). The HTTP time of the last replication attempt or success. If Feed-<id>-Status is 1, then Feed-<id>-StatusTime will be are blank because the object has not been processed by the feed.

The response will be is chunked encoded and may include trailing headers:

  • The above feed statuses are given provided immediately in the 200 response headers for feeds with a successful status (0) prior to the request. If there is no matching feed, there are no feed status headers.

  • Any other feed statuses are given are provided as trailing headers. A newline keep-alive chunk is sent periodically as per scsp.keepAliveInterval during processing. At the end of the quest, the trailing headers are sent both in the body of the request and as trailing headers. All results are sent at the end of the response, not when processing completes for an individual feed.

  • If a feed-to-be-processed is blocked or paused, a failure or timeout response is givenprovided, with no automatic retries.

...