From cc2b2cf9c8a5cb913817e2f900c676809cd2e027 Mon Sep 17 00:00:00 2001 From: Alistair Coles Date: Tue, 16 Aug 2016 16:21:59 +0100 Subject: [PATCH] Improve doc for using container-sync with large objects Clarify that synced segment container names must be the same when syncing large objects. Also add multipart-menifest query string option to API ref for object GETs. Change-Id: Ib2d2a1e6c1e5eff215fc75c2b49e7d6758b17b7e Partial-Bug: #1613681 Closes-Bug: #1613316 --- api-ref/source/parameters.yaml | 11 ++++++++++- api-ref/source/storage-object-services.inc | 3 ++- doc/source/overview_container_sync.rst | 10 +++++++--- 3 files changed, 19 insertions(+), 5 deletions(-) diff --git a/api-ref/source/parameters.yaml b/api-ref/source/parameters.yaml index 9213ada101..974ad4e67d 100644 --- a/api-ref/source/parameters.yaml +++ b/api-ref/source/parameters.yaml @@ -840,7 +840,7 @@ multipart-manifest_1: in: query required: false type: string -multipart-manifest_2: +multipart-manifest_get: description: | If you include the ``multipart-manifest=get`` query parameter and the object is a large object, the object @@ -850,6 +850,15 @@ multipart-manifest_2: in: query required: false type: string +multipart-manifest_head: + description: | + If you include the ``multipart-manifest=get`` query parameter and the + object is a large object, the object metadata is not returned. Instead, the + response headers will include the manifest metadata and for dynamic large + objects the ``X-Object-Manifest`` response header. + in: query + required: false + type: string path: description: | For a string value, returns the object names that diff --git a/api-ref/source/storage-object-services.inc b/api-ref/source/storage-object-services.inc index 56d861158d..d9ce9b3b81 100644 --- a/api-ref/source/storage-object-services.inc +++ b/api-ref/source/storage-object-services.inc @@ -103,7 +103,7 @@ Request - temp_url_sig: temp_url_sig - temp_url_expires: temp_url_expires - filename: filename - - multipart-manifest: multipart-manifest + - multipart-manifest: multipart-manifest_get - Range: Range - If-Match: If-Match - If-None-Match: If-None-Match @@ -524,6 +524,7 @@ Request - temp_url_sig: temp_url_sig - temp_url_expires: temp_url_expires - filename: filename + - multipart-manifest: multipart-manifest_head - X-Newest: X-Newest - X-Trans-Id-Extra: X-Trans-Id-Extra diff --git a/doc/source/overview_container_sync.rst b/doc/source/overview_container_sync.rst index 9947fc3d10..0fb24f50d5 100644 --- a/doc/source/overview_container_sync.rst +++ b/doc/source/overview_container_sync.rst @@ -14,9 +14,13 @@ synchronization key. .. note:: - If you are using the large objects feature you will need to ensure both - your manifest file and your segment files are synced if they happen to be - in different containers. + If you are using the large objects feature and syncing to another cluster + then you will need to ensure that manifest files and segment files are + synced. If segment files are in a different container than their manifest + then both the manifest's container and the segments' container must be + synced. The target container for synced segment files must always have the + same name as their source container in order for them to be resolved by + synced manifests. .. note::