Table of ContentsView in Frames

Operations for multipart uploads

StorageGRID Webscale implements multipart uploads differently from the Amazon S3 REST API.

Note: You should not exceed 1,000 concurrent multipart uploads to a single bucket because the results of List Multipart Uploads queries for that bucket might return incomplete results.
Operation Implementation
List Multipart Uploads

The following request headers are supported:

  • encoding-type
  • max-uploads
  • key-marker
  • prefix
  • upload-id-marker

The delimiter request parameter is not supported.

Initiate Multipart Upload

The x-amz-storage-class request header is supported with the following enumerated values:

  • STANDARD

    Default. Specifies a dual-commit ingest operation.

  • REDUCED_REDUNDANCY

    Specifies a single-commit ingest operation.

Note: Specifying the REDUCED_REDUNDANCY value does not affect the specified ILM policy, and does not result in data being stored at lower levels of redundancy in the StorageGRID Webscale system.

The following request headers are supported:

  • Content-Type
  • x-amz-meta- name-value pairs for user-defined metadata

To record the object creation time, so that you can use the User Defined Creation Time option for the reference time in an ILM rule, you need to store the value in a user-defined header named x-amz-meta-creation-time. For example: x-amz-meta-creation-time=1443399726. This field is evaluated as seconds since Jan 1, 1970. For more information, see "Reference time" in the Administrator Guide.

The x-amz-server-side-encryption header is not supported directly for Initiate Multipart Upload requests. If you require server-side encryption for a multipart upload, you need to specify the x-amz-server-side-encryption header for each of the upload parts, but you cannot specify it as part of the Initiate Multipart Upload header or the request fails.

The following request headers are not supported and return XNotImplemented:

  • x-amz-website-redirect-location
  • x-amz-server-side-encryption-customer
Upload Part

The following request headers are supported:

  • Content-Length
  • x-amz-server-side-encryption

    If you need to specify server-side encryption for a multipart upload, you need to specify the x-amz-server-side-encryption header for each of the individual upload parts.

The following request headers are not supported and return XNotImplemented:

  • x-amz-server-side-encryption-customer-algorithm
  • x-amz-server-side-encryption-customer-key
  • x-amz-server-side-encryption-customer-key-MD5
Upload Part - Copy

Implemented with all Amazon S3 REST API behavior.

This request reads and writes the object data specified in x-amz-copy-source-range within the StorageGRID Webscale system.

Complete Multipart Upload

The x-amz-storage-class request header is supported with the following enumerated values:

  • STANDARD

    Default. Specifies a dual-commit ingest operation.

  • REDUCED_REDUNDANCY

    Specifies a single-commit ingest operation.

Note: Specifying the REDUCED_REDUNDANCY value does not affect the specified ILM policy, and does not result in data being stored at lower levels of redundancy in the StorageGRID Webscale system.
Attention: If a multipart upload is not completed within 15 days, the operation is marked as inactive and all associated data is deleted from the system.

The following request headers are not supported and return XNotImplemented:

  • x-amz-expiration
  • x-amz-server-side-encryption-customer-algorithm
  • x-amz-server-side-encryption-customer-key
  • x-amz-server-side-encryption-customer-key-MD5
  • x-amz-version-id
Note: The ETag value returned is not an MD5 sum of the data, but follows the Amazon S3 API implementation of the ETag value for multipart objects.
Abort Multipart Upload Implemented with all Amazon S3 REST API behavior.
List Parts

The following request parameters are supported:

  • max-parts
  • part-number-marker