IDedupReadFileCallback::OrderContainersRestore method

This method provides the application with the ability to influence the order of the pending reads that are required to retrieve the target file.

Given a list of container files that hold data for the restore target file, generates a list of container file extents in a sorted order that results in an efficient cross-container read plan from the backup store.

Implementation of this method by the application is optional.

Syntax


HRESULT OrderContainersRestore(
  [in]                               ULONG                  NumberOfContainers,
  [in, size_is(NumberOfContainers)]  BSTR                   *ContainerPaths,
  [out]                              ULONG                  *ReadPlanEntries,
  [out, size_is(, *ReadPlanEntries)] DEDUP_CONTAINER_EXTENT **ReadPlan
);

Parameters

NumberOfContainers [in]

Number of container paths in the ContainerPaths array.

ContainerPaths [in]

Array of paths to container files that must be read in order to restore the file specified in the IDedupBackupSupport::RestoreFiles call. Each element is a full path from the root directory of the volume to a container file.

ReadPlanEntries [out]

Pointer to a ULONG variable that receives the number of DEDUP_CONTAINER_EXTENT structures in the array that the ReadPlan parameter points to.

ReadPlan [out]

Pointer to a buffer that receives an array of DEDUP_CONTAINER_EXTENT structures.

Return value

This method can return standard HRESULT values, such as S_OK. It can also return converted system error codes using the HRESULT_FROM_WIN32 macro. Possible return values include the following.

S_OK

0x00000000L

The method completed successfully.

DDP_E_PATH_NOT_FOUND

0x80565304L

A specified container path was not found on the backup media.

Remarks

Given a list of container files that hold data for the restore target file, the application optionally generates a list of container store file extents in a sorted order that results in an efficient cross-container read plan. For a backup store located on tape, this would normally be in tape order.

In the case where a container is stored in multiple extents in the backup store—for example, as a result of an incremental backup sequence—the application may also return multiple container extents for each logical container file.

The application may return S_OK and NULL output parameters to skip the read plan optimizations. In this case, container read order will be chosen by Data Deduplication.

Requirements

Minimum supported client

None supported

Minimum supported server

Windows Server 2012

Header

DdpBackup.h

See also

IDedupReadFileCallback
DEDUP_CONTAINER_EXTENT

 

 

Show: