- Static large object |
+ End-to-end integrity |
Assured. The list of segments includes
the MD5 checksum (ETag)
of each segment. You cannot upload the
manifest object if the
ETag in the list
- differs from the segment object already
- uploaded. If a segment is somehow lost, an
- attempt to download the manifest object
- results in an error. |
- The segment objects must be uploaded
- before the manifest object. |
- You cannot add or remove segment objects
- from the manifest. However, you can create
- a completely new manifest object of the
- same name with a different manifest
- list. |
- Segment objects must be at least 1 MB in
- size (by default). The final segment
- object can be any size. At most 1000
- segments are supported (by
- default). |
- The manifest list includes the container
- name of each object. Segment objects can
- be in different containers. |
- The object has
- X-Static-Large-Object
- set to true. You do not
- set this metadata directly. Instead the
- system sets it when you &PUT; a static
- manifest object. |
- |
-
-
- Dynamic large object |
+ differs from the uploaded segment object.
+ If a segment is somehow lost, an attempt
+ to download the manifest object results in
+ an error.
Not guaranteed. The eventual consistency
model means that although you have
uploaded a segment object, it might not
@@ -136,28 +294,77 @@
it appears in the container, it does not
form part of the content returned in
response to a &GET; request. |
+
+
+ Upload order |
+ You must upload the segment objects
+ before you upload the manifest
+ object. |
You can upload manifest and segment
objects in any order. You are recommended
to upload the manifest object after the
segments in case a premature download of
the manifest occurs. However, this is not
enforced. |
+
+
+ Removal or addition of segment objects |
+ You cannot add or remove segment objects
+ from the manifest. However, you can create
+ a completely new manifest object of the
+ same name with a different manifest
+ list. |
You can upload new segment objects or
remove existing segments. The names must
simply match the
- <prefix>
- supplied in
- X-Object-Manifest. |
- Segment objects can be of any
- size. |
+ {prefix} supplied
+ in
+ X-Object-Manifest.
+
+
+ Segment object size and number |
+ Segment objects must be at least
+ 1 MB in size (by default). The final
+ segment object can be any size. At most,
+ 1000 segments are supported (by
+ default). |
+ Segment objects can be any
+ size. |
+
+
+ Segment object container name |
+ The manifest list includes the container
+ name of each object. Segment objects can
+ be in different containers. |
All segment objects must be in the same
- container |
+ container.
+
+
+ Manifest object metadata |
+ The object has
+ X-Static-Large-Object
+ set to true. You do not
+ set this metadata directly. Instead the
+ system sets it when you &PUT; a static
+ manifest object. |
The X-Object-Manifest
value is the
- <container>/<prefix>
- indicating where the segment objects are
- located. You supply this request header in
- the &PUT; operation |
+ {container}/{prefix},
+ which indicates where the segment objects
+ are located. You supply this request
+ header in the &PUT; operation.
+
+
+ Copying the manifest object |
+ Include the
+ ?multipart-manifest=get
+ query string in the © request. The
+ new object contains the same manifest as
+ the original. The segment objects are not
+ copied. Instead, both the original and new
+ manifest objects share the same set of
+ segment objects.
+ |
The © operation does not create a
manifest object. To duplicate a manifest
object, use the &GET; operation to read
@@ -172,198 +379,5 @@
|