lsm_volume_replicate_range - Man Page
Replicates a portion of a volume to a volume.
Synopsis
int lsm_volume_replicate_range (lsm_connect *conn, lsm_replication_type rep_type, lsm_volume *source, lsm_volume *dest, lsm_block_range **ranges, uint32_t num_ranges, char **job, lsm_flag flags);
Arguments
- conn
Valid connection.
- rep_type
lsm_replication_type. Valid values are: * LSM_VOLUME_REPLICATE_CLONE
Point in time read writeable space efficient copy of
data. Also know as read writeable snapshot. * LSM_VOLUME_REPLICATE_COPY
Full bitwise copy of the data (occupies full space).- source
Pointer of replication source lsm_volume.
- dest
Pointer of replication target lsm_volume. Could be the same as source.
- ranges
Array of lsm_block_range. Please use lsm_block_range_record_array_alloc and lsm_block_range_record_alloc to create it.
- num_ranges
uint32_t. Number of entries in ranges.
- job
Output pointer of string. If storage system support asynchronous action on this, a job will be created and could be tracked via lsm_job_status_get. NULL if storage system does not support asynchronous action on this.
- flags
Reserved for future use, must be LSM_CLIENT_FLAG_RSVD.
Version
1.0
Description
Replicates a portion of specified source volume to target volume.
Capability
LSM_CAP_VOLUME_COPY_RANGE LSM_CAP_VOLUME_COPY_RANGE_CLONE LSM_CAP_VOLUME_COPY_RANGE_COPY
Return
Error code as enumerated by 'lsm_error_number'.
* LSM_ERR_OK
On success.
* LSM_ERR_JOB_STARTED
A job is started. Please check the 'job' output pointer.
* LSM_ERR_INVALID_ARGUMENT
When any argument is NULL or not a valid lsm_connect pointer
or invalid flags or invalid replication type.
* LSM_ERR_NOT_FOUND_VOLUME
When volume not found.
* LSM_ERR_NOT_FOUND_POOL
When pool not found.
* LSM_ERR_POOL_NOT_READY
Pool is not ready.
* LSM_ERR_NO_SUPPORT
Not supported.