Azure Integrator V2 - Online Help
Azure Integrator V2
Questions / Feedback?

PutBlockList Method

Commits a blob using the specified set of block IDs that make up the blob.

Syntax

[VB.NET]
Public Sub PutBlockList(ByVal blobName As String)
[C#]
public void PutBlockList(string blobName);

Remarks

This method will commit a blob using the block IDs specified within Blocks. In order for blocks to be committed to a blob, they must first be uploaded by calling CreateBlock. Blocks are added to Blocks using AddBlock.

With PutBlockList, you can modify an existing blob by inserting, updating, or deleting individual blocks (without uploading the whole blob again). This is done by specifying block IDs contained within the Committed and Uncommitted block lists. The Committed block list contains blocks that have already been committed to form a blob. The Uncommitted block list contains blocks that have been uploaded, using CreateBlock, but have not yet been committed to the blob.

To update a blob using individual blocks, you can add the new blocks you wish to commit to the blob by specifying the block ID(s) along with a blockType of Uncommitted within AddBlock. Any already committed blocks that you wish to keep, must be added to Blocks by specifying the block ID(s) and a blockType of Committed. Any already committed blocks that are not added to Blocks will be deleted from the blob. Once you have created the wanted block list, PutBlockList can be called to create/update the specified blob using the specified list within Blocks.

When you call PutBlockList to update an existing blob, the blob's existing properties and metadata are overwritten. Metadata can be set prior to calling PutBlockList to set the metadata for the updated blob. Note however that any existing snapshots will be retained.

If the blob has an active lease, LeaseId must be specified prior to calling PutBlockList.

IfMatch can be set to an ETag value to perform an operation only if the specified ETag matches that of blobName. If the ETag values do not match, a 412 (Precondition Failed) error is returned.

The following headers can be specified within OtherHeaders if needed:

If-Modified-Since: A DateTime valueSpecify this conditional header to perform an operation only if the blob has been modified since the specified date/time.
If-Unmodified-Since: A DateTime valueSpecify this conditional header to perform an operation only if the blob has not been modified since the specified date/time.
If-None-Match: ETag valueSpecify an ETag value for this conditional header to perform an operation only if the blob's ETag value does not match the value specified.

Note the maximum number of blocks that may be committed is 50,000, and the maximum size of a blob that may be committed via the PutBlockList is 200 GB.

Any uncommitted blocks will be garbage collected if there are no successful calls to CreateBlock or PutBlockList on the blob within a week following the last successful CreateBlock call. If CreateBlob is called on the blob, any uncommitted blocks will be garbage collected.

 
 
Copyright (c) 2017 /n software inc. - All rights reserved.
Build 2.0.6240.0