APIs in Category: copyoffload | API version 1.14

copyoffload-copy-abort copyoffload-copy-start copyoffload-copy-status | Implementation of the vStorage commands for Copy Offload operations. This interface provides the ability to copy on a whole or sub file basis. The vStorage Copy Offload feature has the storage array perform the copy operations based upon specified source and destination file indications and the offsets within same: this avoids having the caller read data from the source and then write to the destination. The source and destination files must pre-exist. The destination file may grow from a copy operation as long as the storage array permits this. *WARNING*: A copy operation which does not complete successfully may still have copied some portion of the source to the destination: a copy operation involves multiple iterations of data copy before completing and may fail after some number of sub-copy operations. The caller should reissue the copy operation request to either reattempt the operation or to restore the destination to its previous content. Copy operations are not persistent over reboots or takeover scenarios.

NetApp Manage ONTAP

copyoffload-copy-abort | [top]

> Abort an on-going copyoffload-copy-file request.

> Input Name | Range | Type | Description
> copy-id |  | string | Unique identifier for an on-going copy operation.
> Output Name | Range | Type | Description
> bytes-copied | [0..2^63-1] | integer | Number of bytes that were copied prior to the abort.

> Errno | Description
> ECOL_ABORT_INVALIDINPUTERROR |  |
> ECOL_ABORT_COPYIDNOTFOUND |  |

> Vfiler-enabled
> Yes

copyoffload-copy-start | [top]

> Copy specified whole/sub source file to specified destination file. This operation is handled asynchronously. Source and destination files must exist. The calling entity must poll for a status indication, via the copyoffload-copy-status, until either a failure or completed state is returned. *WARNING*: A copy operation which does not complete successfully may still have copied some portion of the source to the destination: a copy operation involves multiple iterations of data copy before completing and may fail after some number of sub-copy operations. The caller should reissue the copy operation request to either reattempt the operation or to restore the destination to its previous content. Copy operations are not persistent over reboots or takeover scenarios.

> Input Name | Range | Type | Description
> destination-offset | [0..2^63-1] | integer optional | Byte offset in the destination file to begin copying data into, aligned to a 4,096 byte boundary. If not specified, copy will start at beginning of file.
> destination-path |  | string | Full path of the destination file to where the data will be copied, in /vol/<volume-name>/<file-path> format.
> length | [0..2^63-1] | integer optional | Number of bytes to copy from the source file to the destination file. If not specified, the source file is copied from the source offset to the end of file. An error of ECOL_COPY_INVALIDINPUTERROR will be returned if length is zero or if source-offset + length exceeds the size of source file.
> source-offset | [0..2^63-1] | integer optional | Byte offset in source file which to start the copy of data. If not specified, copy will start at beginning of file.
> source-path |  | string | Full path of the source file from where the data will be copied, in /vol/<volume-name>/<file-path> format.
> Output Name | Range | Type | Description
> copy-id |  | string | Unique identifier for the copy operation returned if copy operation begins successfully. This copy identifier must be presented in any subsequent request for this on-going copy operation.

> Errno | Description
> ECOL_COPY_INVALIDINPUTERROR |  |
> ECOL_COPY_NORESOURCES |  |
> ECOL_COPY_FILENOTFOUND |  |
> ECOL_COPY_ISDIRECTORY |  |

> Vfiler-enabled
> Yes

copyoffload-copy-status | [top]

> Provide status on an on-going copyoffload-copy-file request. The response will indicate the state of the on-going operation and the number of bytes copied thus far.

> Input Name | Range | Type | Description
> copy-id |  | string | Unique identifier for an on-going copy operation.
> Output Name | Range | Type | Description
> copy-status |  | copyoffload-status-info[] | Status information for the on-going copy operation.

> Errno | Description
> ECOL_STATUS_INVALIDINPUTERROR |  |
> ECOL_STATUS_COPYIDNOTFOUND |  |

> Vfiler-enabled
> Yes

Element definition: copyoffload-status-info | [top]

> Copy offload status information

> Name | Range | Type | Description
> bytes-copied | [0..2^63-1] | integer | Number of bytes copied thus far.
> copy-id |  | string | Unique identifier assigned to this copy operation.
> copyoffload-error | [0..2^31-1] | integer optional | Error code corresponding to reason for failure: error codes are listed in the copyoffload-copy-status description. This field is used when state is "failure"
> copyoffload-state |  | string | State of the copy operation. Values may be "running", "failed", "completed", or "aborted".
> destination-path |  | string | Full path of the destination file to where the data will be copied, in /vol/<volume-name>/<file-path> format.
> length | [0..2^63-1] | integer | Requested number of bytes to copy from the source file to the destination file. A value of 0 is interpreted as "copy from source offset to end of file".
> source-path |  | string | Full path of the source file from where the data will be copied, in /vol/<volume-name>/<file-path> format.